nixos-config/modules/programs/gaming/default.nix

60 lines
1.3 KiB
Nix
Raw Normal View History

{ config, lib, pkgs, ... }:
let
cfg = config.ptw.programs.gaming;
in {
options.ptw.programs.gaming = {
enable = lib.mkEnableOption "Configure gaming options";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [
2023-04-08 15:30:39 +00:00
# General wine
wineWowPackages.staging winetricks
protontricks
2023-04-08 15:30:39 +00:00
# Lutris for League
lutris-free-wrapped
2023-03-31 22:12:40 +00:00
# prismlauncher-wrapped
2023-04-08 15:30:39 +00:00
# retroarch for retro games
2022-03-27 17:31:00 +00:00
(pkgs.callPackage ./wrapper.nix {
inherit (pkgs) retroarch;
cores = with pkgs.libretro; [
2023-04-30 13:23:18 +00:00
mgba mupen64plus melonds desmume dolphin pcsx2
2022-03-27 17:31:00 +00:00
];
})
2022-03-19 14:19:11 +00:00
2022-11-12 21:00:10 +00:00
#steam-wrapped # Custom package
2022-06-15 17:43:12 +00:00
2023-04-08 15:30:39 +00:00
# Gameplay clip recording
2023-03-31 22:12:40 +00:00
(pkgs.wrapOBS {
plugins = with pkgs.obs-studio-plugins; [
obs-vaapi obs-vkcapture obs-pipewire-audio-capture
];
})
obs-cli
2023-04-08 15:30:39 +00:00
# Gameplay clip editing
kdenlive
# Performance
corectrl
];
2022-03-19 14:19:11 +00:00
programs.gamescope = {
enable = true;
capSysNice = true;
args = ["--rt"];
};
2023-02-17 14:07:55 +00:00
# security.wrappers.gamescope = {
# owner = "alexander";
# group = "alexander";
# source = "${pkgs.gamescope}/bin/gamescope";
# capabilities = "CAP_SYS_NICE=eip";
# };
2023-01-19 14:18:01 +00:00
2022-03-19 14:19:11 +00:00
hardware.steam-hardware.enable = true;
};
}