liminalOS/modules/linux/gaming/default.nix

56 lines
1.2 KiB
Nix
Raw Normal View History

2024-09-02 18:16:22 -07:00
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
ryujinx
mangohud
mangojuice
];
programs.steam = {
enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
localNetworkGameTransfers.openFirewall = true;
gamescopeSession.enable = true;
};
programs.gamescope.enable = true;
programs.gamemode = {
enable = true;
enableRenice = true;
settings = {
general = {
renice = 10;
};
custom = {
start = "${pkgs.libnotify}/bin/notify-send 'GameMode engaged'";
end = "${pkgs.libnotify}/bin/notify-send 'GameMode disengaged'";
};
};
};
users.users.youwen.extraGroups = [ "gamemode" ];
nixpkgs.config.packageOverrides = pkgs: {
steam = pkgs.steam.override {
2024-09-02 18:16:22 -07:00
extraPkgs =
pkgs: with pkgs; [
xorg.libXcursor
xorg.libXi
xorg.libXinerama
xorg.libXScrnSaver
libpng
libpulseaudio
libvorbis
stdenv.cc.cc.lib
libkrb5
(writeShellScriptBin "launch-gamescope" ''
(sleep 1; pgrep gamescope| xargs renice -n -11 -p)&
exec gamescope "$@"
'')
keyutils
];
};
};
}