Zum Inhalt springen
Diese Seite ist veraltet. Bitte beachten Sie die neueste Dokumentation unter /configuration/gaming/

Gaming mit CachyOS – Anleitung

Willkommen bei der Anleitung zum Gamen auf CachyOS. Sie führt dich durch die wichtigsten Schritte, um alles fürs Zocken einzurichten.

Zuallererst.

Denk dran, eine zweistellige Verbesserung der FPS ist nicht immer drin oder überhaupt möglich. Manchmal führen Optimierungen nur zu kleinen Verbesserungen oder sogar gar keinen, je nach Spiel und Hardware-Konfiguration.

Du kannst nicht erwarten, dass Software-Optimierungen wie ein kostenloses Hardware-Upgrade wirken.

Um dir die Einrichtung von CachyOS fürs Gaming zu erleichtern, sind alle nötigen Gaming-Pakete in einem Meta-Paket zusammengefasst. Dieses enthält alle notwendigen Abhängigkeiten und Bibliotheken für das Gamen unter Linux. Zusätzlich gibt es ein separates Meta-Paket für Tools und Launcher/Stores.

Falls du merkst, dass irgendwelche Pakete fehlen, sag dem CachyOS-Team ruhig Bescheid.

Folge den unteren Schritten, um mit dem Gaming-Setup zu starten.

Das cachyos-gaming-meta Meta-Paket enthält viele gaming-bezogene Bibliotheken.

Terminal-Fenster
sudo pacman -S cachyos-gaming-meta

Proton-CachyOS basiert auf dem bleeding-edge-Branch von Proton und bringt eine Reihe von Modifikationen mit sich.

  • Wine-staging Patches
  • Wine Fullscreen FSR
  • Enthält Video- und Audio-Codecs für Videosequenzen in Spielen
  • Unterstützung für umu-launcher inklusive UMU-Protonfixes
  • Fügt frühe Hotfixes/Workarounds für Spiele hinzu

Die Startoptionen in Steam sind nach folgendem Muster aufgebaut.

Terminal-Fenster
<env-Variablen> <Wrapper> %command% <Anwendungsargumente>
  • <env-Variablen>: Das sind Optionen in der Form VARIABLE=Wert

    Beispiele
    PROTON_DXVK_D3D8=1
    # Oder
    DXVK_HUD="fps,memory,version,api"
  • <Wrapper>: Das sind Anwendungen und Skripte, die verändern, wie die eigentliche Anwendung ausgeführt wird. Argumente für den Wrapper kommen normalerweise nach der ausführbaren Datei des Wrappers.

    Beispiele
    mangohud --dlsym
    # Oder
    gamescope -W 1680 -H 1050 -w 1280 -h 720 -S fit -F fsr --mangoapp --
  • %command%: Das ist die eigentliche Anwendung. Dies sollte genau so angegeben werden, und Steam ersetzt es dann beim Start der Anwendung durch den richtigen Befehl.

  • <Anwendungsargumente>: Das sind verschiedene Argumente für die eigentliche Anwendung, die vom jeweiligen Programm abhängen.

    Beispiel
    %command% -dx11

Beispiel für eine komplette Startoption, die alle Elemente kombiniert:

Terminal-Fenster
__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1 prime-run game-performance %command% -dx11
  • DLSS & Nvidia-Features
    • PROTON_DLSS_UPGRADE=1: Aktualisiert DLSS automatisch auf die neueste Version.
    • PROTON_DLSS_INDICATOR=1: Zeigt den DLSS-Statusindikator im Spiel an.
    • PROTON_NVIDIA_LIBS=1: Aktiviert Nvidia-Bibliotheken (PhysX, CUDA) – nicht für DLSS/Raytracing erforderlich.
