26 lines
758 B
Nix
26 lines
758 B
Nix
let
|
|
nixpkgs = import ../../..;
|
|
inherit (nixpkgs { }) haskellPackages lib;
|
|
maintainedPkgs = lib.filterAttrs (
|
|
_: v: builtins.length (v.meta.maintainers or [ ]) > 0
|
|
) haskellPackages;
|
|
brokenPkgs = lib.filterAttrs (_: v: v.meta.broken) maintainedPkgs;
|
|
transitiveBrokenPkgs = lib.filterAttrs (
|
|
_: v: !(builtins.tryEval (v.outPath or null)).success && !v.meta.broken
|
|
) maintainedPkgs;
|
|
infoList =
|
|
pkgs:
|
|
lib.concatStringsSep "\n" (
|
|
lib.mapAttrsToList (name: drv: "${name} ${(builtins.elemAt drv.meta.maintainers 0).github}") pkgs
|
|
);
|
|
in
|
|
{
|
|
report = ''
|
|
BROKEN:
|
|
${infoList brokenPkgs}
|
|
|
|
TRANSITIVE BROKEN:
|
|
${infoList transitiveBrokenPkgs}
|
|
'';
|
|
transitiveErrors = builtins.attrValues transitiveBrokenPkgs;
|
|
}
|