# Gaming & Customization Guide Anleitung für Gaming-Setup und Customization mit diesem NixOS-Template. --- ## Gaming Setup ### Steam & Gaming aktiv machen Dieses Template kommt mit Gaming-Support. Zum Aktivieren: **1. Configuration anpassen:** ```nix # In deiner configuration.nix sicherstellen, dass gaming.nix importiert ist: imports = [ ./modules/gaming.nix # ✅ sollte schon da sein ]; ``` **2. Rebuild:** ```bash sudo nixos-rebuild switch --flake .#template ``` ### Proton & Steam Steam ist automatisch installiert. Für beste Kompatibilität: 1. **Steam öffnen:** ```bash steam ``` 2. **Proton wählen (Built-in):** - Settings → Compatibility - "Use Steam Play for other titles" ✅ - Version: **Proton (Experimental)** (neueste & beste) 3. **Proton-GE installieren (Optional, aber empfohlen!):** Proton-GE hat bessere Kompatibilität & Performance als Standard Proton. **Schnelle Installation (Auto-Script):** ```bash cd ~/nixos-config chmod +x install-proton-ge.sh ./install-proton-ge.sh # Steam neu starten # Settings → Compatibility → "Proton-GE-X.X" wählen ``` **oder Manuell:** ```bash # 1. Download Proton-GE # https://github.com/GloriousEggroll/proton-ge-custom/releases # 2. Lade die neuste Version herunter (z.B. Proton-GE-9.xx.tar.gz) # 3. Extrahiere in Steam Compatibility Tools: mkdir -p ~/.steam/root/compatibilitytools.d cd ~/.steam/root/compatibilitytools.d tar -xzf ~/Downloads/Proton-GE-9.xx.tar.gz # 4. Steam neu starten steam # 5. In Steam: Settings → Compatibility → "Proton-GE-9.xx" wählen ``` 4. **Proton-CachyOS (Alternative zu Proton-GE):** **Auto-Installation:** ```bash cd ~/nixos-config chmod +x install-proton-cachyos.sh ./install-proton-cachyos.sh ``` **oder Manuell:** Selbe Schritte wie Proton-GE, aber von: https://github.com/CachyOS/proton-cachyos/releases 5. **Performance-Tools:** ```bash # MangoHUD (FPS-Counter) in Launch Options: mangohud %command% # GameMode (Auto-Optimierung): gamemoderun %command% # Beides zusammen: gamemoderun mangohud %command% ``` 6. **Welches Proton verwenden?** | Proton | Kompatibilität | Performance | Empfehlung | |--------|---|---|---| | Standard | ✅ Gut | ✅ Gut | OK | | **Proton-GE** | **✅✅ Sehr gut** | **✅✅ Sehr gut** | **🏆 Empfohlen** | | Proton-CachyOS | ✅✅ Sehr gut | ✅✅ Sehr gut | 🏆 Alternative | | Proton Experimental | ✅ Gut | ✅ Gut | Fallback | **Hinweis:** Proton-GE & Proton-CachyOS sind Community-Builds, nicht in nixpkgs. Daher die Auto-Scripts! ### GPU-Auswahl Das Template unterstützt mehrere Grafikkarten. Wähle eine: **In `configuration.nix`:** ```nix # AMD (Standard & empfohlen für Linux Gaming): graphicsConfig = ./modules/graphics/mesa-amd.nix; # AMD mit OpenCL: graphicsConfig = ./modules/graphics/mesa-amd-opencl.nix; # NVIDIA (Proprietäre Treiber): graphicsConfig = ./modules/graphics/nvidia.nix; # NVIDIA Open-Source: graphicsConfig = ./modules/graphics/nvidia-open.nix; ``` **Danach Rebuild:** ```bash sudo nixos-rebuild switch --flake .#template ``` ### Gaming-Performance Check ```bash # GameMode Status: gamemode status # GPU-Infos: glxinfo | grep "OpenGL" lspci | grep VGA # Performance-Test: glmark2 ``` ### Wine & Proton Für non-Steam Spiele (GOG, itch.io): **Installiert über `modules/gaming/wine-proton.nix`:** ```bash # Wine eingebaut protontricks # Beispiel: DXVK-Game starten wine game.exe ``` --- ## Desktop Auswahl & Customization ### Desktop Environment wählen Das Template kommt mit mehreren DEs. Wähle deine: **In `configuration.nix`:** ```nix # KDE Plasma (Empfohlen für Balance): desktopConfig = ./modules/desktop/kde.nix; # GNOME (Minimal, modern): desktopConfig = ./modules/desktop/gnome.nix; # Budgie (Zwischen KDE & GNOME): desktopConfig = ./modules/desktop/budgie.nix; # Hyprland (Tiling WM, Advanced): desktopConfig = ./modules/desktop/hyprland.nix; # COSMIC (Modern, Wayland-native): desktopConfig = ./modules/desktop/cosmic-max.nix; ``` **Rebuild:** ```bash sudo nixos-rebuild switch --flake .#template ``` ### KDE Plasma Customization **Themes & Appearance:** 1. System Settings → Appearance 2. Wähle: Global Theme, Color Scheme, Icons, Fonts **Panel anpassen:** - Rechtsklick auf Panel → Edit Panel - Widgets hinzufügen/entfernen - Position/Größe ändern **Shortcuts:** 1. System Settings → Shortcuts & Gestures → Shortcuts 2. Neue Shortcuts hinzufügen **Tipps:** ```bash # KDE-Themes aus Online-Store: # Settings → Appearance → Global Theme → "Get New Global Themes" ``` ### Hyprland Customization **Konfiguration Edit:** ```bash nano ~/.config/hypr/hyprland.conf ``` **Basis-Setup:** ```conf # Monitor monitor = HDMI-1,1920x1080@60,0x0,1 # Keybinds bind = $mainMod, Return, exec, kitty bind = $mainMod, Q, killactive # Windows general { gaps_in = 5 gaps_out = 10 } ``` **Nach Änderung:** ```bash # Hyprland neustart (ohne Neuboot) Ctrl+Alt+Q ``` ### COSMIC Customization **Desktop-Themes:** 1. Settings → Appearance 2. Theme/Color wählen 3. Accent Color anpassen **Shortcuts (neue):** 1. Settings → Keyboard → Shortcuts 2. "+" klicken 3. Command & Hotkey definieren --- ## Allgemeine Customization ### Packages hinzufügen Benutzerdefinierte Pakete in `modules/packages.nix`: ```nix environment.systemPackages = with pkgs; [ firefox # Browser neofetch # System Info htop # Task Manager ripgrep # Fast Search bat # Better cat ]; ``` **Rebuild:** ```bash sudo nixos-rebuild switch --flake .#template ``` ### Audio anpassen **PipeWire (Standard):** ```bash # Audio-Ausgabe wechseln: pavucontrol # Oder Kommandozeile: pactl list short sinks pactl set-default-sink [SINK] ``` ### Shell anpassen **Fish Shell aktivieren:** ```nix # In configuration.nix: users.users.${userName}.shell = pkgs.fish; ``` **Fish Config** (`~/.config/fish/config.fish`): ```fish # Aliases alias ls="exa --icons" alias cat="bat" alias grep="ripgrep" # Prompt anpassen function fish_prompt echo (pwd) "> " end ``` ### Terminal-Customization **Hyprland Terminal (Kitty):** ```bash nano ~/.config/kitty/kitty.conf ``` ```ini font_family Monospace font_size 12 background #1e1e1e foreground #e0e0e0 ``` **KDE Terminal (Konsole):** - Rechtsklick → Settings → Appearance - Theme, Font, Color-Scheme wählen --- ## Gaming-Tipps ### FPS & Performance **In-Game FPS anzeigen:** ```bash # MangoHUD (alle Spiele): mangohud %command% # Steam Launch Options: MANGOHUD=1 %command% ``` **CPU/GPU Monitoring:** ```bash # Live Monitoring: watch -n1 "nvidia-smi" # NVIDIA watch -n1 "rocm-smi" # AMD ``` ### Shader Cache ```bash # Cache Location: ~/.cache/nvidia-smi # NVIDIA /tmp/mesa_shader_cache # Mesa/AMD # Cache Clear (bei Performance-Problemen): rm -rf ~/.cache/nvidia-smi ``` ### Proton Experimental Beste Kompatibilität, aber weniger stabil: 1. Steam → Settings → Compatibility 2. "Use Steam Play for other titles" ✅ 3. Wähle: "Proton (Experimental)" oder "Proton-GE-Latest" ### Spiele-Verzeichnis (Optional) Separate HDD/SSD für Spiele: ```nix # In configuration.nix: environment.variables.STEAM_DIR = "/mnt/games/steam"; ``` --- ## Troubleshooting ### Steam startet nicht ```bash # Fresh Steam Start: rm -rf ~/.steam ~/.steampath steam # Oder Debug: steam -console ``` ### Spiel crasht sofort 1. Unterschiedliche Proton-Version probieren 2. Kompatibilität-Verzeichnis löschen: ```bash rm -rf ~/.steam/steamapps/compatdata/[GAME_ID]/ ``` 3. GPU-Treiber updaten: ```bash nix flake update sudo nixos-rebuild switch --flake .#template ``` ### Black Screen bei Hyprland + NVIDIA ```bash # NVIDIA mit Hyprland braucht Special Config # Siehe: ~/.config/hypr/hyprland.conf env = LIBVA_DRIVER_NAME,nvidia env = XDG_SESSION_TYPE,wayland ``` ### Desktop lädt nicht Fallback zu KDE: ```bash # Edit configuration.nix: desktopConfig = ./modules/desktop/kde.nix; # Terminal (Ctrl+Alt+F2): sudo nixos-rebuild switch --flake .#template ``` --- ## Performance-Tipps ### Vor Gaming-Session ```bash # 1. Cleanup sudo nix-collect-garbage # 2. Thermale Kühlung prüfen sensors # 3. GameMode starten gamemode # 4. Prozesse minimieren killall firefox # oder andere Hintergrund-Apps ``` ### Nvidia-spezifisch ```bash # Driver-Info: nvidia-smi # Power Limit erhöhen: nvidia-smi -pm 1 nvidia-smi -pl [WATTAGE] ``` ### AMD-spezifisch ```bash # GPU Info: rocm-smi # Übertaktung (variabler): # Nutze CoreCtrl GUI ``` --- ## Nützliche Links - [NixOS Manual](https://nixos.org/manual/) - [ProtonDB](https://protondb.com/) - Spiel-Kompatibilität checken - [WineHQ](https://www.winehq.org/) - Wine/Proton Docs - [Chaotic-Nyx](https://github.com/chaotic-cx/nyx) - Aktuelle Treiber --- ## Tips für Freunde (Kopiervorlage) Falls Freunde dein Template nutzen: 1. **Clone:** ```bash git clone mein-nixos cd mein-nixos ``` 2. **Anpassen:** - `hostName` in configuration.nix - `userName` ändern - `desktopConfig` & `graphicsConfig` wählen 3. **Build:** ```bash sudo nixos-rebuild switch --flake .#template ``` 4. **Docs lesen:** - [`COSMIC_SETUP_ANLEITUNG.md`](COSMIC_SETUP_ANLEITUNG.md) (falls COSMIC) - Dieses Guide (Gaming & Customization) --- **Viel Erfolg beim Customizen! 🚀**