Erweiterte Nvidia-Steuerung
  • PROTON_NVIDIA_NVCUDA=1: Aktiviert nur CUDA-Unterstützung.
  • PROTON_NVIDIA_NVENC=1: Aktiviert nur NVENC-Encoding.
  • PROTON_NVIDIA_NVML=1: Aktiviert NVML-Monitoring.
  • PROTON_NVIDIA_NVOPTIX=1: Aktiviert OptiX-Raytracing.
  • PROTON_NVIDIA_LIBS_NO_32BIT=1: Beschränkt Bibliotheken nur auf 64-Bit (behebt Performance-Probleme bei RTX 4000+).
  • AMD & Intel Upscaling
    • PROTON_FSR4_UPGRADE=1: Aktualisiert FSR automatisch auf die neueste Version.
    • PROTON_FSR4_RDNA3_UPGRADE=1: Verwendet eine RDNA3-optimierte FSR4-DLL.
    • PROTON_XESS_UPGRADE=1: Aktualisiert XeSS automatisch auf die neueste Version.

Stell sicher, dass du umu-launcher von CachyOS auf deinem System installiert hast. Installiere es mit dem folgenden Befehl.

Terminal-Fenster
sudo pacman -S cachyos/umu-launcher
  1. Klicke im Hauptfenster von Lutris auf das Zahnrad-Symbol neben Wine.
  2. Geh zum Tab Runner Options und überprüfe, ob deine Einstellungen mit den folgenden übereinstimmen:
    • Wine version = proton-cachyos
    • Use System winetricks = Deaktiviert
    • Graphics
      • Enable DXVK = Aktiviert
        • Hinweis: Benutzerdefinierte Versionen von DXVK, VKD3D und DXVK-NVAPI werden nicht angewendet, wenn du umu-launcher verwendest.
  3. Wechsle zum Tab System Options.
    • Lutris
      • Disable Lutris Runtime = Aktiviert
      • Prefer system libraries = Aktiviert
  4. Scrolle weiter nach unten zum Abschnitt Game execution und suche die Tabelle Environment variables.
  5. Füge die folgenden Umgebungsvariablen hinzu:
    • Key: UMU_RUNTIME_UPDATE optional
      • Value: 0
      • Dies überspringt Updates der Steam Linux Runtime für proton-cachyos. Verwende dies nicht mit einer Proton-Version, die die Steam Linux Runtime nutzt, wie z.B. proton-cachyos-slr, -GE oder -EM.
    • Key: PROTON_VERB optional
      • Value: waitforexitandrun
      • Dies ermöglicht, dass protonfixes mit einer entsprechenden GAMEID funktionieren.
  6. Klicke auf Save, um die Änderungen zu übernehmen.
  1. Öffne ein Terminal und installiere protonup.

    Terminal-Fenster
    sudo pacman -S protonup-qt
  2. Öffne protonup-qt und folge dem Screenshot:

  3. Starte Steam neu, falls du es offen hattest.

Manuelle Installation (Fortgeschritten)
  1. Lade die neueste Version hier herunter (scrolle runter zu Assets).
  2. Entpacke die Datei und verschiebe den Ordner nach ~/.steam/steam/compatibilitytools.d/
  3. Starte Steam neu, falls du es offen hattest.

Das ist dasselbe wine, das auch der Kern von proton-cachyos ist, aber als eigenständiges Paket. Du kannst es in Lutris, Heroic, Bottles und anderen Programmen benutzen.

  • Alle Wine-Modifikationen, die in Proton-CachyOS enthalten sind
  • Fügt frühe Hotfixes/Workarounds für Spiele hinzu

Zusätzliche Konfigurationsoptionen

  • WINE_WMCLASS="<name>": Setzt die WM_CLASS aller Wine-Fenster, sodass der Fenstermanager die Wine-Fenster durch Regeln steuern kann.
  • WINEUSERSANDBOX=1: Deaktiviert die Erstellung von Symlinks von Wine-Benutzerordnern (wie Dokumente und Bilder) zu den entsprechenden Ordnern in deinem HOME-Verzeichnis.
  • WINE_NO_WM_DECORATION=1: Deaktiviert Fensterdekorationen. Das kann Probleme mit randlosem Vollbild und dem Durchklicken der Maus durch das Fenster beheben.
  • WINE_PREFER_SDL_INPUT=1: Workaround für Probleme bei der Controller-Erkennung.

