python2.pkgs: move expressions into python2-modules/ folder

Another step in further separating python2 from python3.
This commit is contained in:
Frederik Rietdijk 2022-01-16 07:34:26 +01:00 committed by Frederik Rietdijk
parent 2027fb600d
commit ae18d68b6b
82 changed files with 251 additions and 96 deletions

View file

@ -15,7 +15,8 @@ let
sha256 = "09h1153wgr5x2ny7ds0w2m81n3bb9j8hjb8sjfnrg506r01clkyx";
};
});
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
in

View file

@ -20,8 +20,8 @@ let
sha256 = "ae2f05671588762dd83a21d8b18c51fe355e86783e24594995ff8d7380dffe38";
};
});
werkzeug = self.callPackage ../../../development/python-modules/werkzeug/1.nix { };
flask = self.callPackage ../../../development/python-modules/flask/1.nix { };
werkzeug = self.callPackage ../../../development/python2-modules/werkzeug { };
flask = self.callPackage ../../../development/python2-modules/flask { };
sqlsoup = super.sqlsoup.overrideAttrs ({ meta ? {}, ... }: {
meta = meta // { broken = false; };
});

View file

@ -3,8 +3,8 @@
}:
let
apispec3 = callPackage ../apispec/3.nix {};
jinja2 = callPackage ../jinja2/2.nix {};
apispec3 = callPackage ./apispec.nix {};
jinja2 = callPackage ../../../../development/python2-modules/jinja2 {};
in
buildPythonPackage rec {
pname = "aiohttp-apispec";

View file

@ -6,8 +6,7 @@ let
libtorrent = (python3.pkgs.toPythonModule (
libtorrent-rasterbar-1_2_x.override { python = python3; })).python;
aiohttp-apispec = python3.pkgs.callPackage
../../../../development/python-modules/aiohttp-apispec/unstable.nix { };
aiohttp-apispec = python3.pkgs.callPackage ./aiohttp-apispec.nix { };
in
stdenv.mkDerivation rec {
pname = "tribler";

View file

@ -10,7 +10,8 @@ let
# Workaround the issue by providing click 7 explicitly.
python = python3.override {
packageOverrides = self: super: {
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
in with python.pkgs; buildPythonApplication rec {

View file

@ -30,6 +30,15 @@
let
version = "2019.1.0";
# TODO: test with newer pytest
pytest = pythonPackages.callPackage
../../../../python2-modules/pytest {
# hypothesis tests require pytest that causes dependency cycle
hypothesis = pythonPackages.hypothesis.override {
doCheck = false;
};
};
dijitso = pythonPackages.buildPythonPackage {
pname = "dijitso";
inherit version;

View file

@ -54,7 +54,7 @@ in buildPythonPackage rec {
# We patch cpython/distutils to fix https://bugs.python.org/issue1222585
# Patching of numpy.distutils is needed to prevent it from undoing the
# patch to distutils.
./numpy-distutils-C++_1.16.patch
./numpy-distutils-C++.patch
];
preConfigure = ''

View file

@ -0,0 +1,77 @@
{ pname
, version
, disabled
, src
, meta
, ...
}@args:
with args;
buildPythonPackage rec {
inherit pname version src meta;
# Disable imagefont tests, because they don't work well with infinality:
# https://github.com/python-pillow/Pillow/issues/1259
postPatch = ''
rm Tests/test_imagefont.py
'';
# Disable darwin tests which require executables: `iconutil` and `screencapture`
disabledTests = lib.optionals stdenv.isDarwin [
"test_grab"
"test_grabclipboard"
"test_save"
# pillow-simd
"test_roundtrip"
"test_basic"
] ++ lib.optionals (lib.versions.major version == "6") [
# RuntimeError: Error setting from dictionary
"test_custom_metadata"
];
propagatedBuildInputs = [ olefile ]
++ lib.optionals (lib.versionAtLeast version "8.2.0") [ defusedxml ];
checkInputs = [ pytestCheckHook pyroma numpy ];
buildInputs = [ freetype libjpeg openjpeg libimagequant zlib libtiff libwebp tcl lcms2 ]
++ lib.optionals (lib.versionAtLeast version "7.1.0") [ libxcb ]
++ lib.optionals (isPyPy) [ tk libX11 ];
# NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
# NOTE: The Pillow install script will, by default, add paths like /usr/lib
# and /usr/include to the search paths. This can break things when building
# on a non-NixOS system that has some libraries installed that are not
# installed in Nix (for example, Arch Linux has jpeg2000 but Nix doesn't
# build Pillow with this support). We patch the `disable_platform_guessing`
# setting here, instead of passing the `--disable-platform-guessing`
# command-line option, since the command-line option doesn't work when we run
# tests.
preConfigure = let
libinclude' = pkg: ''"${pkg.out}/lib", "${pkg.out}/include"'';
libinclude = pkg: ''"${pkg.out}/lib", "${pkg.dev}/include"'';
in ''
sed -i "setup.py" \
-e 's|^FREETYPE_ROOT =.*$|FREETYPE_ROOT = ${libinclude freetype}|g ;
s|^JPEG_ROOT =.*$|JPEG_ROOT = ${libinclude libjpeg}|g ;
s|^JPEG2K_ROOT =.*$|JPEG2K_ROOT = ${libinclude openjpeg}|g ;
s|^IMAGEQUANT_ROOT =.*$|IMAGEQUANT_ROOT = ${libinclude' libimagequant}|g ;
s|^ZLIB_ROOT =.*$|ZLIB_ROOT = ${libinclude zlib}|g ;
s|^LCMS_ROOT =.*$|LCMS_ROOT = ${libinclude lcms2}|g ;
s|^TIFF_ROOT =.*$|TIFF_ROOT = ${libinclude libtiff}|g ;
s|^TCL_ROOT=.*$|TCL_ROOT = ${libinclude' tcl}|g ;
s|self\.disable_platform_guessing = None|self.disable_platform_guessing = True|g ;'
export LDFLAGS="$LDFLAGS -L${libwebp}/lib"
export CFLAGS="$CFLAGS -I${libwebp}/include"
'' + lib.optionalString (lib.versionAtLeast version "7.1.0") ''
export LDFLAGS="$LDFLAGS -L${libxcb}/lib"
export CFLAGS="$CFLAGS -I${libxcb.dev}/include"
'' + lib.optionalString stdenv.isDarwin ''
# Remove impurities
substituteInPlace setup.py \
--replace '"/Library/Frameworks",' "" \
--replace '"/System/Library/Frameworks"' ""
'';
}

View file

@ -0,0 +1,59 @@
{ buildPackages
, lib
, fetchpatch
, python
, buildPythonPackage
, isPy37
, protobuf
, google-apputils ? null
, six
, pyext
, isPy27
, disabled
, doCheck ? true
}:
buildPythonPackage {
inherit (protobuf) pname src version;
inherit disabled;
doCheck = doCheck && !isPy27; # setuptools>=41.4 no longer collects correctly on python2
propagatedBuildInputs = [ six ] ++ lib.optionals isPy27 [ google-apputils ];
propagatedNativeBuildInputs = [ buildPackages.protobuf ]; # For protoc.
nativeBuildInputs = [ pyext ] ++ lib.optionals isPy27 [ google-apputils ];
buildInputs = [ protobuf ];
patches = lib.optional (isPy37 && (lib.versionOlder protobuf.version "3.6.1.2"))
# Python 3.7 compatibility (not needed for protobuf >= 3.6.1.2)
(fetchpatch {
url = "https://github.com/protocolbuffers/protobuf/commit/0a59054c30e4f0ba10f10acfc1d7f3814c63e1a7.patch";
sha256 = "09hw22y3423v8bbmc9xm07znwdxfbya6rp78d4zqw6fisdvjkqf1";
stripLen = 1;
})
;
prePatch = ''
while [ ! -d python ]; do
cd *
done
cd python
'';
setupPyGlobalFlags = lib.optional (lib.versionAtLeast protobuf.version "2.6.0")
"--cpp_implementation";
pythonImportsCheck = [
"google.protobuf"
] ++ lib.optionals (lib.versionAtLeast protobuf.version "2.6.0") [
"google.protobuf.internal._api_implementation" # Verify that --cpp_implementation worked
];
meta = with lib; {
description = "Protocol Buffers are Google's data interchange format";
homepage = "https://developers.google.com/protocol-buffers/";
license = licenses.bsd3;
maintainers = with maintainers; [ knedlsepp ];
};
passthru.protobuf = protobuf;
}

View file

@ -0,0 +1,12 @@
diff --git a/setup.cfg b/setup.cfg
index f23714b6..8aaeb330 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
[egg_info]
tag_build = .post
-tag_date = 1
+tag_date = 0
[aliases]
clean_egg_info = egg_info -Db ''

View file

@ -7,7 +7,8 @@ let
py = python3.override {
packageOverrides = self: super: {
# newest version doesn't support click >8.0 https://github.com/alanhamlett/pip-update-requirements/issues/38
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
inherit (py.pkgs) buildPythonApplication click pytestCheckHook;

View file

@ -7,7 +7,8 @@ let
# Workaround the issue by providing click 7 explicitly.
python = python3.override {
packageOverrides = self: super: {
click = self.callPackage ../../../development/python-modules/click/7.nix { };
# Use click 7
click = self.callPackage ../../../development/python2-modules/click/default.nix { };
};
};
in with python.pkgs; buildPythonApplication rec {

View file

@ -22,10 +22,7 @@ let
namePrefix = python.libPrefix + "-";
bootstrapped-pip = if isPy3k then
callPackage ../development/python-modules/bootstrapped-pip { }
else
callPackage ../development/python-modules/bootstrapped-pip/2.nix { };
bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { };
# Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`.
# This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`.
@ -2789,7 +2786,6 @@ in {
feedparser = callPackage ../development/python-modules/feedparser { };
fenics = callPackage ../development/libraries/science/math/fenics {
pytest = self.pytest_4;
hdf5 = pkgs.hdf5_1_10;
};
@ -7554,14 +7550,6 @@ in {
pytest = self.pytest_6;
pytest_4 = callPackage
../development/python-modules/pytest/4.nix {
# hypothesis tests require pytest that causes dependency cycle
hypothesis = self.hypothesis.override {
doCheck = false;
};
};
pytest_5 = callPackage
../development/python-modules/pytest/5.nix {
# hypothesis tests require pytest that causes dependency cycle
@ -10335,8 +10323,6 @@ in {
werkzeug = callPackage ../development/python-modules/werkzeug { };
werkzeug1 = callPackage ../development/python-modules/werkzeug/1.nix { };
west = callPackage ../development/python-modules/west { };
wfuzz = callPackage ../development/python-modules/wfuzz { };
@ -10407,10 +10393,7 @@ in {
wsnsimpy = callPackage ../development/python-modules/wsnsimpy { };
wsproto = if (pythonAtLeast "3.6") then
callPackage ../development/python-modules/wsproto { }
else
callPackage ../development/python-modules/wsproto/0.14.nix { };
wsproto = callPackage ../development/python-modules/wsproto { };
wtforms = callPackage ../development/python-modules/wtforms { };

View file

@ -6,125 +6,135 @@ self: super:
with self; with super; {
boto3 = callPackage ../development/python-modules/boto3/1_17.nix {};
bootstrapped-pip = callPackage ../development/python2-modules/bootstrapped-pip { };
botocore = callPackage ../development/python-modules/botocore/1_20.nix {};
boto3 = callPackage ../development/python2-modules/boto3 {};
certifi = callPackage ../development/python-modules/certifi/python2.nix { };
botocore = callPackage ../development/python2-modules/botocore {};
chardet = callPackage ../development/python-modules/chardet/2.nix { };
certifi = callPackage ../development/python2-modules/certifi { };
cheetah = callPackage ../development/python-modules/cheetah { };
chardet = callPackage ../development/python2-modules/chardet { };
click = callPackage ../development/python-modules/click/7.nix { };
cheetah = callPackage ../development/python2-modules/cheetah { };
configparser = callPackage ../development/python-modules/configparser/4.nix { };
click = callPackage ../development/python2-modules/click { };
construct = callPackage ../development/python-modules/construct/2.10.54.nix { };
configparser = callPackage ../development/python2-modules/configparser { };
contextlib2 = callPackage ../development/python-modules/contextlib2/0.nix { };
construct = callPackage ../development/python2-modules/construct { };
cryptography = callPackage ../development/python-modules/cryptography/3.3.nix { };
contextlib2 = callPackage ../development/python2-modules/contextlib2 { };
cryptography_vectors = callPackage ../development/python-modules/cryptography/vectors-3.3.nix { };
cryptography = callPackage ../development/python2-modules/cryptography { };
decorator = callPackage ../development/python-modules/decorator/4.nix { };
cryptography_vectors = callPackage ../development/python2-modules/cryptography-vectors { };
enum = callPackage ../development/python-modules/enum { };
decorator = callPackage ../development/python2-modules/decorator { };
filelock = callPackage ../development/python-modules/filelock/3.2.nix { };
enum = callPackage ../development/python2-modules/enum { };
flask = callPackage ../development/python-modules/flask/1.nix { };
filelock = callPackage ../development/python2-modules/filelock { };
freezegun = callPackage ../development/python-modules/freezegun/0.3.nix { };
flask = callPackage ../development/python2-modules/flask { };
futures = callPackage ../development/python-modules/futures { };
freezegun = callPackage ../development/python2-modules/freezegun { };
google-apputils = callPackage ../development/python-modules/google-apputils { };
futures = callPackage ../development/python2-modules/futures { };
httpretty = callPackage ../development/python-modules/httpretty/0.nix { };
google-apputils = callPackage ../development/python2-modules/google-apputils { };
hypothesis = callPackage ../development/python-modules/hypothesis/2.nix { };
httpretty = callPackage ../development/python2-modules/httpretty { };
idna = callPackage ../development/python-modules/idna/2.nix { };
hypothesis = callPackage ../development/python2-modules/hypothesis { };
importlib-metadata = callPackage ../development/python-modules/importlib-metadata/2.nix { };
idna = callPackage ../development/python2-modules/idna { };
ipaddr = callPackage ../development/python-modules/ipaddr { };
importlib-metadata = callPackage ../development/python2-modules/importlib-metadata { };
itsdangerous = callPackage ../development/python-modules/itsdangerous/1.nix { };
ipaddr = callPackage ../development/python2-modules/ipaddr { };
jinja2 = callPackage ../development/python-modules/jinja2/2.nix { };
itsdangerous = callPackage ../development/python2-modules/itsdangerous { };
libcloud = callPackage ../development/python-modules/libcloud/2.nix { };
jinja2 = callPackage ../development/python2-modules/jinja2 { };
lpod = callPackage ../development/python-modules/lpod { };
libcloud = callPackage ../development/python2-modules/libcloud { };
marisa = callPackage ../development/python-modules/marisa {
lpod = callPackage ../development/python2-modules/lpod { };
marisa = callPackage ../development/python2-modules/marisa {
inherit (pkgs) marisa;
};
markdown = callPackage ../development/python-modules/markdown/3_1.nix { };
markdown = callPackage ../development/python2-modules/markdown { };
markupsafe = callPackage ../development/python-modules/markupsafe/1.nix { };
markupsafe = callPackage ../development/python2-modules/markupsafe { };
mock = callPackage ../development/python-modules/mock/2.nix { };
mock = callPackage ../development/python2-modules/mock { };
more-itertools = callPackage ../development/python-modules/more-itertools/2.7.nix { };
more-itertools = callPackage ../development/python2-modules/more-itertools { };
mutagen = callPackage ../development/python-modules/mutagen/1.43.nix { };
mutagen = callPackage ../development/python2-modules/mutagen { };
numpy = callPackage ../development/python-modules/numpy/1.16.nix { };
numpy = callPackage ../development/python2-modules/numpy { };
packaging = callPackage ../development/python-modules/packaging/2.nix { };
packaging = callPackage ../development/python2-modules/packaging { };
pillow = callPackage ../development/python-modules/pillow/6.nix {
pillow = callPackage ../development/python2-modules/pillow {
inherit (pkgs) freetype libjpeg zlib libtiff libwebp tcl lcms2 tk;
inherit (pkgs.xorg) libX11;
};
pip = callPackage ../development/python-modules/pip/20.nix { };
pip = callPackage ../development/python2-modules/pip { };
pluggy = callPackage ../development/python-modules/pluggy/0.nix { };
pluggy = callPackage ../development/python2-modules/pluggy { };
prettytable = callPackage ../development/python-modules/prettytable/1.nix { };
prettytable = callPackage ../development/python2-modules/prettytable { };
protobuf = callPackage ../development/python-modules/protobuf {
protobuf = callPackage ../development/python2-modules/protobuf {
disabled = isPyPy;
protobuf = pkgs.protobuf3_17; # last version compatible with Python 2
};
pycairo = callPackage ../development/python-modules/pycairo/1.18.nix {
pycairo = callPackage ../development/python2-modules/pycairo {
inherit (pkgs.buildPackages) meson;
};
pygments = callPackage ../development/python-modules/Pygments/2_5.nix { };
pygments = callPackage ../development/python2-modules/Pygments { };
pygobject3 = callPackage ../development/python-modules/pygobject/3.36.nix {
pygobject3 = callPackage ../development/python2-modules/pygobject {
inherit (pkgs) meson;
};
pygtk = callPackage ../development/python-modules/pygtk { };
pygtk = callPackage ../development/python2-modules/pygtk { };
pyGtkGlade = self.pygtk.override {
inherit (pkgs.gnome2) libglade;
};
pyjwt = callPackage ../development/python-modules/pyjwt/1.nix { };
pyjwt = callPackage ../development/python2-modules/pyjwt { };
pyroma = callPackage ../development/python-modules/pyroma/2.nix { };
pyroma = callPackage ../development/python2-modules/pyroma { };
pysqlite = callPackage ../development/python-modules/pysqlite { };
pysqlite = callPackage ../development/python2-modules/pysqlite { };
pytest = pytest_4;
pytest-runner = callPackage ../development/python-modules/pytest-runner/2.nix { };
pytest_4 = callPackage
../development/python2-modules/pytest {
# hypothesis tests require pytest that causes dependency cycle
hypothesis = self.hypothesis.override {
doCheck = false;
};
};
pytest-xdist = callPackage ../development/python-modules/pytest-xdist/1.nix { };
pytest-runner = callPackage ../development/python2-modules/pytest-runner { };
pyyaml = callPackage ../development/python-modules/pyyaml/5.nix { };
pytest-xdist = callPackage ../development/python2-modules/pytest-xdist { };
qpid-python = callPackage ../development/python-modules/qpid-python { };
pyyaml = callPackage ../development/python2-modules/pyyaml { };
qpid-python = callPackage ../development/python2-modules/qpid-python { };
recoll = disabled super.recoll;
@ -132,42 +142,44 @@ with self; with super; {
rpm = disabled super.rpm;
s3transfer = callPackage ../development/python-modules/s3transfer/0_4.nix { };
s3transfer = callPackage ../development/python2-modules/s3transfer { };
scandir = callPackage ../development/python-modules/scandir { };
scandir = callPackage ../development/python2-modules/scandir { };
sequoia = disabled super.sequoia;
setuptools = callPackage ../development/python-modules/setuptools/44.0.nix { };
setuptools = callPackage ../development/python2-modules/setuptools { };
setuptools-scm = callPackage ../development/python-modules/setuptools-scm/2.nix { };
setuptools-scm = callPackage ../development/python2-modules/setuptools-scm { };
sphinxcontrib-websupport = callPackage ../development/python-modules/sphinxcontrib-websupport/1_1.nix { };
sphinxcontrib-websupport = callPackage ../development/python2-modules/sphinxcontrib-websupport { };
sphinx = callPackage ../development/python-modules/sphinx/2.nix { };
sphinx = callPackage ../development/python2-modules/sphinx { };
TurboCheetah = callPackage ../development/python-modules/TurboCheetah { };
TurboCheetah = callPackage ../development/python2-modules/TurboCheetah { };
typing = callPackage ../development/python-modules/typing { };
typing = callPackage ../development/python2-modules/typing { };
urllib3 = callPackage ../development/python-modules/urllib3/2.nix { };
urllib3 = callPackage ../development/python2-modules/urllib3 { };
werkzeug = callPackage ../development/python-modules/werkzeug/1.nix { };
werkzeug = callPackage ../development/python2-modules/werkzeug { };
wxPython30 = callPackage ../development/python-modules/wxPython/3.0.nix {
wsproto = callPackage ../development/python2-modules/wsproto { };
wxPython30 = callPackage ../development/python2-modules/wxPython {
wxGTK = pkgs.wxGTK30;
};
wxPython = self.wxPython30;
vcrpy = callPackage ../development/python-modules/vcrpy/3.nix { };
vcrpy = callPackage ../development/python2-modules/vcrpy { };
yenc = callPackage ../development/python-modules/yenc { };
yenc = callPackage ../development/python2-modules/yenc { };
yt = callPackage ../development/python-modules/yt { };
yt = callPackage ../development/python2-modules/yt { };
zeek = disabled super.zeek;
zipp = callPackage ../development/python-modules/zipp/1.nix { };
zipp = callPackage ../development/python2-modules/zipp { };
}