diff --git a/provision/hosts.json b/provision/hosts.json index 496ba928..e26f8eb5 100644 --- a/provision/hosts.json +++ b/provision/hosts.json @@ -22,5 +22,9 @@ "wsl": { "role": "wsl", "user": "user" + }, + "htpc-bako": { + "role": "htpc", + "user": "starr" } } diff --git a/provision/hosts/htpc/configuration.nix b/provision/hosts/htpc/configuration.nix new file mode 100644 index 00000000..e0ff1614 --- /dev/null +++ b/provision/hosts/htpc/configuration.nix @@ -0,0 +1,26 @@ +{ config, pkgs, user, lib, hostname, ... }: +{ + # Use performance governor for sweet gaming performance! + powerManagement.cpuFreqGovernor = "performance"; + + # Set networking options + networking.hostName = "${hostname}"; + networking.firewall.checkReversePath = "loose"; + networking.firewall.enable = false; + + # Modules + modules = { + desktop = { + enable = true; + gnome.enable = true; + }; + programs = { + chezmoi.apply = true; + kitty.enable = true; + }; + services = { + samba-client.enable = true; + ssh.enable = true; + }; + }; +} diff --git a/provision/hosts/htpc/default.nix b/provision/hosts/htpc/default.nix new file mode 100644 index 00000000..29312e91 --- /dev/null +++ b/provision/hosts/htpc/default.nix @@ -0,0 +1,21 @@ +{ lib, specialArgs, system, inputs, agenix, home-manager, ... }: +let + user = specialArgs.user; + hostname = specialArgs.hostname; +in { + inherit system; + specialArgs = { inherit user hostname inputs home-manager; }; + modules = [ + ../default # shared by all configs + ../default/physical/configuration.nix # shared by physical machines + ./configuration.nix # htpc specific + ../../modules + /etc/nixos/hardware-configuration.nix + agenix.nixosModules.default + home-manager.nixosModules.home-manager { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.extraSpecialArgs = { inherit user; }; + } + ]; +}