Hi! My normal user can’t access the Nitrokey. At least I assume that’s the problem.
This is my setup: Windows 10 host and running NixOS in WSL2, using usbipd to share the USB device from the Windows host to the Linux guest. udev rules (libnitrokey) are installed. So far I think this works, because lsusb
shows the device:
Bus 001 Device 003: ID 20a0:4109 Clay Logic Nitrokey Storage
gpg --card-status
shows:
gpg: selecting card failed: No such device
gpg: OpenPGP Karte ist nicht vorhanden: No such device
And journalctl --user -u gpg-agent
shows:
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK Pleased to meet you, process 6648
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- RESET
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION ttyname=/dev/pts/2
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION ttytype=xterm-256color
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION display=:0
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION putenv=WAYLAND_DISPLAY=wayland-0
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION putenv=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION lc-ctype=de_DE.UTF-8
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION lc-messages=de_DE.UTF-8
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- GETINFO version
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> D 2.4.1
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION allow-pinentry-notify
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- OPTION agent-awareness=2.1.0
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- SCD GETINFO version
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: no running /nix/store/wd3xl6h29kjr9ng2kl0yf3mh7ciw3pri-gnupg-2.4.1/libexec/scdaemon daemon - starting it
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- OK GNU Privacy Guard's Smartcard server ready
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: first connection to daemon /nix/store/wd3xl6h29kjr9ng2kl0yf3mh7ciw3pri-gnupg-2.4.1/libexec/scdaemon established
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 -> GETINFO socket_name
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- D /run/user/1000/gnupg/S.scdaemon
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: additional connections at '/run/user/1000/gnupg/S.scdaemon'
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 -> OPTION event-signal=12
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 -> GETINFO version
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- D 2.4.1
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> D 2.4.1
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> OK
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- SCD SERIALNO
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 -> SERIALNO
Nov 10 15:21:13 nixos-wsl gpg-agent[6651]: scdaemon[6651]: ccid open error: skip
Nov 10 15:21:13 nixos-wsl gpg-agent[6651]: scdaemon[6651]: check permission of USB device at Bus 001 Device 003
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- ERR 100696144 No such device <SCD>
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 -> ERR 100696144 No such device <SCD>
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_7 <- [eof]
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 -> RESTART
Nov 10 15:21:13 nixos-wsl gpg-agent[6649]: DBG: chan_8 <- OK
note the following lines:
scdaemon[6651]: ccid open error: skip
scdaemon[6651]: check permission of USB device at Bus 001 Device 003
DBG: chan_8 <- ERR 100696144 No such device <SCD>
DBG: chan_7 -> ERR 100696144 No such device <SCD>
And also the wayland display and pinentry look wrong. Because I don’t have a graphical interface enabled in WSL. Might be possible that I will have problems with pinentry, but I can figure that out on my own. First of all I need to be able to successfully run gpg --card-status
…
In a root shell, gpg --card-status
works. There I don’t have gpg-agent or anything else configured.
Please help