mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-04-17 22:49:42 +02:00
feat: gaming (#223)
* refactor: configure gaming suite via options, use pkgs-x64 * fix: gaming on apple silicon (not work yet)
This commit is contained in:
@@ -9,6 +9,13 @@
|
||||
nixos-apple-silicon.nixosModules.default
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs-unstable; [
|
||||
box64 # Linux Userspace x86 and x86_64 Emulator, run x86_64 apps(such as games, gui apps) on aarch64.
|
||||
# https://asahilinux.org/2024/12/muvm-x11-bridging/
|
||||
# https://github.com/nix-community/nixos-apple-silicon/issues/237
|
||||
muvm # run x86_64 Apps/Games in a microVM, used as a workaround of apple silicon's 16k page size.
|
||||
];
|
||||
|
||||
networking.wireless.iwd = {
|
||||
enable = true;
|
||||
settings.General.EnableNetworkConfiguration = true;
|
||||
|
||||
@@ -19,7 +19,6 @@ in
|
||||
./hardware-configuration.nix
|
||||
./nvidia.nix
|
||||
./ai
|
||||
./gaming.nix
|
||||
|
||||
./preservation.nix
|
||||
./secureboot.nix
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
{
|
||||
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:
|
||||
# ~/.local/share/Steam - The default Steam install location
|
||||
# ~/.local/share/Steam/steamapps/common - The default Game install location
|
||||
# ~/.steam/root - A symlink to ~/.local/share/Steam
|
||||
# ~/.steam - Some Symlinks & user info
|
||||
enable = pkgs.stdenv.isx86_64;
|
||||
# https://github.com/ValveSoftware/gamescope
|
||||
# Run a GameScope driven Steam session from your display-manager
|
||||
# fix resolution upscaling and stretched aspect ratios
|
||||
gamescopeSession.enable = true;
|
||||
# https://github.com/Winetricks/winetricks
|
||||
# Whether to enable protontricks, a simple wrapper for running Winetricks commands for Proton-enabled games.
|
||||
protontricks.enable = true;
|
||||
# Whether to enable Load the extest library into Steam, to translate X11 input events to uinput events (e.g. for using Steam Input on Wayland) .
|
||||
extest.enable = true;
|
||||
fontPackages = [
|
||||
pkgs.wqy_zenhei # Need by steam for Chinese
|
||||
];
|
||||
};
|
||||
|
||||
# see https://github.com/fufexan/nix-gaming/#pipewire-low-latency
|
||||
services.pipewire.lowLatency.enable = true;
|
||||
programs.steam.platformOptimizations.enable = true;
|
||||
imports = with nix-gaming.nixosModules; [
|
||||
pipewireLowLatency
|
||||
platformOptimizations
|
||||
|
||||
# run anime games on Linux
|
||||
aagl.nixosModules.default
|
||||
];
|
||||
|
||||
# Optimise Linux system performance on demand
|
||||
# https://github.com/FeralInteractive/GameMode
|
||||
# https://wiki.archlinux.org/title/Gamemode
|
||||
#
|
||||
# Usage:
|
||||
# 1. For games/launchers which integrate GameMode support:
|
||||
# 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
|
||||
}
|
||||
Reference in New Issue
Block a user