Commit Graph

534 Commits

Author SHA1 Message Date
github-actions[bot]
8e8fc73296 Merge master into staging-next 2023-10-18 12:01:25 +00:00
Martin Weinelt
13c8e4299a python313: init at 3.13.0a1
https://docs.python.org/3.13/whatsnew/changelog.html#python-3-13-0-alpha-1
2023-10-17 23:06:20 +02:00
github-actions[bot]
8c62479810 Merge master into staging-next 2023-10-17 00:02:14 +00:00
Meet Barot
a76390f69c python3*: Add meta.pkgConfigModules and test 2023-10-16 00:36:25 -04:00
Yureka
ef60280d57 python311: fix cross to/from musl (#260641)
The situation:

Python <3.11: under Linux the abi string is always -gnu*

Python 3.11-3.12: musl is treated as its own abi in the python build system, but when cross-compiling the build host's libc is used for the target abi string. Cross compiling from glibc to musl gives a -gnu* target abi string and vice versa.

Python >=3.13: musl is treated as its own abi, and when cross-compiling the target libc is used for the target abi string

We backport the fix for python 3.11-3.12, since the intermediate state is almost impossible to model in the nix expression
2023-10-13 17:47:11 +02:00
Yureka
1d3c3d4f5b python: simplify ABI name detection 2023-10-09 15:12:20 +00:00
github-actions[bot]
d987b47512 Merge master into staging-next 2023-09-08 06:00:58 +00:00
marius david
a02761d722 python311: enable cross-compilation to windows 2023-09-07 02:16:21 +03:00
Sandro Jäckel
28c0cd5b17 cpython: remove broken include/python3.X/python3.Xm symlink
The m flag was removed in Python 3.8:
https://docs.python.org/3/whatsnew/3.8.html#build-and-c-api-changes

Co-authored-by: Anders Kaseorg <26471+andersk@users.noreply.github.com>
2023-09-01 02:52:50 +03:00
Ben Wolsieffer
02719f21e6 cpython: fix _PYTHON_SYSCONFIGDATA_NAME on armv7l with musl (#240770)
Python always uses "gnu" prefixed ABI names, and this patch handles this by
doing a musl->gnu string replacement.

With pkgsCross.armv7l-hf-multiplatform.pkgsStatic, the previous name was:
_sysconfigdata__linux_arm-linux-gnu
Now, the corrected name is:
_sysconfigdata__linux_arm-linux-gnueabihf
2023-08-09 07:16:58 +02:00
Sandro Jäckel
4514e57231 cpython: use correct variable to set meta.mainProgram 2023-08-08 17:25:28 +00:00
github-actions[bot]
5827446dce Merge master into staging-next 2023-08-03 00:01:56 +00:00
Robert Hensing
34ee0260ec treewide: Add meta.mainProgram
Based on ofborg feedback.
Part of https://github.com/NixOS/nixpkgs/pull/246386
2023-08-01 12:21:05 +02:00
Sandro
ae6388356f Merge pull request #153527 from andersk/python3-symlinks
python3: Add manpage symlink to fix ‘man python’
2023-07-20 22:07:42 +02:00
Anders Kaseorg
9c55f23e53 python3: Add manpage symlink to fix ‘man python’
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-07-19 15:33:47 +02:00
Felix Buehler
6672dde558 treewide: use optionalAttrs instead of 'else {}' 2023-06-25 11:01:34 -03:00
Weijia Wang
82e6dcefb9 python311Packages.tkinter: fix runtime error on darwin 2023-06-22 17:52:12 +03:00
Domen Kožar
9f3e0de184 cypthon: moduralize so it can be called with other versions 2023-06-05 17:32:40 +02:00
Domen Kožar
b4222d6661 python: add conditionals to be able to compile with 3.6 or older 2023-06-05 17:32:40 +02:00
Dmitry Bogatov
2f181d6f06 python3.doc: build offline documentation
Since python documentation requires Sphinx to build, documentation is built in
separate derivation to avoid hard recursion/bootstrapping questions and plugged
into main derivation. Care is taken that "python3.doc" derivation feels and
looks as close as possible to as if it were main derivation were multi-output
one.

This change does not cause rebuild of python3 itself.
2023-06-03 16:43:46 +02:00
Jonas Chevalier
3d2bdd0788 python: implement PEP 668 (#229166)
Add a marker file to the python outputs that tells pip and other tooling
following PEP 668 that they should not be installing things system-wide.

This provides better feedback to the user and also potentially avoids issues in
single-user installs where the /nix/store is owned by the user.

For more details, see <https://peps.python.org/pep-0668/>

Here is how it currently looks like:

    $ pip install requests
    error: externally-managed-environment

    × This environment is externally managed
    ╰─> This command has been disabled as it tries to modify the immutable
        `/nix/store` filesystem.

        To use Python with Nix and nixpkgs, have a look at the online documentation:
        <https://nixos.org/manual/nixpkgs/stable/#python>.
2023-05-04 18:30:25 +02:00
jackyliu16
df2c2e63f1 cpython: add loongarch triplets
using patch ref on: https://github.com/python/cpython/issues/90656
  to add loongarch triplets for using cpython in loongarch

  Note: This patch is being reviewed by cpython
2023-05-01 05:16:32 +08:00
superherointj
b3b4bc0052 Merge pull request #208636 from wegank/python-framework
python3: allow enabling framework on darwin
2023-03-04 07:31:34 -03:00
Alyssa Ross
52c286ee5b Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
	pkgs/development/libraries/pmdk/default.nix
2023-02-23 13:51:34 +00:00
Artturin
f9fdf2d402 treewide: move NIX_CFLAGS_COMPILE to the env attrset
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper

this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
2023-02-22 21:23:04 +02:00
Alyssa Ross
b4f74e334e python2: fix eval
Fixes: ee90eca180 ("cpython: Migrate sha256 occurences to hash")
2023-02-13 17:14:19 +00:00
Martin Weinelt
ee90eca180 cpython: Migrate sha256 occurences to hash 2023-02-11 17:50:53 +01:00
superherointj
a411b337d6 Merge pull request #209622 from NickCao/python311-cross
python311: fix cross compilation
2023-02-04 18:04:43 -03:00
Shawn8901
a59dda942c treewide: remove global with lib; statements in pkgs/development 2023-01-26 18:31:02 +01:00
Nick Cao
6ad4d75364 Merge pull request #211079 from NickCao/py37
python37: remove leftovers
2023-01-23 11:22:35 +08:00
Minijackson
2b43490121 python: improve ABI name detection 2023-01-19 15:20:31 +01:00
Nick Cao
dde298c126 python37: remove leftover files 2023-01-16 19:49:16 +08:00
Thiago Kenji Okada
79194a913d Merge pull request #210078 from thiagokokada/dont-expose-resholve
resholve: mark it as knownVulnerabilities, allow resholve-utils usage
2023-01-15 18:10:34 +00:00
Thiago Kenji Okada
66093a4120 python27: remove stripLibs argument
Since we are now guarantee that the `resholve` is not exposing `python27`,
let's remove the `stripLibs` hack that tried to reduce its size.
2023-01-15 12:29:42 +00:00
github-actions[bot]
ceb05ad4bf Merge master into staging-next 2023-01-13 06:01:09 +00:00
Mario Rodas
e7b6fb49fd Merge pull request #208744 from wegank/python312-darwin
python312: fix build on darwin
2023-01-12 22:35:07 -05:00
Nick Cao
f742c6d443 python311: fix cross compilation 2023-01-08 12:39:02 +08:00
github-actions[bot]
4bf238a8fb Merge master into staging-next 2023-01-08 00:02:31 +00:00
Fabián Heredia Montiel
d9fbb33f92 python27: mark as vulnerable/insecure due to EOL on 2020-01-01
More information: https://www.activestate.com/products/python/python-2-end-of-life-security-updates/
2023-01-07 16:25:35 -06:00
Martin Weinelt
afd962b51c Merge remote-tracking branch 'origin/master' into staging-next 2023-01-05 17:16:26 +01:00
Martin Weinelt
e75f5e8efa python37: drop
The package set hasn't been working for a long time now, due to infinite
recursions, that nobody was going to fix.

The release is going to go EOL in 2023/06 and we don't want to ship it
in NixOS 23.05 anyway.
2023-01-05 13:20:49 +01:00
Thiago Kenji Okada
b0ac530007 python27: 2.7.18.5 -> 2.7.18.6 2023-01-04 21:12:03 +00:00
github-actions[bot]
789ae2c93d Merge staging-next into staging 2023-01-04 18:01:36 +00:00
Weijia Wang
f6fd1b9a53 python312: fix build on darwin 2023-01-02 13:07:46 +01:00
Weijia Wang
a440e955e0 python3: allow enabling framework on darwin 2023-01-01 16:05:48 +01:00
Thiago Kenji Okada
47f904bad1 python27: use ffi/expat as system libraries
Without `--with-system-{ffi,expat}` flags, Python will use its own
embedded libraries that are out-of-date. Thanks to it, they can be a
security issue. So let's use our own libraries instead.

This is already what Python 3.x does, so should be safe.
2022-12-18 12:32:51 +00:00
github-actions[bot]
61a0176830 Merge staging-next into staging 2022-12-17 00:02:50 +00:00
github-actions[bot]
30b97b0e83 Merge master into staging-next 2022-12-17 00:02:17 +00:00
Thiago Kenji Okada
283ecac082 resholve: strip unused libraries from python27
Strip unused libraries from resholve's own python27 derivation, further
reducing its size and reducing its attack surface.
2022-12-15 00:07:02 +00:00
github-actions[bot]
74a066ab3f Merge staging-next into staging 2022-12-13 18:02:08 +00:00