mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-11-13 12:13:46 +01:00
* feat(nixpak): sandbox umu-launcher with ~/Games as its home umu-run, winetricks and bbe leave the host PATH, so umu launchers generated before this stop working until rewritten with `umu-install.nu <name> - <launcher> <gameid>`. Assisted-by: Claude Agent SDK (claude-opus-5-5) * refactor(nixpak): mount ~/Gaming as the game sandbox home idols-ai now preserves ~/Gaming instead of ~/Games, so existing games vanish from the host after deploy until the preserved ~/Games is moved to ~/Gaming/Games. Assisted-by: Claude Agent SDK (claude-opus-5-5) * docs(nixpak): record umu runtime validation Assisted-by: Claude Agent SDK (claude-opus-5-5) Assisted-by: DeepSeek Harness (deepseek-flash)
51 lines
1.5 KiB
Nix
51 lines
1.5 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
with lib;
|
|
let
|
|
cfg = config.modules.desktop.gaming;
|
|
in
|
|
{
|
|
options.modules.desktop = {
|
|
gaming = {
|
|
enable = mkEnableOption "Enable desktop gaming support";
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
# ==========================================================================
|
|
# Other Optimizations
|
|
# Usage:
|
|
# UMU game launchers use MangoHud by default; set ENABLE_MANGOHUD=0 in their conf to disable.
|
|
# Steam - add this as a launch option: `mangohud %command%` / `gamemoderun %command%`
|
|
# ==========================================================================
|
|
|
|
home.packages =
|
|
(with pkgs; [
|
|
# https://github.com/flightlessmango/MangoHud
|
|
# a simple overlay program for monitoring FPS, temperature, CPU and GPU load, and more.
|
|
mangohud
|
|
|
|
# https://github.com/Open-Wine-Components/umu-launcher
|
|
# a unified launcher for Windows games on Linux, sandboxed with
|
|
# ~/Gaming as its home and only writable host directory. umu-run, winetricks,
|
|
# bbe and mangohud live inside it; the nix-config-umu-game skill and
|
|
# the launchers it generates run through `umu-sandbox`.
|
|
nixpaks.umu
|
|
])
|
|
++ (with pkgs; [
|
|
# Heroic Games Launcher - primarily for Epic Games & GOG
|
|
# https://heroicgameslauncher.com/
|
|
(heroic.override {
|
|
extraPkgs = _pkgs: [
|
|
pkgs.gamescope
|
|
];
|
|
})
|
|
]);
|
|
|
|
};
|
|
}
|