summaryrefslogtreecommitdiffstats
path: root/maintainers
diff options
context:
space:
mode:
Diffstat (limited to 'maintainers')
-rwxr-xr-xmaintainers/scripts/update.nix25
1 files changed, 19 insertions, 6 deletions
diff --git a/maintainers/scripts/update.nix b/maintainers/scripts/update.nix
index 120cd5552f48..04723cb8a366 100755
--- a/maintainers/scripts/update.nix
+++ b/maintainers/scripts/update.nix
@@ -20,7 +20,9 @@ let
in
[x] ++ nubOn f xs;
- pkgs = import ./../../default.nix { };
+ pkgs = import ./../../default.nix {
+ overlays = [];
+ };
packagesWith = cond: return: set:
nubOn (pkg: pkg.updateScript)
@@ -67,9 +69,12 @@ let
let
attrSet = pkgs.lib.attrByPath (pkgs.lib.splitString "." path) null pkgs;
in
- packagesWith (name: pkg: builtins.hasAttr "updateScript" pkg)
- (name: pkg: pkg)
- attrSet;
+ if attrSet == null then
+ builtins.throw "Attribute path `${path}` does not exists."
+ else
+ packagesWith (name: pkg: builtins.hasAttr "updateScript" pkg)
+ (name: pkg: pkg)
+ attrSet;
packageByName = name:
let
@@ -122,9 +127,17 @@ let
packageData = package: {
name = package.name;
pname = (builtins.parseDrvName package.name).name;
- updateScript = pkgs.lib.toList package.updateScript;
+ updateScript = map builtins.toString (pkgs.lib.toList package.updateScript);
};
+ packagesJson = pkgs.writeText "packages.json" (builtins.toJSON (map packageData packages));
+
+ optionalArgs =
+ pkgs.lib.optional (max-workers != null) "--max-workers=${max-workers}"
+ ++ pkgs.lib.optional (keep-going == "true") "--keep-going";
+
+ args = [ packagesJson ] ++ optionalArgs;
+
in pkgs.stdenv.mkDerivation {
name = "nixpkgs-update-script";
buildCommand = ''
@@ -139,6 +152,6 @@ in pkgs.stdenv.mkDerivation {
'';
shellHook = ''
unset shellHook # do not contaminate nested shells
- exec ${pkgs.python3.interpreter} ${./update.py} ${pkgs.writeText "packages.json" (builtins.toJSON (map packageData packages))}${pkgs.lib.optionalString (max-workers != null) " --max-workers=${max-workers}"}${pkgs.lib.optionalString (keep-going == "true") " --keep-going"}
+ exec ${pkgs.python3.interpreter} ${./update.py} ${builtins.concatStringsSep " " args}
'';
}