{ lib, ... }: { programs.steam.enable = true; nixpkgs.config = { allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "steam" "steam-original" "steam-runtime" ]; packageOverrides = pkgs: { steam = pkgs.steam.override { extraPkgs = pkgs: with pkgs; [ libgdiplus ]; }; }; }; environment.sessionVariables = rec { # Steam needs this to find Proton-GE STEAM_EXTRA_COMPAT_TOOLS_PATHS = "\${HOME}/.steam/root/compatibilitytools.d"; # note: this doesn't replace PATH, it just adds this to it PATH = [ "\${XDG_BIN_HOME}" ]; }; }