Solokey: Difference between revisions

From NixOS Wiki
imported>Papanito
Add inital page for solokey
 
Klinger (talk | contribs)
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This article describes how you can integrate [https://github.com/solokeys Solokeys] with NixOS. For the most part you can follow [https://nixos.wiki/wiki/Yubikey the guide for Yubikey].
This article describes how you can integrate [https://github.com/solokeys Solokeys] with NixOS. For the most part you can follow [[Yubikey | the guide for Yubikey]].


Important, of you want to e.g. upgrade your solokey you also need some [https://docs.solokeys.io/udev/ additonal udev rules]. So the following setup allows you to use your key for sudo as well as you are able to update your solokey
Important, of you want to e.g. upgrade your solokey you also need some [https://docs.solokeys.io/udev/ additonal udev rules]. So the following setup allows you to use your key for sudo as well as you are able to update your solokey
Line 32: Line 32:
   ];
   ];
   }
   }
[[Category:Cookbook]]
[[Category:Security]]
[[Category:Hardware]]

Latest revision as of 19:47, 24 April 2024

This article describes how you can integrate Solokeys with NixOS. For the most part you can follow the guide for Yubikey.

Important, of you want to e.g. upgrade your solokey you also need some additonal udev rules. So the following setup allows you to use your key for sudo as well as you are able to update your solokey

 { config, pkgs, ... }:Italic text
 {
 programs.gnupg.agent = {
     enable = true;
     enableSSHSupport = true;
 };
 security.pam.services = {
     login.u2fAuth = true;
     sudo.u2fAuth = true;
 };
 # https://github.com/solokeys/solo2-cli/blob/main/70-solo2.rules
 services.udev.packages = [
     pkgs.yubikey-personalization
     (pkgs.writeTextFile {
     name = "wally_udev";
     text = 
         # NXP LPC55 ROM bootloader (unmodified)
         SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1fc9", ATTRS{idProduct}=="0021", TAG+="uaccess"
         # NXP LPC55 ROM bootloader (with Solo 2 VID:PID)
         SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="b000", TAG+="uaccess"
         # Solo 2
         SUBSYSTEM=="tty", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="beee", TAG+="uaccess"
         # Solo 2
         SUBSYSTEM=="usb", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="beee", TAG+="uaccess"
     ;
     destination = "/etc/udev/rules.d/70-solo2.rules";
     })
 ];
 }