Normalerweise sollte es ausreichen, /opt/wine-cachyos/bin/wine anstelle von nur wine auszuführen, damit eine Anwendung wine-cachyos-opt verwendet.

Wenn eine strengere Konfiguration erforderlich ist, könnte sie so aussehen:

Terminal-Fenster
export PATH="/opt/wine-cachyos/bin/:$PATH"
export WINEDLLPATH="/opt/wine-cachyos/lib/wine:/opt/wine-cachyos/lib32/wine:$WINEDLLPATH"
export LD_LIBRARY_PATH="/opt/wine-cachyos/lib/:/opt/wine-cachyos/lib32/:$LD_LIBRARY_PATH"

Wenn du winetricks mit wine-cachyos-opt verwenden möchtest, kannst du es so aufrufen:

Terminal-Fenster
WINE=/opt/wine-cachyos/bin/wine WINEPREFIX=<dein_prefix> winetricks <verb>

Welche Proton-Version sollte in Steam verwendet werden?

Abschnitt betitelt „Welche Proton-Version sollte in Steam verwendet werden?“
  • Proton 10.0 ist die stabile Version von Valve. Benutze diese, wenn bekannt ist, dass das Spiel, das du spielen möchtest, gut damit läuft.
  • Proton Experimental ist die brandneue Version von Valve. Benutze diese, wenn das Spiel, das du spielen möchtest, relativ neu ist, mit der aktuellen stabilen Proton-Version nicht gut funktioniert oder wenn Leute es auf ProtonDB empfehlen.
  • proton-cachyos-slr ist die Version, die von den CachyOS-Maintainern gebaut und gepflegt wird. Die Verwendung wird aufgrund ihrer verschiedenen QoL-Features, Fixes und Optimierungen dringend empfohlen. Für Spiele, die Anti-Cheat verwenden, wie BattlEye oder Easy Anti-Cheat, oder benutzerdefinierte Launcher, wird proton-cachyos-slr bevorzugt.
  • proton-cachyos ist dieselbe Version wie proton-cachyos-slr, aber ohne Abhängigkeit von der Steam Linux Runtime. Benutze sie nur, wenn du die Bedeutung dieses Unterschieds verstehst, und wechsle zu proton-cachyos-slr, falls Probleme auftreten.
  • Proton-GE ist ein Custom-Build von GloriousEggroll. Er enthält verschiedene Fixes und kann in bestimmten Situationen nützlich sein.
  • Proton 9.0.4 oder niedriger sind die stabilen Versionen von Valve. Benutze diese, wenn das Spiel, das du spielen möchtest, nur mit einer früheren Proton-Version funktioniert.

Ruckler beheben, die durch die Steam Game Recorder-Funktion verursacht werden

Abschnitt betitelt „Ruckler beheben, die durch die Steam Game Recorder-Funktion verursacht werden“

Füge die folgende Startoption zu deinem Spiel hinzu.

Terminal-Fenster
LD_PRELOAD="" %command%

So aktivierst du das Proton-Logging für ein Spiel:

  1. Rechtsklicke auf dein Spiel in Steam und wähle Eigenschaften.
  2. Setze unter Startoptionen die Umgebungsvariable PROTON_LOG:
    Terminal-Fenster
    PROTON_LOG=1 %command%
    Dadurch wird eine Log-Datei in deinem Home-Verzeichnis mit dem Namen steam-<AppID>.log erstellt (zum Beispiel verwendet Counter Strike 2 die AppID 730, also wäre die Datei steam-730.log).
Benutzerdefiniertes Log-Verzeichnis

