GNU bug report logs - #63354
[PATCH 0/4] Fix python-yubikey-manager build and update to 5.1.1.

Previous Next

Package: guix-patches;

Reported by: Pierre Langlois <pierre.langlois <at> gmx.com>

Date: Sun, 7 May 2023 21:15:01 UTC

Severity: normal

Tags: patch

Done: John Kehayias <john.kehayias <at> protonmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63354 in the body.
You can then email your comments to 63354 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#63354; Package guix-patches. (Sun, 07 May 2023 21:15:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Pierre Langlois <pierre.langlois <at> gmx.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sun, 07 May 2023 21:15:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Pierre Langlois <pierre.langlois <at> gmx.com>
To: guix-patches <at> gnu.org
Subject: [PATCH 0/4] Fix python-yubikey-manager build and update to 5.1.1.
Date: Sun, 07 May 2023 22:07:43 +0100
[Message part 1 (text/plain, inline)]
Hi Guix!

I recently noticed python-yubikey-manager fails to build on master,
here are a few patches to fix it by updating it and some of its
dependencies. Also cleaned the packages a little bit, and most
importantly enabled tests.

Thanks,
Pierre

Pierre Langlois (4):
  gnu: python-pyscard: Update to 2.0.7.
  gnu: python-fido2: Update to 1.1.1.
  gnu: Add python-makefun.
  gnu: python-yubikey-manager: Update to 5.1.1.

 gnu/packages/python-xyz.scm     | 22 ++++++++-
 gnu/packages/security-token.scm | 86 ++++++++++++++++-----------------
 2 files changed, 63 insertions(+), 45 deletions(-)


base-commit: 4c3532d7ab81a20e21d23bcf25e06999fcee2571
-- 
2.39.2

