3 pkgs = import ./../../default.nix {
4 config.allowAliases = false;
7 maintainer_ = pkgs.lib.maintainers.${maintainer};
8 packagesWith = cond: return: prefix: set:
13 result = builtins.tryEval
15 if lib.isDerivation pkg && cond name pkg then
16 # Skip packages whose closure fails on evaluation.
17 # This happens for pkgs like `python27Packages.djangoql`
18 # that have disabled Python pkgs as dependencies.
19 builtins.seq pkg.outPath
20 [ (return "${prefix}${name}") ]
21 else if pkg.recurseForDerivations or false || pkg.recurseForRelease or false
22 # then packagesWith cond return pkg
23 then packagesWith cond return "${name}." pkg
27 if result.success then result.value
34 packages = packagesWith
37 if builtins.hasAttr "meta" pkg && builtins.hasAttr "maintainers" pkg.meta
40 if builtins.isList pkg.meta.maintainers
41 then builtins.elem maintainer_ pkg.meta.maintainers
42 else maintainer_ == pkg.meta.maintainers
52 pkgs.stdenv.mkDerivation {
53 name = "nixpkgs-update-script";
54 buildInputs = [ pkgs.hydra-check ];
57 echo "----------------------------------------------------------------"
59 echo "nix-shell maintainers/scripts/check-hydra-by-maintainer.nix --argstr maintainer SuperSandro2000"
61 echo "----------------------------------------------------------------"
65 unset shellHook # do not contaminate nested shells
66 echo "Please stand by"
67 echo nix-shell -p hydra-check --run "hydra-check ${builtins.concatStringsSep " " packages}"
68 nix-shell -p hydra-check --run "hydra-check ${builtins.concatStringsSep " " packages}"