nix-conf/modules/nixos/gaming.nix

43 lines
985 B
Nix
Raw Normal View History

{
config,
pkgs,
lib,
...
}: {
# Getting gaming setup
options = {
crony.gaming.enable = lib.mkEnableOption "enable gaming related stuff, like steam and gamemode";
};
config = lib.mkIf config.crony.gaming.enable {
2025-02-01 23:18:41 +01:00
# Install steam
programs.steam.enable = true;
2025-02-01 23:18:41 +01:00
# Enable gamescope
programs.steam.gamescopeSession.enable = true;
2025-02-01 23:18:41 +01:00
# Install gamemode
programs.gamemode = {
enable = true;
enableRenice = true;
settings = {
general = {
softrealtime = "on";
renice = 10;
};
custom = {
start = "${pkgs.libnotify}/bin/notify-send 'GameMode started'";
end = "${pkgs.libnotify}/bin/notify-send 'GameMode ended'";
};
};
};
2025-02-01 23:18:41 +01:00
# Setup esync
systemd.extraConfig = "DefaultLimitNOFILE=1048576";
security.pam.loginLimits = [
{
domain = "*";
type = "hard";
item = "nofile";
value = "1048576";
}
];
};
}