NixOS/modules/apps/gaming.nix

53 lines
1.4 KiB
Nix

{
config,
lib,
pkgs,
inputs,
...
}:
{
imports = [ inputs.nix-gaming.nixosModules.platformOptimizations ];
options.my.apps.gaming.enable = lib.mkEnableOption "enable";
config = lib.mkIf config.my.apps.gaming.enable {
programs = {
gamemode.enable = true;
steam = {
enable = true;
gamescopeSession.enable = true;
remotePlay.openFirewall = true;
dedicatedServer.openFirewall = true;
platformOptimizations.enable = true;
};
};
users.users.jawz.packages =
builtins.attrValues {
inherit (pkgs)
shipwright # zelda OoT port
mangohud # fps & stats overlay
lutris # games launcher & emulator hub
cartridges # games launcher
gamemode # optimizes linux to have better gaming performance
heroic # install epic games
protonup-qt # update proton-ge
ns-usbloader # load games into my switch
# emulators
rpcs3 # ps3
pcsx2 # ps2
cemu # wii u
dolphin-emu # wii
snes9x-gtk # snes
ryujinx # switch
;
}
++ [
# minecraft launcher
(pkgs.callPackage ../../pkgs/polymc/default.nix { })
# Super Mario 127
(pkgs.callPackage ../../pkgs/super-mario-127/default.nix { })
# 3Ds emulator
(pkgs.callPackage ../../pkgs/citra/default.nix { branch = "nightly"; })
];
};
}