* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
@ 2018-05-01 22:29 Vagrant Cascadian
2018-05-02 5:57 ` Nils Gillmann
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Vagrant Cascadian @ 2018-05-01 22:29 UTC (permalink / raw)
To: 31337
[-- Attachment #1: Type: text/plain, Size: 2428 bytes --]
I've been unable to use my gnuk usb smartcard token with gnupg on
GuixSD, and it appears this is because scdaemon is built without libusb
support:
$ gpg --card-status
gpg: selecting openpgp failed: No such device
gpg: OpenPGP card not available: No such device
Attached is a patch that gets scdaemon working for me and a gnuk...
Unfortunately, enabling libusb causes one of the tets to hang
indefinitely:
PASS: tests/openpgp/decrypt-session-key.scm
Checking unwrapping the encryption.
> encsig-2-keys-3 encsig-2-keys-4 <
PASS: tests/openpgp/decrypt-unwrap-verify.scm
Checking signing with the default hash algorithm
>
So far, I've only been able to get it to work by disabling the
tests... so it's obviously not a good idea to enable without further
troubleshooting.
Another option might be to use pcsc-lite and ccid, but I had even less
luck getting that to work.
live well,
vagrant
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index f397482ab..0e9e72784 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -39,6 +39,7 @@
#:use-module (gnu packages curl)
#:use-module (gnu packages crypto)
#:use-module (gnu packages emacs)
+ #:use-module (gnu packages libusb)
#:use-module (gnu packages openldap)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
@@ -232,6 +233,7 @@ compatible to GNU Pth.")
("libgcrypt" ,libgcrypt)
("libgpg-error" ,libgpg-error)
("libksba" ,libksba)
+ ("libusb" ,libusb)
("npth" ,npth)
("openldap" ,openldap)
("pcsc-lite" ,pcsc-lite)
@@ -246,12 +248,17 @@ compatible to GNU Pth.")
"--enable-all-tests")
#:phases
(modify-phases %standard-phases
+ ;; (delete 'check)
(add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "scd/scdaemon.c"
(("\"(libpcsclite\\.so[^\"]*)\"" _ name)
(string-append "\"" (assoc-ref inputs "pcsc-lite")
"/lib/" name "\"")))
+ (substitute* "configure"
+ (("/usr/include/libusb-1.0")
+ (string-append (assoc-ref inputs "libusb")
+ "/include/libusb-1.0")))
#t))
(add-after 'build 'patch-scheme-tests
(lambda _
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply related [flat|nested] 7+ messages in thread
* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
2018-05-01 22:29 bug#31337: Unable to use gnuk usb smartcard token on GuixSD Vagrant Cascadian
@ 2018-05-02 5:57 ` Nils Gillmann
2018-05-07 10:04 ` Ludovic Courtès
2018-05-08 5:53 ` Chris Marusich
2 siblings, 0 replies; 7+ messages in thread
From: Nils Gillmann @ 2018-05-02 5:57 UTC (permalink / raw)
To: Vagrant Cascadian; +Cc: 31337
Vagrant Cascadian transcribed 3.3K bytes:
> I've been unable to use my gnuk usb smartcard token with gnupg on
> GuixSD, and it appears this is because scdaemon is built without libusb
> support:
>
> $ gpg --card-status
> gpg: selecting openpgp failed: No such device
> gpg: OpenPGP card not available: No such device
>
> Attached is a patch that gets scdaemon working for me and a gnuk...
>
> Unfortunately, enabling libusb causes one of the tets to hang
> indefinitely:
>
> PASS: tests/openpgp/decrypt-session-key.scm
> Checking unwrapping the encryption.
> > encsig-2-keys-3 encsig-2-keys-4 <
> PASS: tests/openpgp/decrypt-unwrap-verify.scm
> Checking signing with the default hash algorithm
> >
There should be a test-suite.log in some location in the build chroot,
have you checked that? You might need to build with -K.
> So far, I've only been able to get it to work by disabling the
> tests... so it's obviously not a good idea to enable without further
> troubleshooting.
>
> Another option might be to use pcsc-lite and ccid, but I had even less
> luck getting that to work.
>
>
> live well,
> vagrant
>
>
> diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
> index f397482ab..0e9e72784 100644
> --- a/gnu/packages/gnupg.scm
> +++ b/gnu/packages/gnupg.scm
> @@ -39,6 +39,7 @@
> #:use-module (gnu packages curl)
> #:use-module (gnu packages crypto)
> #:use-module (gnu packages emacs)
> + #:use-module (gnu packages libusb)
> #:use-module (gnu packages openldap)
> #:use-module (gnu packages perl)
> #:use-module (gnu packages perl-check)
> @@ -232,6 +233,7 @@ compatible to GNU Pth.")
> ("libgcrypt" ,libgcrypt)
> ("libgpg-error" ,libgpg-error)
> ("libksba" ,libksba)
> + ("libusb" ,libusb)
> ("npth" ,npth)
> ("openldap" ,openldap)
> ("pcsc-lite" ,pcsc-lite)
> @@ -246,12 +248,17 @@ compatible to GNU Pth.")
> "--enable-all-tests")
> #:phases
> (modify-phases %standard-phases
> + ;; (delete 'check)
> (add-before 'configure 'patch-paths
> (lambda* (#:key inputs #:allow-other-keys)
> (substitute* "scd/scdaemon.c"
> (("\"(libpcsclite\\.so[^\"]*)\"" _ name)
> (string-append "\"" (assoc-ref inputs "pcsc-lite")
> "/lib/" name "\"")))
> + (substitute* "configure"
> + (("/usr/include/libusb-1.0")
> + (string-append (assoc-ref inputs "libusb")
> + "/include/libusb-1.0")))
> #t))
> (add-after 'build 'patch-scheme-tests
> (lambda _
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
2018-05-01 22:29 bug#31337: Unable to use gnuk usb smartcard token on GuixSD Vagrant Cascadian
2018-05-02 5:57 ` Nils Gillmann
@ 2018-05-07 10:04 ` Ludovic Courtès
2018-05-08 5:53 ` Chris Marusich
2 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2018-05-07 10:04 UTC (permalink / raw)
To: Vagrant Cascadian; +Cc: 31337
Hi Vagrant,
Vagrant Cascadian <vagrant@debian.org> skribis:
> I've been unable to use my gnuk usb smartcard token with gnupg on
> GuixSD, and it appears this is because scdaemon is built without libusb
> support:
>
> $ gpg --card-status
> gpg: selecting openpgp failed: No such device
> gpg: OpenPGP card not available: No such device
>
> Attached is a patch that gets scdaemon working for me and a gnuk...
>
> Unfortunately, enabling libusb causes one of the tets to hang
> indefinitely:
>
> PASS: tests/openpgp/decrypt-session-key.scm
> Checking unwrapping the encryption.
> > encsig-2-keys-3 encsig-2-keys-4 <
> PASS: tests/openpgp/decrypt-unwrap-verify.scm
> Checking signing with the default hash algorithm
> >
>
> So far, I've only been able to get it to work by disabling the
> tests... so it's obviously not a good idea to enable without further
> troubleshooting.
Did you try attaching strace or gdb to the faulty test to see what’s
going on?
It may be that this test depends on the availability of special hardware
or something like that, in which case we should arrange to skip just
this test.
Thanks for looking into it!
Ludo’.
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
2018-05-01 22:29 bug#31337: Unable to use gnuk usb smartcard token on GuixSD Vagrant Cascadian
2018-05-02 5:57 ` Nils Gillmann
2018-05-07 10:04 ` Ludovic Courtès
@ 2018-05-08 5:53 ` Chris Marusich
2018-06-02 21:33 ` Vagrant Cascadian
2 siblings, 1 reply; 7+ messages in thread
From: Chris Marusich @ 2018-05-08 5:53 UTC (permalink / raw)
To: Vagrant Cascadian; +Cc: 31337
[-- Attachment #1: Type: text/plain, Size: 336 bytes --]
Vagrant Cascadian <vagrant@debian.org> writes:
> Another option might be to use pcsc-lite and ccid, but I had even less
> luck getting that to work.
When you tried that, did you enable the USB drivers by creating a
symlink as described here?
https://lists.gnu.org/archive/html/guix-devel/2016-10/msg01433.html
--
Chris
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
2018-05-08 5:53 ` Chris Marusich
@ 2018-06-02 21:33 ` Vagrant Cascadian
2021-06-13 8:04 ` Brice Waegeneire
0 siblings, 1 reply; 7+ messages in thread
From: Vagrant Cascadian @ 2018-06-02 21:33 UTC (permalink / raw)
To: Chris Marusich; +Cc: 31337
[-- Attachment #1: Type: text/plain, Size: 1160 bytes --]
On 2018-05-07, Chris Marusich wrote:
> Vagrant Cascadian <vagrant@debian.org> writes:
>
>> Another option might be to use pcsc-lite and ccid, but I had even less
>> luck getting that to work.
>
> When you tried that, did you enable the USB drivers by creating a
> symlink as described here?
>
> https://lists.gnu.org/archive/html/guix-devel/2016-10/msg01433.html
With the symlink:
lrwxrwxrwx 1 root root 41 Jun 2 06:31 /var/lib/pcsc/drivers -> /home/vagrant/.guix-profile/pcsc/drivers/
Then I tried to run:
pcscd --debug --foreground
00000000 pcscdaemon.c:347:main() pcscd set to foreground with debug send to stdout
00000077 pcscdaemon.c:623:main() cannot create /var/run/pcscd: Permission denied
Running as root appears to have worked:
sudo -E --debug --foreground pcscd
Then as a user, "gpg --card-status" works. Haven't tried any other
functionality yet, but that's a good start.
So this seems like a somewhat complicated workaround, and making a
proper pcscd service would reduce the complication significantly. It
would obviously be slightly preferable to me for gnupg to support
smartcards out of the box. :)
live well,
vagrant
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#31337: Unable to use gnuk usb smartcard token on GuixSD
2018-06-02 21:33 ` Vagrant Cascadian
@ 2021-06-13 8:04 ` Brice Waegeneire
2021-07-04 11:01 ` Brice Waegeneire
0 siblings, 1 reply; 7+ messages in thread
From: Brice Waegeneire @ 2021-06-13 8:04 UTC (permalink / raw)
To: Vagrant Cascadian; +Cc: 31337
Hello Vagrant,
Vagrant Cascadian <vagrant@debian.org> writes:
> So this seems like a somewhat complicated workaround, and making a
> proper pcscd service would reduce the complication significantly. It
> would obviously be slightly preferable to me for gnupg to support
> smartcards out of the box. :)
There is a pcscd service in Guix now. Do you still have issue with using
smartcard in Guix or can we close this one?
Cheers,
- Brice
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-07-04 11:02 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-01 22:29 bug#31337: Unable to use gnuk usb smartcard token on GuixSD Vagrant Cascadian
2018-05-02 5:57 ` Nils Gillmann
2018-05-07 10:04 ` Ludovic Courtès
2018-05-08 5:53 ` Chris Marusich
2018-06-02 21:33 ` Vagrant Cascadian
2021-06-13 8:04 ` Brice Waegeneire
2021-07-04 11:01 ` Brice Waegeneire
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.