feat: add yubikey touch detector service

This commit is contained in:
Swarsel 2024-08-11 12:42:11 +02:00
parent da8b2b2de1
commit 4cfdf7e1b2
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
4 changed files with 67 additions and 0 deletions

View file

@ -4906,6 +4906,7 @@ Also, the system state version is set here. No need to touch it.
./gnome-keyring.nix
./sway.nix
./xdg-portal.nix
# ./yubikey-touch-detector.nix
];
nix =
@ -6421,6 +6422,7 @@ This section sets up all the imports that are used in the home-manager section.
./gpg-agent.nix
./gammastep.nix
./safeeyes.nix
./yubikey-touch-detector.nix
];
nix = {
@ -8061,6 +8063,40 @@ A friend of mine used this service and I used to make fun of him. But I have to
}
#+end_src
***** yubikey-touch-detector
#+begin_src nix :tangle profiles/common/home/yubikey-touch-detector.nix
{ pkgs, ... }:
{
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" ];
};
};
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" ];
};
};
}
#+end_src
**** Sway
:PROPERTIES:
:CUSTOM_ID: h:02df9dfc-d1af-4a37-a7a0-d8da0af96a20

View file

@ -30,6 +30,7 @@
./gpg-agent.nix
./gammastep.nix
./safeeyes.nix
./yubikey-touch-detector.nix
];
nix = {

View file

@ -0,0 +1,29 @@
{ pkgs, ... }:
{
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" ];
};
};
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" ];
};
};
}

View file

@ -32,6 +32,7 @@
./gnome-keyring.nix
./sway.nix
./xdg-portal.nix
# ./yubikey-touch-detector.nix
];
nix =