diff --git a/nixos/ringtail/configuration.nix b/nixos/ringtail/configuration.nix index 7d948a2..8bb2d8d 100644 --- a/nixos/ringtail/configuration.nix +++ b/nixos/ringtail/configuration.nix @@ -113,12 +113,6 @@ in polkitPolicyOwners = [ "eblume" ]; }; - # Steam - programs.steam = { - enable = true; - dedicatedServer.openFirewall = true; - }; - # K3s single-node cluster services.k3s = { enable = true; diff --git a/nixos/ringtail/flake.nix b/nixos/ringtail/flake.nix index 188b707..541bafa 100644 --- a/nixos/ringtail/flake.nix +++ b/nixos/ringtail/flake.nix @@ -28,6 +28,7 @@ ./disk-config.nix ./hardware-configuration.nix ./configuration.nix + ./gaming.nix # Pin versioned services to nixpkgs-services instead of the rolling nixpkgs. # This prevents `nix flake update nixpkgs` from silently upgrading them. # Bump nixpkgs-services explicitly during service reviews. diff --git a/nixos/ringtail/gaming.nix b/nixos/ringtail/gaming.nix new file mode 100644 index 0000000..2b361b3 --- /dev/null +++ b/nixos/ringtail/gaming.nix @@ -0,0 +1,16 @@ +{ pkgs, ... }: + +{ + # Steam + programs.steam = { + enable = true; + dedicatedServer.openFirewall = true; + }; + + # Gamescope — micro-compositor for game fullscreen/resolution management. + # Use as Steam launch option: gamescope -W 2560 -H 1440 -f -- %command% + programs.gamescope = { + enable = true; + capSysNice = true; # Allow gamescope to set realtime scheduling + }; +}