On 2022-10-11 11:48, Christopher Baines wrote:
For piv-go, in their README:
To build on Linux, piv-go requires PCSC lite. To install on Debian-based distros, run:
sudo apt-get install libpcsclite-dev
==> So probably no need to propagate here.
----
For yubikey-agent:
The package relies on pcscd (daemon) to run on linux, which is already
available in guix. Maybe it's better to say that in the README ? Instead
of the package, what it needs is actually the service.
I've also written some tested lines for a yubikey-agent
configuration/feature (as done in the RDE project) shepherd service,
although as it is really tiny, I didn't know if I should've contributed
this.
It looks like that, and did work (it also depends on the acceptance of
(define* (feature-yubikey-agent
#:key
(yubikey-agent yubikey-agent))
"Configure Yubikey-Agent."
(ensure-pred file-like? yubikey-agent)
(define (get-system-services _)
(list
(service pcscd-service-type)
(udev-rules-service
'yubikey
(file->udev-rule
"70-u2f.rules"
(file-append libfido2 "/udev/rules.d/70-u2f.rules")))))
;; (define (get-home-services config)
;; (list
;; ;; MAYBE: It should be installed system-wide?
;; (simple-service
;; 'yubikey-agent-add-yubikey-agent-package
;; home-profile-service-type
;; (list yubikey-agent))
;; (simple-service
;; 'start-yubikey-agent-at-startup
;; home-shepherd-service-type
;; (list (shepherd-service
;; (documentation "Run the yubikey-agent.")
;; (provision '(yubikey-agent))
;; (requirement '())
;; (start #~(make-forkexec-constructor
;; (list (string-append
;; #$yubikey-agent "/bin/yubikey-agent")
;; "-l" "/tmp/yubikey-agent.sock")))
;; (stop #~(make-kill-destructor)))))))
(feature
(name 'yubikey-agent)
(values `((yubikey-agent . ,yubikey-agent)))
(system-services-getter get-system-services)
;; (home-services-getter get-home-services)
))
I'm not sure what would be the guideline here regarding doing or
avoiding propagations. WDYT? (I'm sending a V2 once I have a clearer
idea of what makes sense).
---
From the package README:
```
cd yubikey-agent && makepkg -si
systemctl daemon-reload --user
sudo systemctl enable --now pcscd.socket
systemctl --user enable --now yubikey-agent
export SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}/yubikey-agent/yubikey-agent.sock"
```
--
Best regards,
Nicolas Graves