From abe5d2534bfb12f5f0d2695975a34fee229531cf Mon Sep 17 00:00:00 2001 From: adikro Date: Sat, 16 May 2026 18:27:36 +0200 Subject: added SLS steam --- os/srv/files.nix | 3 ++- os/srv/gaming.nix | 60 ++++++++++++++++++++++++++++++++++++++++++++----------- 2 files changed, 50 insertions(+), 13 deletions(-) (limited to 'os') 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 { -- cgit v1.3