3JJNSJEGODVFHBIC2AOLOB3JZSFPPQBENWFLKHTSOGH7YGVW6GTQC CEOUX7SJMJXGN4SC6UZ3DN72RBPLEZVCHOL3TI6LZSEC5J2P57BAC 5UP7XCUKX3WWRV6QSJ45TGTQ5PLT6Y76SKTSKVXUMSZSK3RXQEKQC GGOPOZP7GTPGU5HMR6ACGRYXTCXWN7GZD5WFG4DSZTOLNTABWYNQC HWCVAVGHMRTGNMV7WXWM6XB6KMMZQCMZQXWHQV4MPKXZOCAOGXKAC RTBMBSBABSGTRICJ4AWBKWO3JJHBRKV6FGOMYPDD7X6SS6X35ZIQC E5WANV7PYNPZFSJE4AMZABQ76TUNKVZN3M6ZFD5V6CKAFKG444NAC KOXYNEPMHOWPUOUDAIDAVC2ZPUCLFGN23BM6QJ4UIDGVN73SUO7AC UH6ZL2HFCGZTK5LBAIWXYWP7F7ZO5ZY3OLHVCY6DOCDSH6ATSILQC DSTJZR46W6HWZSHMT3B33WRSTJZ5BUICMJYHYG4BLMEZKG2HHAKQC 4R56PJDQPYZ5FLFAMZSNY7UI5TKF6N5YCHCJU3ZBV5FHB46GYM5QC XPKDQGFUFF4BT32ODPEJRZGBEOGZVDRAEN2EOWU7DBIN2QQX6KUAC LYEDM2AG74FSFHLK5J4ZPYJVT2VTQBKA6BPP2W6LWR3GBQM76PDAC { config, lib, ... }: letinherit (lib) enabled mkIf types;in {options.openssh = {enable = lib.mkEnableOption "openssh";idFile = lib.mkOption {type = types.path;example = "/run/agenix/id";description = "Path to the secret SSH id file";};};config = mkIf config.openssh.enable {age.secrets.id.rekeyFile = config.openssh.idFile;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};};};}
{ self, config, lib, ... }: letinherit (lib) mkIf types;in {options.age-rekey = {enable = lib.mkEnableOption "age-rekey";hostPubkey = lib.mkOption {type = types.str;example = "ssh-ed25519 ...";description = "Host public key for rekeying";};};config = mkIf config.age-rekey.enable {age.rekey = {hostPubkey = config.age-rekey.hostPubkey;masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";};};}
age.rekey = {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFDLlddona4PlORWd+QpR/7F5H46/Dic9vV23/YSrZl0 root@yuzu";masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";
age-rekey = enabled {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFDLlddona4PlORWd+QpR/7F5H46/Dic9vV23/YSrZl0 root@yuzu";
age.secrets.id.rekeyFile = self + /secrets/yuzu-id.age;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};
openssh = enabled {idFile = self + /secrets/yuzu-id.age;
age.rekey = {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBH1S3dhOYCCltqrseHc3YZFHc9XU90PsvDo7frzUGrr root@plum";masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";
age-rekey = enabled {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBH1S3dhOYCCltqrseHc3YZFHc9XU90PsvDo7frzUGrr root@plum";
age.secrets.id.rekeyFile = self + /secrets/plum-id.age;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};
openssh = enabled {idFile = self + /secrets/plum-id.age;
age.rekey = {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL2/Pg/5ohT3Dacnzjw9pvkeoQ1hEFwG5l1vRkr3v2sQ root@pear";masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";
age-rekey = enabled {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL2/Pg/5ohT3Dacnzjw9pvkeoQ1hEFwG5l1vRkr3v2sQ root@pear";
age.secrets.id.rekeyFile = self + /secrets/pear-id.age;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};
openssh = enabled {idFile = self + /secrets/pear-id.age;
age.rekey = {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIElcSHxI64xqUUKEY83tKyzEH+fYT5JCWn3qCqtw16af root@kiwi";masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";
age-rekey = enabled {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIElcSHxI64xqUUKEY83tKyzEH+fYT5JCWn3qCqtw16af root@kiwi";
age.secrets.id.rekeyFile = self + /secrets/kiwi-id.age;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};
openssh = enabled {idFile = self + /secrets/kiwi-id.age;
age.rekey = {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEzfoVKZDyiyyMiX1JRFaaTELspG25MlLNq0kI2AANTa root@date";masterIdentities = [ (self + /yubikey.pub) ];localStorageDir = self + "/secrets/rekeyed/${config.networking.hostName}";storageMode = "local";
age-rekey = enabled {hostPubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEzfoVKZDyiyyMiX1JRFaaTELspG25MlLNq0kI2AANTa root@date";
age.secrets.id.rekeyFile = self + /secrets/date-id.age;services.openssh = enabled {hostKeys = [{type = "ed25519";path = config.age.secrets.id.path;}];settings = {PasswordAuthentication = false;KbdInteractiveAuthentication = false;AcceptEnv = [ "SHELLS" "COLORTERM" ];};
openssh = enabled {idFile = self + /secrets/date-id.age;