[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#63354; Package guix-patches. (Sun, 07 May 2023 21:20:02 GMT) Full text and rfc822 format available.

Message #8 received at 63354 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Langlois <pierre.langlois <at> gmx.com>
To: 63354 <at> debbugs.gnu.org
Cc: Pierre Langlois <pierre.langlois <at> gmx.com>
Subject: [PATCH 1/4] gnu: python-pyscard: Update to 2.0.7.
Date: Sun,  7 May 2023 22:19:20 +0100
* gnu/packages/security-token.scm (python-pyscard): Update to 2.0.7.
[arguments]<#:phases>: Use search-input-direcotry.  Do not return #t.
---
 gnu/packages/security-token.scm | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index b51d67427a..e702bcd9d3 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2023 Jake Leporte <jakeleporte <at> outlook.com>
 ;;; Copyright © 2023 Timotej Lazar <timotej.lazar <at> araneo.si>
 ;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
+;;; Copyright © 2023 Pierre Langlois <pierre.langlois <at> gmx.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -462,7 +463,7 @@ (define-public yubikey-personalization
 (define-public python-pyscard
   (package
     (name "python-pyscard")
-    (version "1.9.9")
+    (version "2.0.7")
     (source (origin
               (method url-fetch)
               ;; The maintainer publishes releases on various sites, but
@@ -472,7 +473,7 @@ (define-public python-pyscard
                     version "/pyscard-" version ".tar.gz"))
               (sha256
                (base32
-                "082cjkbxadaz2jb4rbhr0mkrirzlqyqhcf3r823qb0q1k50ybgg6"))))
+                "1gy1hmzrhfa7bqs132v89pchm9q3rpnqf3a6225vwpx7bx959017"))))
     (build-system python-build-system)
     (arguments
      `(#:phases
@@ -480,24 +481,21 @@ (define-public python-pyscard
          ;; Tell pyscard where to find the PCSC include directory.
          (add-after 'unpack 'patch-platform-include-dirs
            (lambda* (#:key inputs #:allow-other-keys)
-             (let ((pcsc-include-dir (string-append
-                                      (assoc-ref inputs "pcsc-lite")
-                                      "/include/PCSC")))
+             (let ((pcsc-include-dir (search-input-directory
+                                      inputs "/include/PCSC")))
                (substitute* "setup.py"
                  (("platform_include_dirs = \\[.*?\\]")
                   (string-append
-                   "platform_include_dirs = ['" pcsc-include-dir "']")))
-               #t)))
+                   "platform_include_dirs = ['" pcsc-include-dir "']"))))))
          ;; pyscard wants to dlopen libpcsclite, so tell it where it is.
          (add-after 'unpack 'patch-dlopen
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "smartcard/scard/winscarddll.c"
                (("lib = \"libpcsclite\\.so\\.1\";")
-                (simple-format #f
-                               "lib = \"~a\";"
-                               (search-input-file inputs
-                                                  "/lib/libpcsclite.so.1"))))
-             #t)))))
+                (simple-format
+                 #f
+                 "lib = \"~a\";"
+                 (search-input-file inputs "/lib/libpcsclite.so.1")))))))))
     (inputs
      (list pcsc-lite))
     (native-inputs
--
2.39.2





Information forwarded to guix-patches <at> gnu.org:
bug#63354; Package guix-patches. (Sun, 07 May 2023 21:20:02 GMT) Full text and rfc822 format available.

Message #11 received at 63354 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Langlois <pierre.langlois <at> gmx.com>
To: 63354 <at> debbugs.gnu.org
Cc: Pierre Langlois <pierre.langlois <at> gmx.com>
Subject: [PATCH 2/4] gnu: python-fido2: Update to 1.1.1.
Date: Sun,  7 May 2023 22:19:21 +0100
* gnu/packages/security-tokens.scm (python-fido2): Update to 1.1.1.
[build-system]: Switch to pyproject-build-system.
[arguments]<#:tests?>: Enable.
[arguments]<#:phases>: Gexpify.
[propagated-inputs]: Remove python-six.  Add python-pyscard.
[native-inputs]: Remove python-mock and python-pyflakefs.  Add
python-poetry-core and python-pytest.
---
 gnu/packages/security-token.scm | 41 +++++++++++++++++----------------
 1 file changed, 21 insertions(+), 20 deletions(-)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index e702bcd9d3..79c197cd42 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -50,6 +50,7 @@ (define-module (gnu packages security-token)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python)
+  #:use-module (guix build-system pyproject)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
@@ -81,6 +82,7 @@ (define-module (gnu packages security-token)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages swig)
@@ -682,7 +684,7 @@ (define-public pam-u2f
 (define-public python-fido2
   (package
     (name "python-fido2")
-    (version "0.9.3")
+    (version "1.1.1")
     (source (origin
               (method url-fetch)
               (uri
@@ -691,31 +693,30 @@ (define-public python-fido2
                 version "/fido2-" version ".tar.gz"))
               (sha256
                (base32
-                "1v366h449f8q74jkmy1291ffj2345nm7cdsipgqvgz4w22k8jpml"))
+                "1hwz0xagkmy6hhcyfl66dxf2vfa69lqqqjrv70vw7harik59bi2x"))
               (snippet
                ;; Remove bundled dependency.
                '(delete-file "fido2/public_suffix_list.dat"))))
-    (build-system python-build-system)
+    (build-system pyproject-build-system)
     (arguments
-     `(;; This attempts to access
-       ;; /System/Library/Frameworks/IOKit.framework/IOKit
-       ;; The recommendation is to use tox for testing.
-       #:tests? #false
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'install-public-suffix-list
-           (lambda* (#:key inputs #:allow-other-keys)
-             (copy-file
-              (search-input-file inputs
-                                 (string-append
-                                  "/share/public-suffix-list-"
-                                  ,(package-version public-suffix-list)
-                                  "/public_suffix_list.dat"))
-              "fido2/public_suffix_list.dat"))))))
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'install-public-suffix-list
+            (lambda* (#:key inputs #:allow-other-keys)
+              (copy-file
+               (search-input-file inputs
+                                  (string-append
+                                   "/share/public-suffix-list-"
+                                   #$(package-version public-suffix-list)
+                                   "/public_suffix_list.dat"))
+               "fido2/public_suffix_list.dat"))))))
     (propagated-inputs
-     (list python-cryptography python-six))
+     (list python-cryptography python-pyscard))
     (native-inputs
-     (list python-mock python-pyfakefs public-suffix-list))
+     (list python-poetry-core
+           python-pytest
+           public-suffix-list))
     (home-page "https://github.com/Yubico/python-fido2")
     (synopsis "Python library for communicating with FIDO devices over USB")
     (description
--
2.39.2





Information forwarded to jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#63354; Package guix-patches. (Sun, 07 May 2023 21:20:03 GMT) Full text and rfc822 format available.

Message #14 received at 63354 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Langlois <pierre.langlois <at> gmx.com>
To: 63354 <at> debbugs.gnu.org
Cc: Pierre Langlois <pierre.langlois <at> gmx.com>
Subject: [PATCH 3/4] gnu: Add python-makefun.
Date: Sun,  7 May 2023 22:19:22 +0100
* gnu/packages/python-xyz.scm (python-makefun): New variable.
---
 gnu/packages/python-xyz.scm | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a5c99a6f20..92ab43ac95 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -61,7 +61,7 @@
 ;;; Copyright © 2019, 2023 Jack Hill <jackhill <at> jackhill.us>
 ;;; Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv <at> posteo.net>
 ;;; Copyright © 2019, 2020 Alex Griffin <a <at> ajgrf.com>
-;;; Copyright © 2019, 2020, 2021, 2022 Pierre Langlois <pierre.langlois <at> gmx.com>
+;;; Copyright © 2019, 2020, 2021, 2022, 2023 Pierre Langlois <pierre.langlois <at> gmx.com>
 ;;; Copyright © 2019 Jacob MacDonald <jaccarmac <at> gmail.com>
 ;;; Copyright © 2019, 2020, 2021 Giacomo Leidi <goodoldpaul <at> autistici.org>
 ;;; Copyright © 2019 Wiktor Żelazny <wzelazny <at> vurv.cz>
@@ -4690,6 +4690,26 @@ (define-public python-linkify-it-py
 @end itemize")
     (license license:expat)))

