This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

ignavia: phonetpm daemon (5pkgs.phonetpm, 2configs/phonetpm)

+65
+29
2configs/phonetpm.nix
··· 1 + { 2 + pkgs, 3 + self, 4 + ... 5 + }: 6 + let 7 + phonetpm = self.packages.${pkgs.system}.phonetpm; 8 + in 9 + { 10 + # Phone-backed ssh-agent / age plugin (https://github.com/Lassulus/phonetpm). 11 + # The daemon serves %t/phonetpm/{agent,control}.sock; age-plugin-phone finds 12 + # the control socket on its own. SSH_AUTH_SOCK is intentionally left on the 13 + # TPM agent for now (2configs/tpm2.nix). 14 + environment.systemPackages = [ phonetpm ]; 15 + 16 + systemd.user.services.phonetpm = { 17 + description = "phonetpm daemon (phone as ssh-agent / age backend)"; 18 + wantedBy = [ "default.target" ]; 19 + after = [ "network-online.target" ]; 20 + # Skipped until `phonetpm pair <endpoint id>` has written the config; 21 + # `systemctl --user start phonetpm` afterwards. 22 + unitConfig.ConditionPathExists = "%E/phonetpm/config.toml"; 23 + serviceConfig = { 24 + ExecStart = "${phonetpm}/bin/phonetpm daemon"; 25 + Restart = "on-failure"; 26 + RestartSec = 5; 27 + }; 28 + }; 29 + }
+35
5pkgs/phonetpm/package.nix
··· 1 + { 2 + lib, 3 + rustPlatform, 4 + fetchFromGitHub, 5 + }: 6 + 7 + rustPlatform.buildRustPackage rec { 8 + pname = "phonetpm"; 9 + version = "0.1.0"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "Lassulus"; 13 + repo = "phonetpm"; 14 + tag = "v${version}"; 15 + hash = "sha256-8WjjbDDHZeYhtnoj/judDrsWT68Z4lnpySM8rSqP+Ao="; 16 + }; 17 + 18 + cargoHash = "sha256-VNw5Hw8E0ReSJhYVLh6XOzQRSyqfFe3uu0522XOeaoA="; 19 + 20 + # Host side only: `phonetpm` (daemon/pair/keys) and `age-plugin-phone`. 21 + # The workspace also holds the Android core (uniffi cdylib), not needed here. 22 + cargoBuildFlags = [ 23 + "-p" 24 + "phonetpm" 25 + ]; 26 + cargoTestFlags = cargoBuildFlags; 27 + 28 + meta = { 29 + description = "Android phone as a biometric ssh-agent and age backend over iroh"; 30 + homepage = "https://github.com/Lassulus/phonetpm"; 31 + license = lib.licenses.mit; 32 + mainProgram = "phonetpm"; 33 + platforms = lib.platforms.linux; 34 + }; 35 + }
+1
machines/ignavia/config.nix
··· 10 10 ../../2configs 11 11 ../../2configs/retiolum.nix 12 12 ../../2configs/tpm2.nix 13 + ../../2configs/phonetpm.nix 13 14 # ../../2configs/baseX.nix 14 15 ../../2configs/desktops/sway/default.nix 15 16 self.wrapperModules.workspace-manager