Um ein benutzerdefiniertes Log-Verzeichnis festzulegen, verwende PROTON_LOG_DIR:

Beispiel
PROTON_LOG=1 PROTON_LOG_DIR=/home/cachyos/steam-logs %command%

Shader mit Proton-CachyOS, -GE und -EM vorab cachen

Abschnitt betitelt „Shader mit Proton-CachyOS, -GE und -EM vorab cachen“

Klicke in Steam auf Steam->Einstellungen, gehe zu Downloads und deaktiviere diese Einstellungen:

  • Hintergrundverarbeitung von Vulkan-Shadern erlauben
  • Shader-Pre-Caching aktivieren

Lutris ist ein Game-Launcher auf CachyOS. Mit Lutris kannst du deine Game-Runner, einschließlich Wine, Proton und Emulatoren, einfach verwalten.

  • Starte Spiele über Lutris einfach durch Klicken auf den Play-Button.
  • Füge jedes gewünschte Spiel hinzu, indem du auf das + oben links klickst.
  • Richte einen Store in den Quellen im linken Panel ein und verbinde dein Konto. Es wird dann den entsprechenden Store installieren, und du kannst dann Spiele aus dem Store heraus starten, genau wie unter Windows.
  • Und mehr!

In Lutris unterstützte Game-Stores:

Wie man mehrere Startoptionen und Umgebungsvariablen in Lutris richtig einstellt

Abschnitt betitelt „Wie man mehrere Startoptionen und Umgebungsvariablen in Lutris richtig einstellt“
  • Startoptionen wie -dx11 oder -fullscreen sollten im Feld Arguments unter dem Reiter Game options mit einem Leerzeichen als Trennzeichen hinzugefügt werden.
  • Befehls-Wrapper, zum Beispiel mangohud --dlsym oder game-performance, sollten im Feld Command prefix unter dem Reiter System options mit einem Leerzeichen als Trennzeichen hinzugefügt werden.
  • Umgebungsvariablen wie PROTON_ENABLE_HDR=1 sollten in der Tabelle Environment variables unter dem Reiter System options mit dem +-Button hinzugefügt werden, um einen neuen Eintrag zu erstellen.

Da gamemode und ananicy-cpp beide gleichzeitig versuchen, die Prozess-Niceness zu ändern, kann es zu Konflikten und unerwartetem Verhalten kommen. Es wird empfohlen, gamemode ohne ananicy-cpp zu verwenden.

Um ananicy-cpp zu stoppen, führe den folgenden Befehl aus:

Terminal-Fenster
systemctl stop ananicy-cpp

CachyOS enthält ein Wrapper-Skript game-performance, das power-profiles-daemon verwendet, um das Leistungsprofil vorübergehend auf performance umzuschalten. Das Profil erhöht die Systemleistungsstufen, setzt den CPU-Governor auf performance und schaltet auch jeden aktiven scx-Scheduler auf sein Gaming-Profil um (falls verfügbar).

Wenn es zum Starten eines Spiels verwendet wird, bleibt das System im Leistungsmodus, bis das Spiel beendet wird. Danach wird das vorherige Profil wiederhergestellt.

Feral’s GameMode bietet eine ähnliche Funktionalität.

Wie man game-performance zu Steam, Lutris und Heroic Games Launcher hinzufügt

Abschnitt betitelt „Wie man game-performance zu Steam, Lutris und Heroic Games Launcher hinzufügt“
  1. Öffne deine Steam-Bibliothek.
  2. Rechtsklicke auf den Titel des Spiels und wähle Eigenschaften.
  3. Im Allgemein-Tab findest du den Abschnitt Startoptionen.
  4. Füge die folgende Startoption hinzu:
    Terminal-Fenster
    game-performance %command%

