# mikl — пользователь с SSH-доступом через forgejo .keys endpoint # Live-ключи с git.iscg.dev/mikl.keys (sha256-pinned) # Hardcoded fallback для восстановления если forgejo недоступен { pkgs, ... }: let # Live-ключи с forgejo — обновляются автоматически при изменении на forgejo # sha256 защищает от подмены: новое содержимое = явный коммит с новым хэшем forgejoKeys = pkgs.fetchurl { url = "https://git.iscg.dev/mikl.keys"; sha256 = "sha256-4n6QLUPozdhHOmsRCuFn7HR9BU3nF0/GR2E7s5Lpz+Q="; }; in { users.users.mikl = { isNormalUser = true; extraGroups = [ "wheel" ]; uid = 1000; openssh.authorizedKeys.keyFiles = [ forgejoKeys ]; # Hardcoded fallback key — НЕ зависит ни от чего # Вставить сюда свой recovery-ключ когда сгенерируешь (например, YubiKey) # openssh.authorizedKeys = [ # "ssh-ed25519 AAAA... my-recovery-key" # ]; }; }