A Steam launch options wrapper that automatically launches and configures wrappers such as gamescope.
https://github.com/ValveSoftware/gamescope
- Enables HDR based on display settings.
- Enables VRR based on display settings.
- Enables inverse tone mapping for non-HDR games.
- Sets refresh rate.
- Sets screen resolution.
Tip
Gamescope is enabled by default.
You can disable it by adding ENABLE_GAMEMODE=false
to your overrides.
https://github.com/FeralInteractive/gamemode
Tip
GameMode is enabled by default if it's installed.
You can disable it by adding ENABLE_GAMEMODE=false
to your overrides.
https://github.com/flightlessmango/MangoHud
Tip
MangoHud is disabled by default.
You can enable it by adding ENABLE_MANGOHUD=true
to your overrides.
In order to determine the settings to pass to gamescope, gamedownsights reads them from your desktop environment configuration. The following desktop environments are currently supported:
- KDE Plasma 6 (Resolution / Refresh Rate / VRR / HDR)
nix profile install github:eth-p/gamedownsights
To use gamedownsights
, add it to the launch options for the Steam game(s)
you want to use it with:
gamedownsights %command%
Show detected display configuration:
gamedownsights-config print
Show generated gamescope command:
gamedownsights-config print-launchcmd
While gamedownsights
is meant to work out-of-the-box, you might want to
tweak or override some of the settings.
This can be done by creating ~/.config/gamedownsights/override.sh
.
When gamedownsights
is invoked, it will source that script to replace
or update any settings variables.
If you know the AppID of the Steam game, you can override settings on a per-game basis.
# ... the rest of your override.sh config
# Per-Game Settings:
case "${SteamAppId:-}" in
1086940) # Baldur's Gate 3
ENABLE_GAMESCOPE=false
;;
esac
# The connector of the primary display. (e.g. DP-1)
# Applies to: gamescope
DISPLAY_PORT=''
# The width and height of the primary display.
# Applies to: gamescope
DISPLAY_WIDTH=1920
DISPLAY_HEIGHT=1080
# The configured refresh rate of the primary display.
# Applies to: gamescope
DISPLAY_REFRESH_RATE=60
# Enable variable refresh rate.
# Applies to: gamescope
DISPLAY_USE_VRR=false
# Enable HDR.
# Applies to: gamescope (or with gamescope disabled)
DISPLAY_USE_HDR=false
# Enable HDR inverse tone mapping.
# Applies to: gamescope
DISPLAY_ITM_NITS=300 # set to 0 to disable
# Gamescope-specific settings.
# Applies to: gamescope
DISPLAYSERVER_PROTOCOL=x11 # currently does not have any effect
GAMESCOPE_EXTRA_ARGS=()
# Enable gamemode. (default is true)
ENABLE_GAMEMODE=true
# Enable gamescope. (default is true)
ENABLE_GAMESCOPE=true
# Enable mangohud. (default is false)
ENABLE_MANGOHUD=false