From 7b4acc6626c631645b29e1486e81c5683fa82c7c Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:00:29 +0200 Subject: [PATCH 01/10] pythonPackages.hidapi: 0.7.99.post15 -> 0.7.99.post20 --- .../python-modules/hidapi/default.nix | 30 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 28 ++--------------- 2 files changed, 32 insertions(+), 26 deletions(-) create mode 100644 pkgs/development/python-modules/hidapi/default.nix diff --git a/pkgs/development/python-modules/hidapi/default.nix b/pkgs/development/python-modules/hidapi/default.nix new file mode 100644 index 000000000000..697bc1cd0e3d --- /dev/null +++ b/pkgs/development/python-modules/hidapi/default.nix @@ -0,0 +1,30 @@ +{ stdenv, libusb1, udev, fetchPypi, buildPythonPackage, cython }: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "hidapi"; + version = "0.7.99.post20"; + + src = fetchPypi { + inherit pname version; + sha256 = "1k7z5m7xsqy8j4qkjy4pfxdx4hm36ha68vi65z6smvnyg4zgv22z"; + }; + + propagatedBuildInputs = [ libusb1 udev cython ]; + + # Fix the USB backend library lookup + postPatch = '' + libusb=${libusb1.dev}/include/libusb-1.0 + test -d $libusb || { echo "ERROR: $libusb doesn't exist, please update/fix this build expression."; exit 1; } + sed -i -e "s|/usr/include/libusb-1.0|$libusb|" setup.py + ''; + + meta = with stdenv.lib; { + description = "A Cython interface to the hidapi from https://github.com/signal11/hidapi"; + homepage = https://github.com/trezor/cython-hidapi; + # license can actually be either bsd3 or gpl3 + # see https://github.com/trezor/cython-hidapi/blob/master/LICENSE-orig.txt + license = licenses.bsd3; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c146ea70b2c6..4f6060af235d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29626,32 +29626,8 @@ EOF }; }; - hidapi = buildPythonPackage rec{ - version = "0.7.99.post15"; - name = "hidapi-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/h/hidapi/${name}.tar.gz"; - sha256 = "09wlr1d7mx80974bsq62j4pk80234jgl7ip4br0y43q6999dpcr0"; - }; - - propagatedBuildInputs = with self; [ pkgs.libusb1 pkgs.udev cython ]; - - # Fix the USB backend library lookup - postPatch = '' - libusb=${pkgs.libusb1.dev}/include/libusb-1.0 - test -d $libusb || { echo "ERROR: $libusb doesn't exist, please update/fix this build expression."; exit 1; } - sed -i -e "s|/usr/include/libusb-1.0|$libusb|" setup.py - ''; - - meta = { - description = "A Cython interface to the hidapi from https://github.com/signal11/hidapi"; - homepage = https://github.com/trezor/cython-hidapi; - # license can actually be either bsd3 or gpl3 - # see https://github.com/trezor/cython-hidapi/blob/master/LICENSE-orig.txt - license = licenses.bsd3; - maintainers = with maintainers; [ np ]; - }; + hidapi = callPackage ../development/python-modules/hidapi { + inherit (pkgs) udev libusb1; }; mnemonic = callPackage ../development/python-modules/mnemonic.nix { }; From 9e61a82ab388be7b46a780ac999109cc9cc69478 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:23:21 +0200 Subject: [PATCH 02/10] pythonPackages.ecpy: init at 0.8.1 --- .../python-modules/ecpy/default.nix | 22 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/python-modules/ecpy/default.nix diff --git a/pkgs/development/python-modules/ecpy/default.nix b/pkgs/development/python-modules/ecpy/default.nix new file mode 100644 index 000000000000..57549792d218 --- /dev/null +++ b/pkgs/development/python-modules/ecpy/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchPypi, buildPythonPackage, hidapi +, pycrypto, pillow, protobuf, future, ecpy +}: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "ECPy"; + version = "0.8.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0ab60sx4bbsmccwmdvz1023r0cbzi4phar4ipzn5npdj5gw1ny4l"; + }; + + buildInputs = [ hidapi pycrypto pillow protobuf future ]; + + meta = with stdenv.lib; { + description = "Pure Pyhton Elliptic Curve Library"; + homepage = "https://github.com/ubinity/ECPy"; + license = licenses.asl20; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4f6060af235d..25309c4d7a11 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29632,6 +29632,8 @@ EOF mnemonic = callPackage ../development/python-modules/mnemonic.nix { }; + ecpy = callPackage ../development/python-modules/ecpy { }; + trezor = callPackage ../development/python-modules/trezor.nix { }; keepkey = buildPythonPackage rec{ From 6c0e6eeb58f6047a8c13754568e631f8e5a8e451 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:25:39 +0200 Subject: [PATCH 03/10] pythonPackages.ledgerblue: init at 0.1.13 --- .../python-modules/ledgerblue/default.nix | 23 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/development/python-modules/ledgerblue/default.nix diff --git a/pkgs/development/python-modules/ledgerblue/default.nix b/pkgs/development/python-modules/ledgerblue/default.nix new file mode 100644 index 000000000000..9ed18190a8e3 --- /dev/null +++ b/pkgs/development/python-modules/ledgerblue/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchPypi, buildPythonPackage, hidapi +, pycrypto, pillow, protobuf, future, ecpy +}: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "ledgerblue"; + version = "0.1.13"; + + src = fetchPypi { + inherit pname version; + sha256 = "09bsiylvgax6m47w8r0myaf61xj9j0h1spvadx6fx31qy0iqicw0"; + }; + + buildInputs = [ hidapi pycrypto pillow protobuf future ecpy ]; + + meta = with stdenv.lib; { + description = "Python library to communicate with Ledger Blue/Nano S"; + homepage = "https://github.com/LedgerHQ/blue-loader-python"; + license = licenses.asl20; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 25309c4d7a11..f832beea6747 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29632,6 +29632,8 @@ EOF mnemonic = callPackage ../development/python-modules/mnemonic.nix { }; + ledgerblue = callPackage ../development/python-modules/ledgerblue { }; + ecpy = callPackage ../development/python-modules/ecpy { }; trezor = callPackage ../development/python-modules/trezor.nix { }; From b236fa54aa87f87145ac291e7e5a380a23e2e6a0 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:35:41 +0200 Subject: [PATCH 04/10] pythonPackages.keepkey: fix impossible constraint --- .../python-modules/keepkey/default.nix | 30 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 26 ++-------------- 2 files changed, 32 insertions(+), 24 deletions(-) create mode 100644 pkgs/development/python-modules/keepkey/default.nix diff --git a/pkgs/development/python-modules/keepkey/default.nix b/pkgs/development/python-modules/keepkey/default.nix new file mode 100644 index 000000000000..0d7f7661e7dd --- /dev/null +++ b/pkgs/development/python-modules/keepkey/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchPypi, buildPythonPackage, ecdsa +, mnemonic, protobuf3_0, hidapi }: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "keepkey"; + version = "0.7.3"; + + src = fetchPypi { + inherit pname version; + sha256 = "14d2r8dlx997ypgma2k8by90acw7i3l7hfq4gar9lcka0lqfj714"; + }; + + propagatedBuildInputs = [ protobuf3_0 hidapi ]; + + buildInputs = [ ecdsa mnemonic ]; + + # There are no actual tests: "ImportError: No module named tests" + doCheck = false; + + # Remove impossible dependency constraint + postPatch = "sed -i -e 's|hidapi==|hidapi>=|' setup.py"; + + meta = with stdenv.lib; { + description = "KeepKey Python client"; + homepage = https://github.com/keepkey/python-keepkey; + license = licenses.gpl3; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f832beea6747..ab3a8a28a979 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29632,36 +29632,14 @@ EOF mnemonic = callPackage ../development/python-modules/mnemonic.nix { }; + keepkey = callPackage ../development/python-modules/keepkey { }; + ledgerblue = callPackage ../development/python-modules/ledgerblue { }; ecpy = callPackage ../development/python-modules/ecpy { }; trezor = callPackage ../development/python-modules/trezor.nix { }; - keepkey = buildPythonPackage rec{ - version = "0.7.3"; - name = "keepkey-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/k/keepkey/${name}.tar.gz"; - sha256 = "14d2r8dlx997ypgma2k8by90acw7i3l7hfq4gar9lcka0lqfj714"; - }; - - propagatedBuildInputs = with self; [ protobuf3_0 hidapi ]; - - buildInputs = with self; [ ecdsa mnemonic ]; - - # There are no actual tests: "ImportError: No module named tests" - doCheck = false; - - meta = { - description = "KeepKey Python client"; - homepage = https://github.com/keepkey/python-keepkey; - license = licenses.gpl3; - maintainers = with maintainers; [ np ]; - }; - }; - semver = buildPythonPackage rec { name = "semver-${version}"; version = "2.2.1"; From 93ff334d6d2f6d65b17dfd44f3eb9b66c2383abc Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:40:14 +0200 Subject: [PATCH 05/10] pythonPackages.trezor: move expression to trezor/default.nix --- .../python-modules/{trezor.nix => trezor/default.nix} | 8 ++++---- pkgs/top-level/python-packages.nix | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) rename pkgs/development/python-modules/{trezor.nix => trezor/default.nix} (80%) diff --git a/pkgs/development/python-modules/trezor.nix b/pkgs/development/python-modules/trezor/default.nix similarity index 80% rename from pkgs/development/python-modules/trezor.nix rename to pkgs/development/python-modules/trezor/default.nix index 70160dcb0f94..6fc6622cf3f2 100644 --- a/pkgs/development/python-modules/trezor.nix +++ b/pkgs/development/python-modules/trezor/default.nix @@ -1,12 +1,12 @@ -{ lib, fetchurl, buildPythonPackage, protobuf3_0, hidapi, ecdsa, mnemonic }: +{ lib, fetchPypi, buildPythonPackage, protobuf3_0, hidapi, ecdsa, mnemonic }: buildPythonPackage rec { + name = "${pname}-${version}"; pname = "trezor"; version = "0.7.13"; - name = "${pname}-${version}"; - src = fetchurl { - url = "mirror://pypi/t/${pname}/${name}.tar.gz"; + src = fetchPypi { + inherit pname version; sha256 = "d05f388bb56b6f61cc727999cc725078575238a0b6172450322bc55c437fefe5"; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ab3a8a28a979..e77ce42c80cf 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29638,7 +29638,7 @@ EOF ecpy = callPackage ../development/python-modules/ecpy { }; - trezor = callPackage ../development/python-modules/trezor.nix { }; + trezor = callPackage ../development/python-modules/trezor { }; semver = buildPythonPackage rec { name = "semver-${version}"; From 6217233531ef824f0fa34a55108a1e4dcc84741c Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:42:35 +0200 Subject: [PATCH 06/10] pythonPackages.libagent: init at 0.9.1 --- .../python-modules/libagent/default.nix | 26 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 28 insertions(+) create mode 100644 pkgs/development/python-modules/libagent/default.nix diff --git a/pkgs/development/python-modules/libagent/default.nix b/pkgs/development/python-modules/libagent/default.nix new file mode 100644 index 000000000000..5192abf8200f --- /dev/null +++ b/pkgs/development/python-modules/libagent/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchPypi, buildPythonPackage, ed25519, ecdsa +, semver, keepkey, trezor, mnemonic, ledgerblue +}: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "libagent"; + version = "0.9.1"; + + src = fetchPypi{ + inherit pname version; + sha256 = "1g19lsid7lqw567w31fif89w088lzbgh27xpb1pshjk1gvags3bc"; + }; + + buildInputs = [ + ed25519 ecdsa semver keepkey + trezor mnemonic ledgerblue + ]; + + meta = with stdenv.lib; { + description = "Using hardware wallets as SSH/GPG agent"; + homepage = "https://github.com/romanz/trezor-agent"; + license = licenses.gpl3; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e77ce42c80cf..b9b4ba659ccf 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29634,6 +29634,8 @@ EOF keepkey = callPackage ../development/python-modules/keepkey { }; + libagent = callPackage ../development/python-modules/libagent { }; + ledgerblue = callPackage ../development/python-modules/ledgerblue { }; ecpy = callPackage ../development/python-modules/ecpy { }; From e693d5f9863a6ebe29ebce3fea79433465f1256a Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:47:06 +0200 Subject: [PATCH 07/10] pythonPackages.trezor_agent: 0.7.0 -> 0.9.0 --- pkgs/top-level/python-packages.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b9b4ba659ccf..37a04872e9c0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29677,15 +29677,19 @@ EOF }; trezor_agent = buildPythonPackage rec{ - version = "0.7.0"; - name = "trezor_agent-${version}"; + name = "${pname}-${version}"; + pname = "trezor_agent"; + version = "0.9.0"; - src = pkgs.fetchurl { - url = "mirror://pypi/t/trezor_agent/${name}.tar.gz"; - sha256 = "1x1gwih6w8kxhpgmcp0v1k7mpmfsqiikkjca291sd0v2if24x7q1"; + src = fetchPypi { + inherit pname version; + sha256 = "1i5cdamlf3c0ym600pjklij74p8ifj9cv7xrpnrfl1b8nkadswbz"; }; - propagatedBuildInputs = with self; [ trezor ecdsa ed25519 mnemonic keepkey semver ]; + propagatedBuildInputs = with self; [ + trezor libagent ecdsa ed25519 + mnemonic keepkey semver + ]; meta = { description = "Using Trezor as hardware SSH agent"; From f93dfd52594bf53889456f7797dd199bca2292ad Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:57:42 +0200 Subject: [PATCH 08/10] pythonPackages.semver: move to pkgs/development/python-modules --- .../python-modules/semver/default.nix | 19 +++++++++++++++ pkgs/top-level/python-packages.nix | 23 +------------------ 2 files changed, 20 insertions(+), 22 deletions(-) create mode 100644 pkgs/development/python-modules/semver/default.nix diff --git a/pkgs/development/python-modules/semver/default.nix b/pkgs/development/python-modules/semver/default.nix new file mode 100644 index 000000000000..285da5460717 --- /dev/null +++ b/pkgs/development/python-modules/semver/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchPypi, buildPythonPackage }: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "semver"; + version = "2.2.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "161gvsfpw0l8lnf1v19rvqc8b9f8n70cc8ppya4l0n6rwc1c1n4m"; + }; + + meta = with stdenv.lib; { + description = "Python package to work with Semantic Versioning (http://semver.org/)"; + homepage = "https://github.com/k-bx/python-semver"; + license = licenses.bsd3; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 37a04872e9c0..f0450ca3e483 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29640,28 +29640,7 @@ EOF ecpy = callPackage ../development/python-modules/ecpy { }; - trezor = callPackage ../development/python-modules/trezor { }; - - semver = buildPythonPackage rec { - name = "semver-${version}"; - version = "2.2.1"; - - src = pkgs.fetchurl { - url = "mirror://pypi/s/semver/${name}.tar.gz"; - sha256 = "161gvsfpw0l8lnf1v19rvqc8b9f8n70cc8ppya4l0n6rwc1c1n4m"; - }; - - meta = { - description = "Python package to work with Semantic Versioning (http://semver.org/)"; - homepage = "https://github.com/k-bx/python-semver"; - license = licenses.bsd3; - maintainers = with maintainers; [ np ]; - }; - }; - - ed25519 = buildPythonPackage rec { - name = "ed25519-${version}"; - version = "1.4"; + semver = callPackage ../development/python-modules/semver { }; src = pkgs.fetchurl { url = "mirror://pypi/e/ed25519/${name}.tar.gz"; From 3463dd1c7bf50adbe8f45f28ced706c7f165edd1 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 22:59:52 +0200 Subject: [PATCH 09/10] pythonPackages.ed25519: move to pkgs/development/python-modules --- .../python-modules/ed25519/default.nix | 19 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 13 ++----------- 2 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 pkgs/development/python-modules/ed25519/default.nix diff --git a/pkgs/development/python-modules/ed25519/default.nix b/pkgs/development/python-modules/ed25519/default.nix new file mode 100644 index 000000000000..1cdf85385e8b --- /dev/null +++ b/pkgs/development/python-modules/ed25519/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchPypi, buildPythonPackage }: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "ed25519"; + version = "1.4"; + + src = fetchPypi { + inherit pname version; + sha256 = "0ahx1nkxa0xis3cw0h5c4fpgv8mq4znkq7kajly33lc3317bk499"; + }; + + meta = with stdenv.lib; { + description = "Ed25519 public-key signatures"; + homepage = "https://github.com/warner/python-ed25519"; + license = licenses.mit; + maintainers = with maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f0450ca3e483..d6be2efa4237 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29642,18 +29642,9 @@ EOF semver = callPackage ../development/python-modules/semver { }; - src = pkgs.fetchurl { - url = "mirror://pypi/e/ed25519/${name}.tar.gz"; - sha256 = "0ahx1nkxa0xis3cw0h5c4fpgv8mq4znkq7kajly33lc3317bk499"; - }; + ed25519 = callPackage ../development/python-modules/ed25519 { }; - meta = { - description = "Ed25519 public-key signatures"; - homepage = "https://github.com/warner/python-ed25519"; - license = licenses.mit; - maintainers = with maintainers; [ np ]; - }; - }; + trezor = callPackage ../development/python-modules/trezor { }; trezor_agent = buildPythonPackage rec{ name = "${pname}-${version}"; From b3c91274811aad00d3efed81bf27c740fdf86785 Mon Sep 17 00:00:00 2001 From: rnhmjoj Date: Wed, 31 May 2017 23:01:05 +0200 Subject: [PATCH 10/10] pythonPackages.mnemonic: move expression to mnemonic/default.nix --- .../python-modules/mnemonic/default.nix | 21 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/mnemonic/default.nix diff --git a/pkgs/development/python-modules/mnemonic/default.nix b/pkgs/development/python-modules/mnemonic/default.nix new file mode 100644 index 000000000000..9f71fdb8e741 --- /dev/null +++ b/pkgs/development/python-modules/mnemonic/default.nix @@ -0,0 +1,21 @@ +{ lib, fetchurl, buildPythonPackage, pbkdf2 }: + +buildPythonPackage rec { + pname = "mnemonic"; + version = "0.17"; + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://pypi/m/${pname}/${name}.tar.gz"; + sha256 = "1hq6xb47jagfqf65iwcrh0065mj3521d2mxmahg7vfraihqyqdjn"; + }; + + propagatedBuildInputs = [ pbkdf2 ]; + + meta = { + description = "Implementation of Bitcoin BIP-0039"; + homepage = https://github.com/trezor/python-mnemonic; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ np ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d6be2efa4237..6876be1fd8c6 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29630,7 +29630,7 @@ EOF inherit (pkgs) udev libusb1; }; - mnemonic = callPackage ../development/python-modules/mnemonic.nix { }; + mnemonic = callPackage ../development/python-modules/mnemonic { }; keepkey = callPackage ../development/python-modules/keepkey { };