Update: my librem key 316d:4c4b is not listed in /lib/udev/rules.d/60-scdaemon.rules, as a result, udev would not setup permissions properly for the key.
It is PureOS.
yw662@yw662p:~$ uname -a
Linux yw662p 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5 (2019-06-19) x86_64 GNU/Linux
I can only access my librem key under root/sudo. When trying to access librem key under normal account, gpg says gpg: selecting opengpg failed: no such device.
The librem key is listed in lsusb, so it seems that gpg or scdaemon cannot access the card without sudo.
It does work under root, but I want to use it to sign emails or make ssh logins, so I need it work without root.
I had to add the above udev rule, and then also tell gpg what directory to use as the home directory. Otherwise it would create the sockets in the wrong place and fail with:
gpg: selecting openpgp failed: No such device
gpg: OpenPGP card not available: No such device
I used an env var to tell gpg what to use as its home directory: