NixOSConfig/lib/users/manuel.nix

70 lines
1.7 KiB
Nix
Raw Normal View History

2024-05-20 22:54:43 +00:00
{ config, user, ... }: {
imports = [
./common.nix
2024-05-16 00:24:25 +00:00
../modules/rclone.nix
];
2024-05-09 00:07:05 +00:00
config = {
home.stateVersion = "23.11";
2024-05-20 22:54:43 +00:00
sops = {
age.sshKeyPaths = [
"${config.home.homeDirectory}/.ssh/id_ed25519"
];
2024-05-16 00:24:25 +00:00
2024-05-18 23:16:07 +00:00
defaultSopsFile = ../../secrets/manuel/secrets.yaml;
secrets = {
nextcloud_password = {};
proton_password = { };
proton_2fa = { };
proton_uid = { };
proton_access_token = { };
proton_refresh_token = { };
proton_salted_key_pass = { };
};
2024-05-20 22:54:43 +00:00
};
programs = {
home-manager.enable = true;
2024-05-16 00:24:25 +00:00
rclone = {
enable = true;
systemdDependencies = {
secrets = [
"sops-nix.service"
];
};
configs = {
nextcloud.nextcloud = {
baseUrl = "https://cloud.nuth.ch";
username = "manuth";
obscuredPasswordFile = config.sops.secrets.nextcloud_password.path;
2024-05-18 23:16:07 +00:00
vfs = {
enable = true;
};
2024-05-16 00:24:25 +00:00
};
2024-05-18 23:16:07 +00:00
proton.Proton =
let
inherit (config.sops) secrets;
in {
username = "m@nuth.ch";
obscuredPasswordFile = secrets.proton_password.path;
webAuthnTokenFile = secrets.proton_2fa.path;
clientIDFile = secrets.proton_uid.path;
accessTokenFile = secrets.proton_access_token.path;
refreshTokenFile = secrets.proton_refresh_token.path;
saltedKeyPassFile = secrets.proton_salted_key_pass.path;
};
2024-05-16 00:24:25 +00:00
};
};
git = {
enable = true;
userName = user.fullName;
userEmail = user.mail;
};
2024-05-09 00:07:05 +00:00
};
};
}