summaryrefslogtreecommitdiff
path: root/os
diff options
context:
space:
mode:
authoradikro <adikro@disroot.org>2026-05-16 18:27:36 +0200
committeradikro <adikro@disroot.org>2026-05-16 18:27:36 +0200
commitabe5d2534bfb12f5f0d2695975a34fee229531cf (patch)
treeaa38efd0f9a6f89d1c8d9c013b30d9164e563139 /os
parent31c293d72740180ca1272c76e96a1c6c87b9e195 (diff)
added SLS steam
Diffstat (limited to 'os')
-rw-r--r--os/srv/files.nix3
-rw-r--r--os/srv/gaming.nix60
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 {