Spiel-Shader werden während des Spielens automatisch kompiliert, was zu langen Ladezeiten und Rucklern führen kann, wenn du ihnen zum ersten Mal begegnest. Diese Shader werden auf deinem System gespeichert, um bei Bedarf wiederverwendet zu werden.

Es gibt jedoch eine maximale Grenze für die Dateigröße des Shader-Caches, was dazu führt, dass alte Shader vergessen werden, wenn die Standardgröße überschritten wird. Dies kann ein Problem sein, da große Spiele Shader von über 1 GB Größe haben können, was dazu führt, dass sie bei jedem Start neu kompiliert werden.

Um lange Ladezeiten und Ruckler zu vermeiden, können wir die globale Shader-Cache-Größe erhöhen:

  1. Öffne ein Terminal.
  2. Erstelle ein environment.d-Verzeichnis in deinem Konfigurationsordner, falls es noch nicht existiert:
    Terminal-Fenster
    mkdir -p ~/.config/environment.d
  3. Erstelle eine neue Konfigurationsdatei:
    Terminal-Fenster
    touch ~/.config/environment.d/gaming.conf
  4. Öffne die Datei mit Micro (einem Texteditor).
    Terminal-Fenster
    micro ~/.config/environment.d/gaming.conf
    Und füge, je nach deinem Grafikkartenhersteller, Folgendes ein:
    AMD
    Terminal-Fenster
    # Erzwingt die RADV-Vulkan-Implementierung
    AMD_VULKAN_ICD=RADV
    # Erhöht die Größe des Shader-Caches von AMD auf 12 GB
    MESA_SHADER_CACHE_MAX_SIZE=12G
    NVIDIA
    Terminal-Fenster
    # Erhöht die Größe des Shader-Caches von Nvidia auf 12 GB
    __GL_SHADER_DISK_CACHE_SIZE=12000000000
  5. Speicher die Datei, indem du Strg+S drückst, und beende Micro mit Strg+Q. Starte dein System neu.

Nach dem Neustart sollte die maximale Shader-Cache-Größe dauerhaft erhöht sein. Danke an psygregs Shader-Booster für die Hilfe bei dieser Anleitung.

Wie man dlss-swapper zu Steam, Lutris und Heroic Games Launcher hinzufügt

Abschnitt betitelt „Wie man dlss-swapper zu Steam, Lutris und Heroic Games Launcher hinzufügt“
  1. Öffne deine Steam-Bibliothek.
  2. Rechtsklicke auf den Titel des Spiels und wähle Eigenschaften.
  3. Im Allgemein-Tab findest du den Abschnitt Startoptionen.
  4. Füge die folgende Startoption hinzu:
    Terminal-Fenster
    dlss-swapper %command%
Manuelle DLL-Austauschmethode

Wenn dlss-swapper nicht funktioniert oder Probleme verursacht, versuche, die DLSS-Implementierung des Spiels manuell zu aktualisieren, indem du nvngx_dlss.dll durch eine aktuelle Version ersetzt und stattdessen das Wrapper-Skript dlss-swapper-dll verwendest.

Das Arch Wiki bietet bereits umfassende Anleitungen zur Aktivierung von Ray Tracing für verschiedene Hardware-Plattformen.

Einige Benutzer berichten, dass das Problem damit zusammenhängt, wie Nvidias Linux-Treiber das GPU-Scheduling handhaben – anders als unter Windows, wo ein korrektes Scheduling erzwungen wird. Es gibt bisher keine offizielle Stellungnahme von Nvidia zu diesem Thema. Es gibt derzeit keinen bekannten Workaround für dieses Problem. Nvidia arbeitet angeblich an einer Lösung, aber es ist nicht klar, wann sie veröffentlicht wird.

Es hat nichts mit CachyOS zu tun.

In einigen Titeln ist der Leistungsabfall weniger spürbar als in anderen. Schau dir dieses Benchmark-Vergleichsvideo als Referenz an.

Folge dem Nvidia-Thread, um mehr über dieses Problem zu erfahren.