2025-05-01 21:16:15 +10:00
|
|
|
{
|
|
|
|
|
pkgs,
|
|
|
|
|
lib,
|
|
|
|
|
...
|
|
|
|
|
}: {
|
2025-10-24 17:23:28 +10:00
|
|
|
# nixpkgs.config.allowUnfreePredicate = pkg:
|
|
|
|
|
# builtins.elem (lib.getName pkg) [
|
|
|
|
|
# "steam"
|
|
|
|
|
# "steam-original"
|
|
|
|
|
# "steam-unwrapped"
|
|
|
|
|
# "steam-run"
|
|
|
|
|
# ];
|
|
|
|
|
nixpkgs.overlays = [
|
|
|
|
|
(self: super: {
|
|
|
|
|
lutris = super.lutris.overrideAttrs (final: prev: {
|
|
|
|
|
# WARNING: pkgs.mbedtls_2 is marked insecure!
|
|
|
|
|
# Replace pkgs.mbedtls_2 (v2.28.10) with pkgs.mbedtls (v3.6.4)
|
|
|
|
|
targetPkgs = pkgs: (
|
|
|
|
|
(builtins.filter (p: p != pkgs.mbedtls_2) (prev.targetPkgs pkgs))
|
|
|
|
|
++ [pkgs.mbedtls]
|
|
|
|
|
);
|
|
|
|
|
});
|
|
|
|
|
})
|
|
|
|
|
];
|
2025-05-01 21:16:15 +10:00
|
|
|
|
2025-05-06 16:41:52 +10:00
|
|
|
programs = {
|
|
|
|
|
steam = {
|
|
|
|
|
enable = true;
|
2025-08-31 14:54:59 +10:00
|
|
|
gamescopeSession.enable = false; # .desktop entry for gamescope
|
2025-05-06 16:41:52 +10:00
|
|
|
|
|
|
|
|
remotePlay.openFirewall = true;
|
|
|
|
|
dedicatedServer.openFirewall = true;
|
|
|
|
|
localNetworkGameTransfers.openFirewall = true;
|
2025-08-31 14:54:59 +10:00
|
|
|
|
|
|
|
|
extraCompatPackages = with pkgs; [
|
|
|
|
|
proton-ge-bin
|
|
|
|
|
];
|
2025-05-06 16:41:52 +10:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
gamemode.enable = true;
|
2025-05-01 21:16:15 +10:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
|
|
|
steamcmd
|
2025-05-06 16:41:52 +10:00
|
|
|
|
|
|
|
|
mangohud
|
|
|
|
|
protonup-qt
|
2025-10-24 17:23:28 +10:00
|
|
|
|
|
|
|
|
# XXX: DEBUG: disable lutris
|
|
|
|
|
# XXX: NOTE: pkgs.lutris depends on pkgs.mbedtls_2 which is marked insecure!
|
|
|
|
|
# XXX: NOTE: Use the provided overlay to patch pkgs.mbedtls_2 -> pkgs.mbedtls
|
|
|
|
|
# lutris
|
|
|
|
|
|
2025-05-06 16:41:52 +10:00
|
|
|
bottles
|
|
|
|
|
heroic
|
2025-05-01 21:16:15 +10:00
|
|
|
];
|
|
|
|
|
}
|