{ user ? throw "user argument is required", home ? throw "home argument is required", }: { ... }: { home-manager.users.${user} = { sops.secrets = { "git/credentials" = { sopsFile = ../../../../../../../secrets/personal/secrets.yaml; path = "${home}/.config/git/credentials"; }; "git/cookies" = { sopsFile = ../../../../../../../secrets/personal/secrets.yaml; path = "${home}/.config/git/cookies"; }; }; programs.ssh.matchBlocks = { "github.com" = { hostname = "github.com"; user = "git"; identityFile = "${home}/.ssh/ssh_personal_ed25519_key"; }; }; }; }