diff options
| author | adikro <adikro@disroot.org> | 2026-05-16 18:27:36 +0200 |
|---|---|---|
| committer | adikro <adikro@disroot.org> | 2026-05-16 18:27:36 +0200 |
| commit | abe5d2534bfb12f5f0d2695975a34fee229531cf (patch) | |
| tree | aa38efd0f9a6f89d1c8d9c013b30d9164e563139 /os/srv | |
| parent | 31c293d72740180ca1272c76e96a1c6c87b9e195 (diff) | |
added SLS steam
Diffstat (limited to 'os/srv')
| -rw-r--r-- | os/srv/files.nix | 3 | ||||
| -rw-r--r-- | os/srv/gaming.nix | 60 |
2 files changed, 50 insertions, 13 deletions
diff --git a/os/srv/files.nix b/os/srv/files.nix index f5e4ebb..d4b9363 100644 --- a/os/srv/files.nix +++ b/os/srv/files.nix @@ -34,7 +34,8 @@ in environment.systemPackages = with pkgs; [ pcmanfm file-roller - dua + gdu + duc pxz pigz ]; diff --git a/os/srv/gaming.nix b/os/srv/gaming.nix index 05908f3..6ed977c 100644 --- a/os/srv/gaming.nix +++ b/os/srv/gaming.nix @@ -3,6 +3,7 @@ lib, pkgs, username, + inputs, ... }: let @@ -19,7 +20,10 @@ in default = cfg.enable; }; games.enable = lib.mkEnableOption "enables specific native games"; - steam.enable = lib.mkEnableOption "enables steam utilities"; + steam = { + enable = lib.mkEnableOption "enables the steam launcher"; + enableSls = lib.mkEnableOption "enables the SLS Steam library modification"; + }; vr.enable = lib.mkEnableOption "enables vr support"; }; @@ -69,17 +73,49 @@ in }) # --- STEAM --- - (lib.mkIf cfg.steam.enable { - programs.steam = { - enable = true; - localNetworkGameTransfers.openFirewall = true; - dedicatedServer.openFirewall = true; - remotePlay.openFirewall = false; - extest.enable = true; - protontricks.enable = true; - }; - environment.systemPackages = with pkgs; [ steamtinkerlaunch ]; - }) + (lib.mkIf cfg.steam.enable ( + lib.mkMerge [ + { + programs.steam = { + enable = true; + localNetworkGameTransfers.openFirewall = true; + dedicatedServer.openFirewall = true; + remotePlay.openFirewall = false; + extest.enable = true; + protontricks.enable = true; + }; + environment.systemPackages = with pkgs; [ steamtinkerlaunch ]; + } + + (lib.mkIf cfg.steam.enableSls { + home-manager.users.${username} = { + imports = [ inputs.sls-steam.homeModules.sls-steam ]; + + services.sls-steam.config = { + DisableFamilyShareLock = true; + SafeMode = false; + }; + home.packages = [ inputs.sls-steam.packages.${pkgs.system}.wrapped ]; + + xdg.desktopEntries = { + "SLSsteam" = { + name = "SLSsteam"; + comment = "Library modification for Steam"; + exec = "${lib.getExe' inputs.sls-steam.packages.${pkgs.system}.wrapped "SLSsteam"} %U"; + icon = "steam"; + terminal = false; + type = "Application"; + categories = [ + "Game" + "Utility" + ]; + mimeType = [ "x-scheme-handler/steamcmd" ]; + }; + }; + }; + }) + ] + )) # --- VR SUPPORT --- (lib.mkIf cfg.vr.enable { |
