config/profiles/desktop/steam.nix

103 lines
2.2 KiB
Nix
Raw Normal View History

2023-03-11 03:39:06 +01:00
{ config, pkgs, lib, ... }:
2024-10-30 23:18:53 +01:00
lib.mkMerge [
2023-03-11 03:39:06 +01:00
{
programs.steam.enable = true;
programs.steam.remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
programs.steam.dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
2024-10-02 09:16:03 +02:00
# TODO: gamescope?
2023-03-19 04:23:38 +01:00
# TODO: gamemode?
2023-03-11 03:39:06 +01:00
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"steam"
"steam-original"
"steam-runtime"
];
2023-06-11 14:26:19 +02:00
/** /
2023-03-11 03:39:06 +01:00
#programs.java.enable = true;
nixpkgs.config.packageOverrides = pkgs: {
steam = pkgs.steam.override {
2023-06-11 14:26:19 +02:00
#withPrimus = config.hardware.nvidia.modesetting.enable;
#withJava = config.programs.java.enable;
2023-03-11 16:22:18 +01:00
#nativeOnly = true;
#newStdcpp = true;
#extraProfile = "export SDL_VIDEODRIVER=x11";
2023-03-11 03:39:06 +01:00
extraPkgs = pkgs: with pkgs; [
2023-03-11 16:22:18 +01:00
config.hardware.opengl.package
nettools # some scripts expect 'hostname'
glxinfo # for debugging
pipewire
2023-03-11 03:39:06 +01:00
libgdiplus
2023-03-11 16:22:18 +01:00
libpng
libpulseaudio
libvorbis
libbsd
gnutls
zlib
mono
cairo
pango
cabextract
lsb-release
fontconfig
gdk-pixbuf
gtk3
gtk3-x11
xorg.libXcursor
xorg.libXi
xorg.libXinerama
xorg.libXScrnSaver
xorg.libxcb
stdenv.cc.cc.lib
#libkrb5
#keyutils
];
2023-03-11 03:39:06 +01:00
};
};
2023-06-11 14:26:19 +02:00
/**/
2023-03-11 03:39:06 +01:00
2023-03-11 16:22:18 +01:00
#services.joycond.enable = true;
hardware.opengl.enable = true;
2024-10-30 23:18:53 +01:00
}
(lib.optionalAttrs (lib.versionOlder (lib.versions.majorMinor lib.version) "24.11") {
hardware.opengl.driSupport = true;
})
{
2023-03-11 16:22:18 +01:00
hardware.opengl.driSupport32Bit = true;
hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];
2023-03-11 03:39:06 +01:00
environment.systemPackages = with pkgs; [
steam-tui
steamcmd
2024-03-13 23:35:32 +01:00
#winetricks
#protontricks
2024-03-02 15:33:04 +01:00
2024-03-13 23:35:32 +01:00
wineWowPackages.full
#wineWowPackages.waylandFull
# nice to have
jstest-gtk
2024-09-27 11:13:26 +02:00
antimicrox
2024-10-02 09:16:03 +02:00
# since gnome doesn't let me select the provided [Desktop Action BigPicture]
# in the overview without right clicking /shrug
(makeDesktopItem {
desktopName = "Steam Big Picture";
name = "Steam";
exec = "steam steam://open/bigpicture";
icon = "steam";
})
2023-03-11 03:39:06 +01:00
];
}
2024-10-30 23:18:53 +01:00
]