{ pkgs, config, ... }: let usr = if pkgs.stdenv.hostPlatform.isDarwin then "frank" else config.users.users.frank.name; grp = if pkgs.stdenv.hostPlatform.isDarwin then "admin" else config.users.users.frank.group; admgrp = if pkgs.stdenv.hostPlatform.isDarwin then "wheel" else "root"; in { sops = { defaultSopsFile = ../.sops.yaml; age = { sshKeyPaths = [ ]; keyFile = if pkgs.stdenv.isDarwin then "/usr/local/sops/age/keys.txt" else "/persist/sops/age/keys.txt"; }; secrets = { "password_hash" = { sopsFile = ../secrets/password-hash.yaml; owner = "root"; group = admgrp; mode = "0400"; neededForUsers = true; }; "personal_ssh_key_ed25519" = { sopsFile = ../secrets/personal-ssh-key.yaml; key = "personal_ssh_key_ed25519"; owner = usr; group = grp; mode = "0400"; }; "personal_ssh_key_ed25519.pub" = { sopsFile = ../secrets/personal-ssh-key.yaml; key = "personal_ssh_key_ed25519_pub"; owner = usr; group = grp; mode = "0644"; }; "sapphire_ssh_key_ed25519" = { sopsFile = ../secrets/sapphire-ssh-key.yaml; key = "sapphire_ssh_key_ed25519"; owner = usr; group = grp; mode = "0400"; }; "sapphire_ssh_key_ed25519.pub" = { sopsFile = ../secrets/sapphire-ssh-key.yaml; key = "sapphire_ssh_key_ed25519_pub"; owner = usr; group = grp; mode = "0644"; }; "work_ssh_key_rsa" = { sopsFile = ../secrets/work-ssh-key.yaml; key = "work_ssh_key_rsa"; owner = usr; group = grp; mode = "0400"; }; "work_ssh_key_rsa.pub" = { sopsFile = ../secrets/work-ssh-key.yaml; key = "work_ssh_key_rsa_pub"; owner = usr; group = grp; mode = "0644"; }; }; }; environment.systemPackages = with pkgs; [ sops age ]; }