artemis.nix (2156B)
1 # Server 2 { 3 config, 4 pkgs, 5 machine, 6 username, 7 email, 8 fullname, 9 domain, 10 sshkey, 11 sshport, 12 timezone, 13 htpasswd, 14 todosecret, 15 vpnusername, 16 vpnpassword, 17 privatekey, 18 ... 19 }: let 20 home-manager = builtins.fetchTarball https://github.com/nix-community/home-manager/archive/release-25.05.tar.gz; # Stable 21 # home-manager = builtins.fetchTarball https://github.com/nix-community/home-manager/archive/master.tar.gz; # Unstable 22 in { 23 # Core OS imports 24 imports = 25 [ 26 ./${machine}-hardware.nix # Include the results of the hardware scan. 27 (import "${home-manager}/nixos") # Home-Manager 28 (import ../common/blog-duolingo.nix {inherit pkgs domain username;}) 29 (import ../common/blog-status.nix {inherit pkgs domain username;}) 30 (import ../common/docker.nix {inherit config pkgs username domain timezone htpasswd todosecret vpnusername vpnpassword;}) 31 ../common/flakes.nix 32 ../common/garbage.nix 33 (import ../common/locale.nix {inherit pkgs timezone;}) 34 (import ../common/magnets.nix {inherit pkgs username;}) 35 ../common/mount-drives.nix 36 ../common/packages.nix 37 (import ../common/restic.nix {inherit pkgs username;}) 38 (import ../common/ssh.nix {inherit username sshkey sshport;}) 39 (import ../common/syncthing.nix {inherit config pkgs username;}) 40 (import ../common/user.nix {inherit config pkgs username fullname;}) 41 ../common/vnstat.nix 42 (import ../common/stagit-generate.nix {inherit pkgs username;}) 43 ]; 44 45 # Home-Manager 46 home-manager.backupFileExtension = "hm-bak"; 47 home-manager.users.${username} = {pkgs, ...}: { 48 imports = [ 49 (import ../home/fish.nix {inherit pkgs domain;}) 50 (import ../home/git.nix {inherit fullname email;}) 51 ../home/htop.nix 52 ../home/neovim.nix 53 (import ../home/rbw.nix {inherit pkgs domain email;}) 54 (import ../home/rclone.nix {inherit domain username sshport privatekey;}) 55 (import ../home/ssh.nix {inherit domain username sshport privatekey;}) 56 ]; 57 home.stateVersion = "25.05"; 58 }; 59 60 networking.hostName = "artemis"; # Define your hostname. 61 62 system.stateVersion = "25.05"; # Did you read the comment? 63 64 }