+(define-public python-makefun
+  (package
+    (name "python-makefun")
+    (version "1.15.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "makefun" version))
+              (sha256
+               (base32
+                "19a8dga8rnmjn5gy1cy1wdi28swbkdkypwbqikbxil6ynqcg3c20"))))
+    (build-system pyproject-build-system)
+    (native-inputs
+     (list python-setuptools-scm python-pytest))
+    (home-page "https://github.com/smarie/python-makefun")
+    (synopsis "Library to dynamically create python functions")
+    (description "@code{makefun} helps create functions dynamically with a
+given signature.  It was largely inspired by @code{python-decorator} and
+@code{functools}.")
+    (license license:bsd-3)))
+
 (define-public python-markdown-it-py
   (package
     (name "python-markdown-it-py")
--
2.39.2





Information forwarded to guix-patches <at> gnu.org:
bug#63354; Package guix-patches. (Sun, 07 May 2023 21:20:03 GMT) Full text and rfc822 format available.

Message #17 received at 63354 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Langlois <pierre.langlois <at> gmx.com>
To: 63354 <at> debbugs.gnu.org
Cc: Pierre Langlois <pierre.langlois <at> gmx.com>
Subject: [PATCH 4/4] gnu: python-yubikey-manager: Update to 5.1.1.
Date: Sun,  7 May 2023 22:19:23 +0100
* gnu/packages/security-tokens.scm (python-yubikey-manager): Update to
5.1.1.
[build-system]: Switch to pyproject-build-system.
[arguments]: Delete.
[propagated-inputs]: Remove python-six.  Add python-keyring.
[native-inputs]: Add python-makefun, python-poetry-code and
python-pytest.
---
 gnu/packages/security-token.scm | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index 79c197cd42..4e8283a9ea 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -738,33 +738,32 @@ (define-public python-fido2
 (define-public python-yubikey-manager
   (package
     (name "python-yubikey-manager")
-    (version "4.0.7")
+    (version "5.1.1")
     (source (origin
               (method url-fetch)
               (uri (string-append
                     "https://developers.yubico.com/yubikey-manager/Releases"
-                    "/yubikey-manager-" version ".tar.gz"))
+                    "/yubikey_manager-" version ".tar.gz"))
               (sha256
                (base32
-                "0kzwal7i4kyywm4f5zh8b823mh0ih2nsh5c0c4dfn4vw3j5dnwlr"))))
-    (build-system python-build-system)
-    (arguments
-     '(;; This attempts to access
-       ;; /System/Library/Frameworks/IOKit.framework/IOKit
-       ;; The recommendation is to use tox for testing.
-       #:tests? #false))
+                "1kma08rxvpzn2gf8b9vxyyb2pvrakm7hhpdmbnb54nwbdnbxp1v4"))))
+    (build-system pyproject-build-system)
     (propagated-inputs
-     (list python-six
-           python-pyscard
+     (list python-pyscard
            python-pyusb
            python-click
            python-cryptography
+           python-keyring
            python-pyopenssl
            python-fido2))
     (inputs
      (list pcsc-lite))
     (native-inputs
-     (list swig python-mock))
+     (list swig
+           python-makefun
+           python-mock
+           python-poetry-core
+           python-pytest))
     (home-page "https://developers.yubico.com/yubikey-manager/")
     (synopsis "Command line tool and library for configuring a YubiKey")
     (description
--
2.39.2





Reply sent to John Kehayias <john.kehayias <at> protonmail.com>:
You have taken responsibility. (Fri, 14 Jul 2023 16:27:02 GMT) Full text and rfc822 format available.

Notification sent to Pierre Langlois <pierre.langlois <at> gmx.com>:
bug acknowledged by developer. (Fri, 14 Jul 2023 16:27:02 GMT) Full text and rfc822 format available.

Message #22 received at 63354-done <at> debbugs.gnu.org (full text, mbox):

From: John Kehayias <john.kehayias <at> protonmail.com>
To: Pierre Langlois <pierre.langlois <at> gmx.com>
Cc: 63354-done <at> debbugs.gnu.org
Subject: Re: bug#63354: [PATCH 0/4] Fix python-yubikey-manager build and
 update to 5.1.1.
Date: Fri, 14 Jul 2023 16:26:07 +0000
Hi Pierre,

On Sun, May 07, 2023 at 10:07 PM, Pierre Langlois wrote:

> Hi Guix!
>
> I recently noticed python-yubikey-manager fails to build on master,
> here are a few patches to fix it by updating it and some of its
> dependencies. Also cleaned the packages a little bit, and most
> importantly enabled tests.
>
> Thanks,
> Pierre
>

Thanks! I had actually done a lot of similar work but had got distracted
by the python build system changes (and poetry) and never looked to see
if the yubikey-manager part could be extracted out in:
https://issues.guix.gnu.org/63139

So, I combined what I had with yours to clean up a little more. I edited
some commit messages, fixed some typos, and checked everything builds.

Unfortunately I lost you as the author in the commit log, not sure what
happened. I was so careful locally in a branch but then missed it when I
went to actually push to master. Sorry about that! If there is a way to
remedy this or something else I can do anyone knows, please do share.

Pushed the series starting at 221806905b68f9b52b90bd5c80722d4a5ab3f353

Thanks again!

> Pierre Langlois (4):
>   gnu: python-pyscard: Update to 2.0.7.
>   gnu: python-fido2: Update to 1.1.1.
>   gnu: Add python-makefun.
>   gnu: python-yubikey-manager: Update to 5.1.1.
>
>  gnu/packages/python-xyz.scm     | 22 ++++++++-
>  gnu/packages/security-token.scm | 86 ++++++++++++++++-----------------
>  2 files changed, 63 insertions(+), 45 deletions(-)
>
>
> base-commit: 4c3532d7ab81a20e21d23bcf25e06999fcee2571





bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 12 Aug 2023 11:24:11 GMT) Full text and rfc822 format available.

This bug report was last modified 230 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.