+ users.users.backup = {
+ home = "/var/lib/backup";
+ createHome = true;
+ hashedPassword = "!";
+ isSystemUser = true;
+ shell = pkgs.bashInteractive;
+ openssh.authorizedKeys.keys = let
+ in
+ ["command=\"${pkgs.rrsync_sudo}/bin/rrsync /var/lib/backup/eldiron/\" ${config.myEnv.rsync_backup.ssh_key.public}"];
+ };
+ security.sudo.extraRules = pkgs.lib.mkAfter [
+ {
+ commands = [
+ { command = "${pkgs.rsync}/bin/rsync"; options = [ "NOPASSWD" ]; }
+ ];
+ users = [ "backup" ];
+ runAs = "root";
+ }
+ {
+ commands = [
+ { command = "/home/immae/.nix-profile/root_scripts/*"; options = [ "NOPASSWD" ]; }
+ ];
+ users = [ "immae" ];
+ runAs = "root";
+ }
+ ];
+
+ boot.kernel.sysctl."vm.nr_hugepages" = 256; # for xmr-stak
+ system.activationScripts.backup_home = ''
+ chown root:root /var/lib/backup
+ install -m 0750 -o backup -g root -d /var/lib/backup/eldiron
+ '';
+
+ virtualisation.docker.enable = true;
+ virtualisation.libvirtd.enable = true;
+ users.extraUsers.immae.extraGroups = [ "libvirtd" "docker" ];
+ systemd.services.libvirtd.postStart = ''
+ install -m 0770 -g libvirtd -d /var/lib/libvirt/images
+ '';
+