37
hosts/common/user/configs/gui/gaming/default.nix
Normal file
37
hosts/common/user/configs/gui/gaming/default.nix
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
user ? throw "user argument is required",
|
||||||
|
home ? throw "home argument is required",
|
||||||
|
}:
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
environment.persistence."/persist" = {
|
||||||
|
"${home}/.steam" = { };
|
||||||
|
"${home}/.local/share/Steam" = { };
|
||||||
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
steam = {
|
||||||
|
enable = true;
|
||||||
|
localNetworkGameTransfers.openFirewall = true;
|
||||||
|
extest.enable = true;
|
||||||
|
protontricks.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
gamescope = {
|
||||||
|
enable = true;
|
||||||
|
args = [
|
||||||
|
"--rt"
|
||||||
|
"-f"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
gamemode.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.${user} = {
|
||||||
|
home = {
|
||||||
|
packages = with pkgs; [ protonup ];
|
||||||
|
sessionVariables.STEAM_EXTRA_COMPAT_TOOLS_PATHS = "${home}/.steam/root/compatibilitytools.d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@@ -11,4 +11,11 @@
|
|||||||
### Third-party Services
|
### Third-party Services
|
||||||
|
|
||||||
- [ ] Firefox
|
- [ ] Firefox
|
||||||
|
- [ ] Authenticate
|
||||||
|
|
||||||
- [ ] Spotify
|
- [ ] Spotify
|
||||||
|
- [ ] Authenticate
|
||||||
|
|
||||||
|
- [ ] Steam
|
||||||
|
- [ ] Authenticate
|
||||||
|
- [ ] `protonup`
|
||||||
|
@@ -105,6 +105,25 @@
|
|||||||
rocmSupport = true;
|
rocmSupport = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
steam.package = pkgs.steam.override {
|
||||||
|
extraEnv.STEAM_FORCE_DESKTOPUI_SCALING = 1.25;
|
||||||
|
};
|
||||||
|
|
||||||
|
gamescope = {
|
||||||
|
env = {
|
||||||
|
__NV_PRIME_RENDER_OFFLOAD = "1";
|
||||||
|
__VK_LAYER_NV_optimus = "NVIDIA_only";
|
||||||
|
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
||||||
|
};
|
||||||
|
|
||||||
|
args = [
|
||||||
|
"-W 2560"
|
||||||
|
"-H 1600"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
{
|
{
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings = {
|
||||||
|
@@ -40,6 +40,7 @@ in
|
|||||||
(import ../../common/user/configs/gui/cliphist { inherit user home; })
|
(import ../../common/user/configs/gui/cliphist { inherit user home; })
|
||||||
(import ../../common/user/configs/gui/emoji { inherit user home; })
|
(import ../../common/user/configs/gui/emoji { inherit user home; })
|
||||||
(import ../../common/user/configs/gui/firefox { inherit user home; })
|
(import ../../common/user/configs/gui/firefox { inherit user home; })
|
||||||
|
(import ../../common/user/configs/gui/gaming { inherit user home; })
|
||||||
(import ../../common/user/configs/gui/gtk { inherit user home; })
|
(import ../../common/user/configs/gui/gtk { inherit user home; })
|
||||||
(import ../../common/user/configs/gui/hyprland { inherit user home; })
|
(import ../../common/user/configs/gui/hyprland { inherit user home; })
|
||||||
(import ../../common/user/configs/gui/hyprshot { inherit user home; })
|
(import ../../common/user/configs/gui/hyprshot { inherit user home; })
|
||||||
|
Reference in New Issue
Block a user