{ lib, config, adminUser, ... }: { imports = [ ../../../profiles/authelia.nix ../../../profiles/cgroups.nix ../../../profiles/defaults.nix ../../../profiles/disk/btrfs-on-luks.nix ../../../profiles/git-server.nix ../../../profiles/hardware/framework-desktop.nix ../../../profiles/home-manager.nix ../../../profiles/makemkv.nix ../../../profiles/miniflux.nix ../../../profiles/remote-unlock.nix ../../../profiles/restic-backup.nix ../../../profiles/server.nix ../../../profiles/wireguard.nix ]; networking.hostName = "rivendell"; networking.networkmanager.enable = true; networking.useDHCP = lib.mkDefault true; systemd.network.wait-online.anyInterface = lib.mkDefault config.networking.useDHCP; users.users.builder = { openssh.authorizedKeys.keys = [ # my personal key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINBkozy+X96u5ciX766bJ/AyQ3xm1tXZTIr5+4PVFZFi" # remote builder ssh key "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGFGxdplt9WwGjdhoYkmPe2opZMJShtpqnGCI+swrgvw" ]; isNormalUser = true; group = "nogroup"; }; nix.settings.trusted-users = [ "builder" ]; services.website = { enable = true; openFirewall = true; }; services.restic.backups.local.paths = [ "/var/lib/gitolite/repositories" ]; services.restic.backups.synology.paths = [ "/data/archives" "/data/media" "/var/lib/gitolite/repositories" ]; services.samba = { enable = true; openFirewall = true; settings = { global = { security = "user"; workgroup = "WORKGROUP"; "server string" = config.networking.hostName; "netbios name" = config.networking.hostName; "hosts allow" = "192.168.1.0/24 10.100.0.0/24 localhost"; "guest account" = "nobody"; "map to guest" = "bad user"; "use sendfile" = "yes"; "load printers" = "no"; "vfs objects" = "catia fruit streams_xattr"; "fruit:metadata" = "stream"; }; media = { path = "/data/media"; browseable = "yes"; "read only" = "yes"; "guest ok" = "yes"; }; }; }; services.avahi = { enable = true; nssmdns4 = true; openFirewall = true; }; home-manager = { users.${adminUser.name} = { imports = [ ../../../home/profiles/minimal.nix ]; inherit (adminUser) userinfo; }; }; system.stateVersion = "23.11"; # Did you read the comment? }