diff options
Diffstat (limited to 'maintainers/scripts')
-rwxr-xr-x | maintainers/scripts/update.nix | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/maintainers/scripts/update.nix b/maintainers/scripts/update.nix index 2035950da3e3..2c9c0b3bf450 100755 --- a/maintainers/scripts/update.nix +++ b/maintainers/scripts/update.nix @@ -9,22 +9,24 @@ let pkgs = import ./../../default.nix { }; packagesWith = cond: return: set: - pkgs.lib.flatten - (pkgs.lib.mapAttrsToList - (name: pkg: - let - result = builtins.tryEval ( - if pkgs.lib.isDerivation pkg && cond name pkg - then [(return name pkg)] - else if pkg.recurseForDerivations or false || pkg.recurseForRelease or false - then packagesWith cond return pkg + pkgs.lib.unique + (pkgs.lib.flatten + (pkgs.lib.mapAttrsToList + (name: pkg: + let + result = builtins.tryEval ( + if pkgs.lib.isDerivation pkg && cond name pkg + then [(return name pkg)] + else if pkg.recurseForDerivations or false || pkg.recurseForRelease or false + then packagesWith cond return pkg + else [] + ); + in + if result.success then result.value else [] - ); - in - if result.success then result.value - else [] + ) + set ) - set ); packagesWithUpdateScriptAndMaintainer = maintainer': |