unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#34452] Updates for python-trezor-agent and python-trezor
@ 2019-02-12  6:23 Vagrant Cascadian
  2019-02-12 23:29 ` bug#34452: " Danny Milosavljevic
  0 siblings, 1 reply; 2+ messages in thread
From: Vagrant Cascadian @ 2019-02-12  6:23 UTC (permalink / raw)
  To: 34452


[-- Attachment #1.1: Type: text/plain, Size: 319 bytes --]

The attached patch series update python-trezor-agent and python-trezor,
and fixes a bug that made python-trezor unusable:
https://bugs.gnu.org/34377

The solution for the bug could certainly be implemented more elegantly
by someone who knows guix packaging better, but it worked for me!

Thanks!

live well,
  vagrant


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: 0001-gnu-python-trezor-agent-Update-to-0.13.0.patch --]
[-- Type: text/x-diff, Size: 3546 bytes --]

From fc7873d01ce9f06ab84384e9d72e4faf72f1a23f Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 7 Feb 2019 00:07:15 +0000
Subject: [PATCH 1/2] gnu: python-trezor-agent: Update to 0.13.0.

* gnu/packages/finance.scm: use-module gnupg.

* gnu/packages/finance.scm (python-trezor-agent): Update to 0.13.0.
  [propagated-inputs]: Add python-configargparse, python-daemon,
  python-docutils, python-mnemonic, python-pymsgbox, python-wheel.
  [native-inputs]: Add gnupg.
  [synopsis]: generalize description to hardware wallets.
  [phases]: Add phase to remove uneccesary python backport.
---
 gnu/packages/finance.scm | 26 ++++++++++++++++++++------
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index e44be713f2..0e7c396421 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -45,6 +45,7 @@
   #:use-module (gnu packages dns)
   #:use-module (gnu packages emacs)
   #:use-module (gnu packages dbm)
+  #:use-module (gnu packages gnupg)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages groff)
   #:use-module (gnu packages libedit)
@@ -591,7 +592,7 @@ Monero GUI client.")
 (define-public python-trezor-agent
   (package
     (name "python-trezor-agent")
-    (version "0.9.4")
+    (version "0.13.0")
     (source
      (origin
        (method git-fetch)
@@ -600,11 +601,17 @@ Monero GUI client.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "15aaqk79d9y9nbsfznf2iscz12z5ispcj8kr8v5bc0sqqj2brs12"))))
+        (base32 "0i4igkxi8fwdlbhg6nx27lhnc9v9nmrw4j5fvpnc202n6yjlc7x7"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'remove-requires-backports-shutil-which
+           ;; Remove requires on backport of shutil_which, as python 3.4+ has
+           ;; a built-in implementation supported in python-trezor-agent.
+           (lambda _
+             (substitute* "setup.py"
+               (("'backports.shutil_which>=3.5.1',") ""))))
          (delete 'check)
          (add-after 'install 'check
            (lambda* (#:key outputs inputs #:allow-other-keys)
@@ -612,15 +619,22 @@ Monero GUI client.")
              (add-installed-pythonpath inputs outputs)
              (invoke "py.test"))))))
     (propagated-inputs
-     `(("python-ecdsa" ,python-ecdsa)
+     `(("python-configargparse" ,python-configargparse)
+       ("python-daemon" ,python-daemon)
+       ("python-docutils" ,python-docutils)
+       ("python-ecdsa" ,python-ecdsa)
        ("python-ed25519" ,python-ed25519)
+       ("python-mnemonic" ,python-mnemonic)
+       ("python-pymsgbox" ,python-pymsgbox)
        ("python-semver" ,python-semver)
-       ("python-unidecode" ,python-unidecode)))
+       ("python-unidecode" ,python-unidecode)
+       ("python-wheel" ,python-wheel)))
     (native-inputs
-     `(("python-mock" ,python-mock)
+     `(("gnupg" ,gnupg)
+       ("python-mock" ,python-mock)
        ("python-pytest" ,python-pytest)))
     (home-page "https://github.com/romanz/trezor-agent")
-    (synopsis "TREZOR SSH and GPG host support")
+    (synopsis "Use hardware wallets as SSH and GPG agent")
     (description
      "@code{libagent} is a library that allows using TREZOR, Keepkey and
 Ledger Nano as a hardware SSH/GPG agent.")
-- 
2.20.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-trezor-agent-Update-0.10.0.patch --]
[-- Type: text/x-diff, Size: 2239 bytes --]

From 49c7cfc32f7263c78bf2b555dfad8cfcaf6db8eb Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Thu, 7 Feb 2019 00:07:49 +0000
Subject: [PATCH 2/2] gnu: trezor-agent: Update 0.10.0.

    Fixes <https://bugs.gnu.org/34377>.

* gnu/packages/finance.scm (trezor-agent): Update to 0.10.0.
  [phases]: Add fixup-agent-py phase to install trezor_agent.py without shell
  wrapper.
  [native-inputs]: Add python-hidapi.
  [home-page]: Use https url.
---
 gnu/packages/finance.scm | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 0e7c396421..cddccbfd94 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -803,19 +803,32 @@ Then set the environment variable GNUPGHOME to
 (define-public trezor-agent
   (package
     (name "trezor-agent")
-    (version "0.9.0")
+    (version "0.10.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "trezor_agent" version))
        (sha256
         (base32
-         "1i5cdamlf3c0ym600pjklij74p8ifj9cv7xrpnrfl1b8nkadswbz"))))
+         "144657c7bn0a667dq5fv5r6j7iilxf3h9agj29v1m2qpq40g0az8"))))
+    (arguments
+     ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'".
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'wrap 'fixup-agent-py
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out")))
+               ;; overwrite the wrapper with the real thing.
+               (install-file "./trezor_agent.py"
+                             (string-append out "/bin/"))
+             #t))))))
     (build-system python-build-system)
     (inputs
      `(("python-trezor" ,python-trezor)
        ("python-trezor-agent" ,python-trezor-agent)))
-    (home-page "http://github.com/romanz/trezor-agent")
+    (native-inputs
+     `(("python-hidapi" ,python-hidapi)))
+    (home-page "https://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.")
-- 
2.20.1


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#34452: Updates for python-trezor-agent and python-trezor
  2019-02-12  6:23 [bug#34452] Updates for python-trezor-agent and python-trezor Vagrant Cascadian
@ 2019-02-12 23:29 ` Danny Milosavljevic
  0 siblings, 0 replies; 2+ messages in thread
From: Danny Milosavljevic @ 2019-02-12 23:29 UTC (permalink / raw)
  To: Vagrant Cascadian; +Cc: 34452-done

[-- Attachment #1: Type: text/plain, Size: 621 bytes --]

Hi Vagrant,

On Mon, 11 Feb 2019 22:23:29 -0800
Vagrant Cascadian <vagrant@debian.org> wrote:
>The solution for the bug could certainly be implemented more elegantly
>by someone who knows guix packaging better, but it worked for me!

Long term there will be a proper fix for the problem of the same
Python file being able to be both a library and an executable
program: On core-updates, there's a wrap-script function which
will do the right thing in both cases.

After master is merged to core-updates, we should use it for trezor-agent.

For now, the workaround is fine.

Applied to master.

Thanks!

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-02-12 23:30 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-12  6:23 [bug#34452] Updates for python-trezor-agent and python-trezor Vagrant Cascadian
2019-02-12 23:29 ` bug#34452: " Danny Milosavljevic

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).