about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
author北雁 Cryolitia <Cryolitia@gmail.com>2024-05-26 22:03:50 +0800
committer北雁 Cryolitia <Cryolitia@gmail.com>2024-05-26 22:03:50 +0800
commitefef69a51dd48a12beb518b67c534238842249d8 (patch)
tree50bb10e09c044ff6914c1e811dc635f5107a6847 /nixos
parentb40e28775bc702f894d3a7da1fcf4aeaa2eff28c (diff)
nixos/steam: add option `extraPackages`
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/programs/steam.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/nixos/modules/programs/steam.nix b/nixos/modules/programs/steam.nix
index 31577ac2de454..245afc8d399b4 100644
--- a/nixos/modules/programs/steam.nix
+++ b/nixos/modules/programs/steam.nix
@@ -55,6 +55,7 @@ in {
             then [ package ] ++ extraPackages
             else [ package32 ] ++ extraPackages32;
         in prevLibs ++ additionalLibs;
+        extraPkgs = p: (cfg.extraPackages ++ lib.optionals (prev ? extraPkgs) (prev.extraPkgs p));
       } // lib.optionalAttrs (cfg.gamescopeSession.enable && gamescopeCfg.capSysNice)
       {
         buildFHSEnv = pkgs.buildFHSEnv.override {
@@ -71,6 +72,19 @@ in {
       '';
     };
 
+    extraPackages = lib.mkOption {
+      type = lib.types.listOf lib.types.package;
+      default = [ ];
+      example = lib.literalExpression ''
+        with pkgs; [
+          gamescope
+        ]
+      '';
+      description = ''
+        Additional packages to add to the Steam environment.
+      '';
+    };
+
     extraCompatPackages = lib.mkOption {
       type = lib.types.listOf lib.types.package;
       default = [ ];