artemis.nix (2100B)
1 # Server 2 3 { config, pkgs, lib, fullname, username, domain, email, sshkey, sshport, timezone, postcode, address, htpasswd, vpnusername, vpnpassword, todosecret, privatekey, matrixuser, matrixserver, ... }: 4 5 let machine = "artemis"; in { 6 7 imports = [ 8 (import ../common/variables.nix { inherit machine fullname username domain email sshkey sshport timezone postcode address htpasswd vpnusername vpnpassword todosecret privatekey matrixuser matrixserver; }) 9 (import ../common/home-manager.nix { inherit machine fullname username domain email sshkey sshport timezone postcode address htpasswd vpnusername vpnpassword todosecret privatekey matrixuser matrixserver; }) 10 ../common/docker.nix 11 ../common/flakes.nix 12 ../common/garbage.nix 13 ../common/locale.nix 14 ../common/mount-drives.nix 15 ../common/networking.nix 16 ../common/packages.nix 17 ../common/ssh.nix 18 ../common/syncthing.nix 19 ../common/user.nix 20 ../common/vnstat.nix 21 ../scripts/blog-duolingo.nix 22 ../scripts/blog-status.nix 23 ../scripts/magnets.nix 24 ../scripts/restic.nix 25 ../scripts/stagit-generate.nix 26 ]; 27 home-manager.users.${username} = {pkgs, ...}: { imports = [ 28 ../home/fish.nix 29 ../home/git.nix 30 ../home/htop.nix 31 ../home/neovim.nix 32 ../home/rbw.nix 33 ../home/rclone.nix 34 ../home/ssh.nix 35 ../home/yt-dlp.nix 36 ]; 37 home.stateVersion = "25.05"; 38 }; 39 40 # Hardware and system 41 boot = { 42 initrd = { availableKernelModules = [ "xhci_pci" "virtio_pci" "virtio_scsi" "usbhid" ]; }; 43 loader = { 44 systemd-boot.enable = true; 45 efi.canTouchEfiVariables = true; 46 }; 47 }; 48 nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; 49 50 # Cron jobs 51 services.cron = { 52 enable = true; 53 systemCronJobs = [ 54 "*/10 * * * * ${username} blog-status" 55 "*/10 * * * * ${username} magnets" 56 "*/10 * * * * ${username} stagit-generate" 57 "55 23 * * SUN ${username} blog-duolingo" 58 "0 */12 * * * ${username} backup-cloud" 59 ]; 60 }; 61 62 system.stateVersion = "25.05"; # Did you read the comment? 63 64 }