A comprehensive Python-based tool for automatically managing OptiScaler installations on Steam games in Linux. OptiScaler enables FSR4, DLSS, and other upscaling technologies on games that don't natively support them.
- 🎮 Steam Integration: Automatically detects Steam games and installation paths
- 🚀 Auto Installation: Downloads and installs the latest OptiScaler nightly builds
- ⚙️ Smart Configuration: Automatically configures OptiScaler.ini with optimal settings
- 🖥️ Desktop Integration: GUI launcher with application menu integration
- 📊 MangoHUD Support: Optional performance monitoring overlay
- 🔧 Launch Options: Automatically applies Steam launch options with proper VDF formatting
- 🗂️ FSR4 Management: Manages multiple FSR4 DLL versions
- 📦 Backup System: Creates backups before making changes
- 🔄 Uninstaller: Clean removal of OptiScaler installations
- Run
./install-desktop-entry.shto install desktop integration - Launch from Applications menu: Games > OptiScaler Manager
- Or double-click
launch-gui.sh
./run.sh- Linux Distribution: Arch Linux, Bazzite, or compatible
- Steam: Installed and configured
- Python 3: With requests module
- p7zip: For archive extraction
The script automatically installs missing dependencies:
git clone <repository-url>
cd optiscaler-auto-manager
chmod +x run.sh
./run.sh# Arch Linux / Bazzite
sudo pacman -S python-requests p7zip
# Ubuntu / Debian
sudo apt install python3-requests p7zip-full
# Fedora
sudo dnf install python3-requests p7zip- Launch OptiScaler Manager
- Select "2. Install OptiScaler"
- Choose your game from the Steam library
- Select installation location (usually "Main Game Directory")
- The tool will:
- Download latest OptiScaler nightly
- Extract to game directory
- Run setup scripts
- Configure OptiScaler.ini
- Copy FSR4 DLL to compatibility data
- Select "6. Add Steam launch options"
- Choose your game
- Select if you need RDNA3 workarounds
- Choose to include MangoHUD (performance monitoring)
- Pick launch option type:
- Basic: Essential OptiScaler setup
- Advanced: Additional performance optimizations
- Debug: Detailed logging for troubleshooting
- Anti-Lag 2: Experimental latency reduction
- Select "7. Manage FSR4 DLL"
- Choose from bundled FSR4 versions or browse for custom DLL
- The selected version will be used for all future installations
- View installations: Option 3 shows all current OptiScaler installations
- Uninstall: Option 4 cleanly removes OptiScaler and restores original files
WINEDLLOVERRIDES="dxgi=n,b" PROTON_FSR4_UPGRADE=1 %command%mangohud WINEDLLOVERRIDES="dxgi=n,b" PROTON_FSR4_UPGRADE=1 %command%WINEDLLOVERRIDES="dxgi=n,b" DXIL_SPIRV_CONFIG=wmma_rdna3_workaround PROTON_FSR4_UPGRADE=1 RADV_PERFTEST=nggc %command%WINEDLLOVERRIDES="dxgi=n,b" PROTON_FSR4_UPGRADE=1 DXVK_ASYNC=1 PROTON_ENABLE_NVAPI=1 PROTON_HIDE_NVIDIA_GPU=0 VKD3D_CONFIG=dxr11,dxr WINE_CPU_TOPOLOGY=4:2 %command%optiscaler-auto-manager/
├── optiscaler_manager.py # Main application
├── run.sh # Terminal launcher with dependency check
├── launch-gui.sh # GUI launcher for desktop integration
├── install-desktop-entry.sh # Desktop integration installer
├── optiscaler-manager.desktop # Desktop entry file
├── create-icon.py # Icon generator
├── optiscaler-icon.svg # Application icon
├── test_steam_fix.py # Steam VDF testing utility
├── test_hunt.py # Hunt: Showdown testing utility
└── README.md # This file
- Installations:
~/.config/optiscaler_manager/installations.json - FSR4 DLL:
~/.config/optiscaler_manager/amdxcffx64.dll - Desktop Entry:
~/.local/share/applications/optiscaler-manager.desktop
- Config Path:
~/.steam/steam/userdata/[USER_ID]/config/localconfig.vdf - Backups: Automatic backups created before modifications
OptiScaler works with most DirectX 11/12 games. Tested and verified with:
- Hunt: Showdown
- Stellar Blade
- Cyberpunk 2077
- Elden Ring
- And many more...
- RDNA3 (RX 7000 series): Use RDNA3 workaround options
- RDNA2 (RX 6000 series): Standard options work
- RDNA1 (RX 5000 series): Basic OptiScaler support
- RTX 40 series: Full DLSS/FSR support
- RTX 30/20 series: DLSS + FSR support
- GTX series: FSR support only
- Arc GPUs: Basic FSR support
- Try the "Disable DLSS FG" launch option variant
- Ensure
WINEDLLOVERRIDES="dxgi=n,b"is present - Check game logs for DLL loading errors
- Restart Steam completely after applying options
- Check Steam game properties to verify options are visible
- Restore from backup if VDF corruption occurs
- Enable MangoHUD to monitor performance
- Try different OptiScaler presets (Performance vs Quality)
- Use DXVK_ASYNC=1 for better frame pacing
- Verify amdxcffx64.dll is in compatdata/[APPID]/pfx/drive_c/windows/system32/
- Check OptiScaler.ini has
Fsr4Update=true - Ensure game supports FSR4 requirements
Edit the generated OptiScaler.ini in your game directory:
[OptiScaler]
Fsr4Update=true
Dx12Upscaler=auto
ColorResourceBarrier=auto
MotionVectorResourceBarrier=auto
OverrideNvapiDll=autoYou can manually add these environment variables:
DXVK_ASYNC=1- Async shader compilationPROTON_ENABLE_NVAPI=1- Enable NVIDIA APIVKD3D_CONFIG=dxr11,dxr- DirectX Raytracing supportWINE_CPU_TOPOLOGY=4:2- CPU topology override
python3 test_steam_fix.py # Test VDF parsing
python3 test_hunt.py # Test with specific game- Fork the repository
- Create a feature branch
- Test with multiple games and GPU types
- Submit pull request
This project is open source. OptiScaler itself is developed by the OptiScaler team.
- OptiScaler Team: For the amazing upscaling technology
- Valve: For Steam and Proton
- AMD: For FSR technology
- Community: For testing and feedback
For issues and support:
- Check the troubleshooting section above
- Enable debug launch options for detailed logs
- Create an issue with system information and logs
- Join the OptiScaler community forums
Enjoy enhanced gaming with OptiScaler! 🎮✨