diff --git a/hosts/ni/default.nix b/hosts/ni/default.nix index 1a99c645..f0c0adca 100644 --- a/hosts/ni/default.nix +++ b/hosts/ni/default.nix @@ -32,6 +32,7 @@ networking.wireguard.enable = true; setups.desktop.enable = true; setups.music.enable = true; + setups.gaming.enable = true; }; disko.devices = import ./disko.nix { @@ -72,11 +73,6 @@ virtualization.enable = true; neovim.enable = true; }; - gaming = { - enable = true; - emulators.enable = true; - retro-computing.enable = true; - }; filesystem = { tools.enable = true; setups.personal-webstorage.enable = true; diff --git a/hosts/ni/modules/default.nix b/hosts/ni/modules/default.nix index 0491726d..6e87ede4 100644 --- a/hosts/ni/modules/default.nix +++ b/hosts/ni/modules/default.nix @@ -5,6 +5,7 @@ ./networking/setup.nix ./networking/wireguard.nix ./setups/desktop.nix + ./setups/gaming.nix ./setups/music.nix ]; } diff --git a/hosts/ni/modules/setups/gaming.nix b/hosts/ni/modules/setups/gaming.nix new file mode 100644 index 00000000..6aa80d02 --- /dev/null +++ b/hosts/ni/modules/setups/gaming.nix @@ -0,0 +1,28 @@ +{ config, lib, pkgs, ... }: + +let + hostCfg = config.hosts.ni; + cfg = hostCfg.setups.gaming; +in +{ + options.hosts.ni.setups.gaming.enable = lib.mkEnableOption "gaming setup"; + + config = lib.mkIf cfg.enable { + # Bring all of the goodies. + profiles.gaming = { + enable = true; + emulators.enable = true; + retro-computing.enable = true; + }; + + environment.systemPackages = with pkgs; [ + dwarf-fortress + mindustry + minetest + the-powder-toy + ]; + + # This is somewhat used for streaming games from it. + programs.steam.remotePlay.openFirewall = true; + }; +}