{ pkgs, lib, ... }: { # 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] ); }); }) ]; programs = { steam = { enable = true; gamescopeSession.enable = false; # .desktop entry for gamescope remotePlay.openFirewall = true; dedicatedServer.openFirewall = true; localNetworkGameTransfers.openFirewall = true; extraCompatPackages = with pkgs; [ proton-ge-bin ]; }; gamemode.enable = true; }; environment.systemPackages = with pkgs; [ steamcmd mangohud protonup-qt # 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 bottles heroic ]; }