diff options
Diffstat (limited to 'gnu/packages/finance.scm')
-rw-r--r-- | gnu/packages/finance.scm | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 788f7c0d7c..8d2b734d92 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -41,6 +41,7 @@ #:use-module (gnu packages libedit) #:use-module (gnu packages libevent) #:use-module (gnu packages libunwind) + #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pkg-config) @@ -492,3 +493,225 @@ Monero command line client and daemon.") "Monero is a secure, private, untraceable currency. This package provides the Monero GUI client.") (license license:bsd-3))) + +(define-public python-trezor-agent + (package + (name "python-trezor-agent") + (version "0.9.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/romanz/trezor-agent/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0h8jb147vpjk7mqbl4za0xdh7lblhx07n9dfk80kn2plwnvrry1x")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key outputs inputs #:allow-other-keys) + ;; Make installed package available for running the tests + (add-installed-pythonpath inputs outputs) + (invoke "py.test")))))) + (propagated-inputs + `(("python-ecdsa" ,python-ecdsa) + ("python-ed25519" ,python-ed25519) + ("python-semver" ,python-semver) + ("python-unidecode" ,python-unidecode))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest))) + (home-page "https://github.com/romanz/trezor-agent") + (synopsis "TREZOR SSH and GPG host support") + (description + "@code{libagent} is a library that allows using TREZOR, Keepkey and +Ledger Nano as a hardware SSH/GPG agent.") + (license license:lgpl3))) + +(define-public python2-trezor-agent + (package-with-python2 python-trezor-agent)) + +(define-public python-mnemonic + (package + (name "python-mnemonic") + (version "0.18") + (source + (origin + (method url-fetch) + (uri (pypi-uri "mnemonic" version)) + (sha256 + (base32 + "07bzfa5di6nv5xwwcwbypnflpj50wlfczhh6q6hg8w13g5m319q2")))) + (build-system python-build-system) + (propagated-inputs + `(("python-pbkdf2" ,python-pbkdf2))) + (home-page "https://github.com/trezor/python-mnemonic") + (synopsis "Implementation of Bitcoin BIP-0039") + (description "@code{mnemonic} is a library that provides an implementation +of Bitcoin BIP-0039.") + (license license:expat))) + +(define-public python2-mnemonic + (package-with-python2 python-mnemonic)) + +(define-public python-ledgerblue + (package + (name "python-ledgerblue") + (version "0.1.16") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ledgerblue" version)) + (sha256 + (base32 + "010mghaqh1cmz3a0ifc3f40mmyplilwlw7kpha2mzyrrff46p9gb")))) + (build-system python-build-system) + (propagated-inputs + `(("python-ecpy" ,python-ecpy) + ("python-future" ,python-future) + ("python-hidapi" ,python-hidapi) + ("python-pillow" ,python-pillow) + ("python-protobuf" ,python-protobuf) + ("python-pycrypto" ,python-pycrypto))) + (home-page "https://github.com/LedgerHQ/blue-loader-python") + (synopsis "Python library to communicate with Ledger Blue/Nano S") + (description "@code{ledgerblue} is a Python library to communicate with +Ledger Blue/Nano S.") + (license license:asl2.0))) + +(define-public python2-ledgerblue + (package-with-python2 python-ledgerblue)) + +(define-public python-trezor + (package + (name "python-trezor") + (version "0.7.16") + (source + (origin + (method url-fetch) + (uri (pypi-uri "trezor" version)) + (sha256 + (base32 + "055kii56wgwadl5z911s59ya2fnsqzk3n5i19s2hb9sv2by6knvb")))) + (build-system python-build-system) + (propagated-inputs + `(("python-ecdsa" ,python-ecdsa) + ("python-hidapi" ,python-hidapi) + ("python-mnemonic" ,python-mnemonic) + ("python-protobuf" ,python-protobuf) + ("python-requests" ,python-requests))) + (native-inputs + `(("python-pyqt" ,python-pyqt))) ; Tests + (home-page "https://github.com/trezor/python-trezor") + (synopsis "Python library for communicating with TREZOR Hardware Wallet") + (description "@code{trezor} is a Python library for communicating with +TREZOR Hardware Wallet.") + (license license:lgpl3))) + +(define-public python2-trezor + (package-with-python2 python-trezor)) + +(define-public python-keepkey + (package + (name "python-keepkey") + (version "4.0.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "keepkey" version)) + (sha256 + (base32 + "0f4iqqjlqmamw4mhyhik4qlb5bnfd10wbjw9yzgir105wh5fdpnd")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (apply invoke "python" (find-files "tests/unit" "\\.py$"))))))) + (propagated-inputs + `(("python-ecdsa" ,python-ecdsa) + ("python-hidapi" ,python-hidapi) + ("python-mnemonic" ,python-mnemonic) + ("python-protobuf" ,python-protobuf))) + (home-page "https://github.com/keepkey/python-keepkey") + (synopsis "Python library for communicating with KeepKey Hardware Wallet") + (description "@code{keepkey} is a Python library for communicating with +the KeepKey Hardware Wallet.") + (license license:lgpl3))) + +(define-public python2-keepkey + (package-with-python2 python-keepkey)) + +(define-public ledger-agent + (package + (name "ledger-agent") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ledger_agent" version)) + (sha256 + (base32 + "03zj602m2rln9yvr08dswy56vzkbldp8b074ixwzz525dafblr92")))) + (build-system python-build-system) + (inputs + `(("python-ledgerblue" ,python-ledgerblue) + ("python-trezor-agent" ,python-trezor-agent))) + (home-page "http://github.com/romanz/trezor-agent") + (synopsis "Ledger as hardware SSH/GPG agent") + (description "This package allows using Ledger as hardware SSH/GPG agent. + +Usage for SSH: trezor-agent foo@@example.com --connect +Usage for GPG: Initialize using trezor-gpg init \"Foo <foo@@example.com>\" +Then set the environment variable GNUPGHOME to +\"${HOME}/.gnupg/trezor\".") + (license license:lgpl3))) + +(define-public trezor-agent + (package + (name "trezor-agent") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "trezor_agent" version)) + (sha256 + (base32 + "1i5cdamlf3c0ym600pjklij74p8ifj9cv7xrpnrfl1b8nkadswbz")))) + (build-system python-build-system) + (inputs + `(("python-trezor" ,python-trezor) + ("python-trezor-agent" ,python-trezor-agent))) + (home-page "http://github.com/romanz/trezor-agent") + (synopsis "Using Trezor as hardware SSH/GPG agent") + (description "This package allows using Trezor as a hardware SSH/GPG +agent.") + (license license:lgpl3))) + +(define-public keepkey-agent + (package + (name "keepkey-agent") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "keepkey_agent" version)) + (sha256 + (base32 + "03779gvlx70i0nnry98i4pl1d92604ix5x6jgdfkrdgzqbh5vj27")))) + (build-system python-build-system) + (inputs + `(("python-keepkey" ,python-keepkey) + ("python-trezor-agent" ,python-trezor-agent))) + (home-page "http://github.com/romanz/trezor-agent") + (synopsis "KeepKey as hardware SSH/GPG agent") + (description "This package allows using KeepKey as a hardware SSH/GPG +agent.") + (license license:lgpl3))) |