From 5b29b74b71743fc97a9c8f79827e563b820278ec Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 9 May 2021 16:16:02 +0200 Subject: [PATCH 1/2] python3Packages.privacyidea: fix eval with python3 While `privacyidea-ldap-proxy` only works on `python2`[1], `privacyidea` itself works fine with `python3`, however it needs version one of `pyjwt`[2], so I had to add `pyjwt1` which was already packaged for `python2`[3] to the `python3` package-set. I think that's fine though since `python2` should be only used when actually needed which isn't the case here. Closes #122250 [1] https://github.com/privacyidea/privacyidea-ldap-proxy/issues/50 [2] https://github.com/privacyidea/privacyidea/issues/2629 [3] bf9b6b1ef3dffa6f08ed16003630e1ce94361c1e --- pkgs/development/python-modules/privacyidea/default.nix | 8 ++++---- pkgs/top-level/python-packages.nix | 4 +++- pkgs/top-level/python2-packages.nix | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/privacyidea/default.nix b/pkgs/development/python-modules/privacyidea/default.nix index c28a0090168..11ff6f71af6 100644 --- a/pkgs/development/python-modules/privacyidea/default.nix +++ b/pkgs/development/python-modules/privacyidea/default.nix @@ -1,10 +1,10 @@ { lib, buildPythonPackage, fetchFromGitHub, cacert, openssl, python, nixosTests , cryptography, pyrad, pymysql, python-dateutil, flask-versioned, flask_script -, defusedxml, croniter, flask_migrate, pyjwt, configobj, sqlsoup, pillow +, defusedxml, croniter, flask_migrate, pyjwt1, configobj, sqlsoup, pillow , python-gnupg, passlib, pyopenssl, beautifulsoup4, smpplib, flask-babel , ldap3, huey, pyyaml, qrcode, oauth2client, requests, lxml, cbor2, psycopg2 -, pydash +, pydash, ecdsa , mock, pytestCheckHook, responses, testfixtures }: @@ -29,10 +29,10 @@ buildPythonPackage rec { propagatedBuildInputs = [ cryptography pyrad pymysql python-dateutil flask-versioned flask_script - defusedxml croniter flask_migrate pyjwt configobj sqlsoup pillow + defusedxml croniter flask_migrate pyjwt1 configobj sqlsoup pillow python-gnupg passlib pyopenssl beautifulsoup4 smpplib flask-babel ldap3 huey pyyaml qrcode oauth2client requests lxml cbor2 psycopg2 - pydash + pydash ecdsa ]; passthru.tests = { inherit (nixosTests) privacyidea; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1681942e41d..99c3353fac1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5177,7 +5177,9 @@ in { prison = callPackage ../development/python-modules/prison { }; - privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { }; + privacyidea = callPackage ../development/python-modules/privacyidea { }; + + pyjwt1 = callPackage ../development/python-modules/pyjwt/1.nix { }; proboscis = callPackage ../development/python-modules/proboscis { }; diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix index e21f9034292..c141562c12e 100644 --- a/pkgs/top-level/python2-packages.nix +++ b/pkgs/top-level/python2-packages.nix @@ -383,7 +383,7 @@ with self; with super; { prettytable = callPackage ../development/python-modules/prettytable/1.nix { }; - privacyidea = callPackage ../development/python-modules/privacyidea { }; + privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { }; progressbar231 = callPackage ../development/python-modules/progressbar231 { }; From 67e49dbbb7edc1db8a07db9854aba39ae437b074 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 9 May 2021 17:06:24 +0200 Subject: [PATCH 2/2] python2Packages.privacyidea-ldap-proxy: fix python2 build --- .../development/python-modules/ldaptor/19.nix | 36 +++++++++++++++++++ pkgs/top-level/python2-packages.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/python-modules/ldaptor/19.nix diff --git a/pkgs/development/python-modules/ldaptor/19.nix b/pkgs/development/python-modules/ldaptor/19.nix new file mode 100644 index 00000000000..cca696f1dff --- /dev/null +++ b/pkgs/development/python-modules/ldaptor/19.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchPypi +, twisted +, passlib +, pyopenssl +, pyparsing +, service-identity +, zope_interface +, isPy3k +, python +}: + +buildPythonPackage rec { + pname = "ldaptor"; + version = "19.1.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "64c7b870c77e34e4f5f9cfdf330b9702e89b4dd0f64275704f86c1468312c755"; + }; + + propagatedBuildInputs = [ + twisted passlib pyopenssl pyparsing service-identity zope_interface + ]; + + disabled = isPy3k; + + doCheck = false; + + meta = { + description = "A Pure-Python Twisted library for LDAP"; + homepage = "https://github.com/twisted/ldaptor"; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix index c141562c12e..9eae7555ea4 100644 --- a/pkgs/top-level/python2-packages.nix +++ b/pkgs/top-level/python2-packages.nix @@ -385,6 +385,8 @@ with self; with super; { privacyidea-ldap-proxy = callPackage ../development/python-modules/privacyidea/ldap-proxy.nix { }; + ldaptor = callPackage ../development/python-modules/ldaptor/19.nix { }; + progressbar231 = callPackage ../development/python-modules/progressbar231 { }; prompt_toolkit = callPackage ../development/python-modules/prompt_toolkit/1.nix { };