{ inputs, config, lib, pkgs, namespace, ... }: let inherit (lib) mkIf mkEnableOption; cfg = config.${namespace}.application.steam; in { options.${namespace}.application.steam = { enable = mkEnableOption "enable steam"; }; config = mkIf cfg.enable { home.packages = with pkgs; [ protonup ]; home.sessionVariables = { STEAM_EXTRA_COMPAT_TOOLS_PATHS = "\${HOME}/.steam/root/compatibilitytools.d"; }; programs = { steam = { enable = true; package = pkgs.steam-small.override { extraEnv = { DXVK_HUD = "compiler"; MANGOHUD = true; }; }; gamescopeSession = { enable = true; args = ["--immediate-flips"]; }; }; # https://github.com/FeralInteractive/gamemode # gamemode = { # enable = true; # enableRenice = true; # settings = {}; # }; # gamescope = { # enable = true; # capSysNice = true; # env = { # DXVK_HDR = "1"; # ENABLE_GAMESCOPE_WSI = "1"; # WINE_FULLSCREEN_FSR = "1"; # WLR_RENDERER = "vulkan"; # }; # args = ["--hdr-enabled"]; # }; }; }; }