feat: add gaming applications configuration for NixOS
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
{
|
||||
pkgs,
|
||||
pkgs-stable,
|
||||
...
|
||||
}: {
|
||||
home.packages = (with pkgs-stable; [
|
||||
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
# Game launchers
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
|
||||
lutris # Universal launcher for Wine, emulators, and native games
|
||||
#prismlauncher # Minecraft launcher with Fabric/Forge/Quilt support
|
||||
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
# Performance & overlays
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
|
||||
mangohud # FPS and hardware monitoring overlay
|
||||
goverlay # GUI for MangoHud and vkBasalt
|
||||
gamescope # Micro-compositor for better fullscreen, scaling and frame limiting
|
||||
gamemode # Requests performance optimizations while gaming
|
||||
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
# Proton & Wine
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
|
||||
protonup-qt # Install and update GE-Proton, Wine-GE, Luxtorpeda, etc.
|
||||
winetricks # Install Windows runtimes into Wine prefixes
|
||||
protontricks # Winetricks for Steam Proton prefixes
|
||||
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
# Vulkan layers
|
||||
# ─────────────────────────────────────────────────────────────
|
||||
|
||||
vkbasalt # Vulkan post-processing (CAS sharpening, FXAA, etc.)
|
||||
])
|
||||
|
||||
++ (with pkgs; [
|
||||
wineWow64Packages.staging # Wine (32/64-bit) with staging patches
|
||||
|
||||
steam-run # Run generic Linux binaries inside Steam's runtime
|
||||
appimage-run # Execute AppImages on NixOS
|
||||
]);
|
||||
}
|
||||
@@ -1,27 +1,8 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
home.packages = with pkgs; [
|
||||
steam
|
||||
protonup-ng
|
||||
];
|
||||
|
||||
xdg.desktopEntries = {
|
||||
Steam = {
|
||||
name = "Steam";
|
||||
exec = "${pkgs.steam}/bin/steam";
|
||||
icon = "steam";
|
||||
type = "Application";
|
||||
categories = [
|
||||
"Game"
|
||||
"Network"
|
||||
];
|
||||
terminal = false;
|
||||
};
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
# Better Steam scaling on HiDPI displays
|
||||
STEAM_FORCE_DESKTOPUI_SCALING = "1.25";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,13 +1,27 @@
|
||||
{ ... }: {
|
||||
# Steam runtime tweaks (user-session level, not NixOS system config)
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
|
||||
home.sessionVariables = {
|
||||
# Improves scaling consistency on HiDPI / Wayland setups
|
||||
STEAM_FORCE_DESKTOPUI_SCALING = "1.25";
|
||||
|
||||
# Optional Proton-related behavior toggles (safe defaults)
|
||||
PROTON_ENABLE_NVAPI = "1";
|
||||
PROTON_NO_ESYNC = "0";
|
||||
PROTON_NO_FSYNC = "0";
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
};
|
||||
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
gamescopeSession.enable = true;
|
||||
|
||||
remotePlay.openFirewall = true;
|
||||
localNetworkGameTransfers.openFirewall = true;
|
||||
|
||||
extraCompatPackages = with pkgs; [
|
||||
proton-ge-bin
|
||||
];
|
||||
};
|
||||
|
||||
programs.gamescope.enable = true;
|
||||
programs.gamemode.enable = true;
|
||||
|
||||
hardware.steam-hardware.enable = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user