diff options
| author | Freya Murphy <freya@freyacat.org> | 2026-05-25 16:14:41 -0400 |
|---|---|---|
| committer | Freya Murphy <freya@freyacat.org> | 2026-05-25 16:14:41 -0400 |
| commit | 93ede2beed3258c2bcc02aff591c0a4404294035 (patch) | |
| tree | dce806c52dd3930ccc47b092c928382db0fdcfe7 /system | |
| parent | disable terrible bluetooth feature why does this exist (diff) | |
| download | dotfiles-nix-93ede2beed3258c2bcc02aff591c0a4404294035.tar.gz dotfiles-nix-93ede2beed3258c2bcc02aff591c0a4404294035.tar.bz2 dotfiles-nix-93ede2beed3258c2bcc02aff591c0a4404294035.zip | |
expand gaming module with gamery things
Diffstat (limited to 'system')
| -rw-r--r-- | system/default.nix | 10 | ||||
| -rw-r--r-- | system/desktop.nix | 11 | ||||
| -rw-r--r-- | system/gaming/default.nix | 23 | ||||
| -rw-r--r-- | system/gaming/steam.nix | 1 |
4 files changed, 41 insertions, 4 deletions
diff --git a/system/default.nix b/system/default.nix index 62c8306..4bb2809 100644 --- a/system/default.nix +++ b/system/default.nix @@ -10,6 +10,9 @@ in { imports = [ inputs.home-manager.nixosModules.home-manager + inputs.nix-gaming.nixosModules.platformOptimizations + inputs.nix-gaming.nixosModules.pipewireLowLatency + inputs.nix-gaming.nixosModules.wine ./desktops ./gaming ./virt @@ -51,6 +54,8 @@ in { (_: _: inputs.hyprland.packages.${system}) (_: _: inputs.hyprland-plugins.packages.${system}) (_: _: inputs.hy3.packages.${system}) + # gaming + (_: _: inputs.nix-gaming.packages.${system}) # misc (_: _: inputs.talc.packages.${system}) (_: _: inputs.apple-fonts.packages.${system}) @@ -130,7 +135,10 @@ in { }; # use the latest kernel - boot.kernelPackages = pkgs.linuxPackages_latest; + boot.kernelPackages = + if config.gaming.enable + then pkgs.linuxPackages_xanmod_latest + else pkgs.linuxPackages_latest; # sysrq boot.kernel.sysctl."kernel.sysrq" = 246; diff --git a/system/desktop.nix b/system/desktop.nix index 0c26fa6..aec5ba8 100644 --- a/system/desktop.nix +++ b/system/desktop.nix @@ -27,12 +27,14 @@ in { # gtk portal? programs.dconf.enable = true; - # audio / video + # audio services.pipewire = { enable = true; alsa.enable = true; + alsa.support32Bit = config.gaming.enable; pulse.enable = true; jack.enable = true; + lowLatency.enable = config.gaming.enable; wireplumber = { enable = true; extraConfig = { @@ -44,8 +46,13 @@ in { }; }; }; - hardware.graphics.enable = true; users.groups.audio.members = [config.user]; + + # video + hardware.graphics = { + enable = true; + enable32Bit = config.gaming.enable; + }; users.groups.video.members = [config.user]; # scheduling diff --git a/system/gaming/default.nix b/system/gaming/default.nix index 734ece0..ac04c6f 100644 --- a/system/gaming/default.nix +++ b/system/gaming/default.nix @@ -1,5 +1,26 @@ -_: { +{ + config, + lib, + pkgs, + ... +}: let + inherit (lib) mkIf; + cfg = config.gaming; +in { imports = [ ./steam.nix ]; + + config = mkIf cfg.enable { + programs.wine = { + enable = true; + package = pkgs.wineWow64Packages.staging; + binfmt = true; + ntsync = true; + }; + + environment.systemPackages = with pkgs; [ + winetricks + ]; + }; } diff --git a/system/gaming/steam.nix b/system/gaming/steam.nix index df65632..dd4fc50 100644 --- a/system/gaming/steam.nix +++ b/system/gaming/steam.nix @@ -26,6 +26,7 @@ in { dedicatedServer.openFirewall = true; localNetworkGameTransfers.openFirewall = true; gamescopeSession.enable = true; + platformOptimizations.enable = config.gaming.enable; # Fix new steam controller extest.enable = true; |