diff options
author | Franck Cuny <franck@fcuny.net> | 2023-03-12 18:38:54 -0700 |
---|---|---|
committer | Franck Cuny <franck@fcuny.net> | 2023-03-12 18:38:54 -0700 |
commit | d6a1385cfd91a51868dfada051b019aafd2efa94 (patch) | |
tree | d663802dc2033591f278d69679205e5473930bc7 | |
parent | home/secrets: delete the one for gcloud (diff) | |
download | world-d6a1385cfd91a51868dfada051b019aafd2efa94.tar.gz |
home/yubikey: install (and run) yubikey-touch-detector
This is a useful tool to know when I'm supposed to touch my yubikey (sometimes I forget that some actions require that). Also configure a systemd unit to run it, and configure it to send a notification to the desktop (at the moment this is consumed by mako).
-rw-r--r-- | home/yubikey/default.nix | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/home/yubikey/default.nix b/home/yubikey/default.nix index 640ed09..d4b73d5 100644 --- a/home/yubikey/default.nix +++ b/home/yubikey/default.nix @@ -7,6 +7,30 @@ in }; config = lib.mkIf cfg.enable { - home.packages = with pkgs; [ yubikey-manager ]; + home.packages = with pkgs; [ yubikey-manager yubikey-touch-detector ]; + + systemd.user.sockets.yubikey-touch-detector = { + Unit.Description = "Unix socket activation for YubiKey touch detector service"; + Socket = { + ListenStream = "%t/yubikey-touch-detector.socket"; + RemoveOnStop = true; + }; + Install.WantedBy = [ "sockets.target" ]; + }; + + systemd.user.services.yubikey-touch-detector = { + Unit = { + Description = "Detects when your YubiKey is waiting for a touch"; + Requires = "yubikey-touch-detector.socket"; + }; + Service = { + ExecStart = "${pkgs.yubikey-touch-detector}/bin/yubikey-touch-detector --libnotify"; + EnvironmentFile = "-%E/yubikey-touch-detector/service.conf"; + }; + Install = { + Also = "yubikey-touch-detector.socket"; + WantedBy = [ "default.target" ]; + }; + }; }; } |