feat: gaming - docs, persistent data, add lutris, heroic & star rail

This commit is contained in:
Ryan Yin
2025-09-14 16:17:28 +08:00
parent 1b663c757b
commit 918403b098
7 changed files with 234 additions and 56 deletions
+22 -16
View File
@@ -1,6 +1,17 @@
{ pkgs, nix-gaming, ... }:
{
# https://wiki.archlinux.org/title/steam
pkgs,
nix-gaming,
aagl,
...
}:
{
# ==========================================================================
# Gaming on Linux
#
# <https://www.protondb.com/> can give you an idea what works where and how.
# Begineer Guide: <https://www.reddit.com/r/linux_gaming/wiki/faq/>
# ==========================================================================
# Games installed by Steam works fine on NixOS, no other configuration needed.
programs.steam = {
# Some location that should be persistent:
@@ -29,21 +40,9 @@
imports = with nix-gaming.nixosModules; [
pipewireLowLatency
platformOptimizations
];
# ==========================================================================
# Other Optimizations
# Usage:
# Lutris - enable advanced options, go to the System options -> Command prefix, add: `mangohud`
# Steam - add this as a launch option: `mangohud %command%` / `gamemoderun %command%`
# ==========================================================================
environment.systemPackages = with pkgs; [
# https://github.com/flightlessmango/MangoHud
# a simple overlay program for monitoring FPS, temperature, CPU and GPU load, and more.
mangohud
# a GUI game launcher for Steam/GoG/Epic
lutris
# run anime games on Linux
aagl.nixosModules.default
];
# Optimise Linux system performance on demand
@@ -55,4 +54,11 @@
# https://github.com/FeralInteractive/GameMode#apps-with-gamemode-integration
# simply running the game will automatically activate GameMode.
programs.gamemode.enable = pkgs.stdenv.isx86_64;
# run anime games on Linux
# https://github.com/an-anime-team/
programs.anime-game-launcher.enable = true; # Genshin: Impact
programs.honkers-railway-launcher.enable = true; # Honkai: Star Rail
programs.honkers-launcher.enable = false; # Honkai: Impact 3
programs.sleepy-launcher.enable = false; # Zenless Zon Zero
}
+4 -3
View File
@@ -64,11 +64,12 @@
])
# ============= Named Workspaces =============
(node "workspace" "1terminal" [ (leaf "open-on-output" "HDMI-A-1") ])
(node "workspace" "2browser" [ (leaf "open-on-output" "DP-2") ])
(node "workspace" "4gaming" [ (leaf "open-on-output" "DP-2") ])
(node "workspace" "5music" [ (leaf "open-on-output" "DP-2") ])
(node "workspace" "1terminal" [ (leaf "open-on-output" "HDMI-A-1") ])
(node "workspace" "3chat" [ (leaf "open-on-output" "HDMI-A-1") ])
(node "workspace" "4music" [ (leaf "open-on-output" "DP-2") ])
(node "workspace" "5mail" [ (leaf "open-on-output" "DP-2") ])
(node "workspace" "6file" [ (leaf "open-on-output" "HDMI-A-1") ])
(node "workspace" "0other" [ (leaf "open-on-output" "HDMI-A-1") ])
];
+6 -1
View File
@@ -231,13 +231,18 @@ in
# Games / Media
# ======================================
"Games"
".steam"
".config/blender"
".config/LDtk"
".config/heroic"
".config/lutris"
".local/share/umu"
".local/share/Steam"
".local/share/PrismLauncher"
".local/state/Heroic"
".local/share/lutris"
".local/share/tiled"
".local/share/GOG.com"
".local/share/StardewValley"