stdenv: generalise showPlatforms

This commit is contained in:
Weijia Wang 2023-03-23 23:47:11 +02:00
parent 6cc53be05a
commit b46c97e1dc

View file

@ -113,7 +113,9 @@ let
showLicenseOrSourceType = value: toString (map (v: v.shortName or "unknown") (lib.lists.toList value));
showLicense = showLicenseOrSourceType;
showPlatforms = value: lib.optionalString (builtins.isList value && builtins.all builtins.isString value) (toString value);
showPlatforms = attrs: toString (builtins.filter
(system: lib.meta.availableOn (lib.systems.elaborate { inherit system; }) attrs)
lib.platforms.all);
showSourceType = showLicenseOrSourceType;
pos_str = meta: meta.position or "«unknown-file»";
@ -369,7 +371,7 @@ let
else if !allowBroken && attrs.meta.broken or false then
{ valid = "no"; reason = "broken"; errormsg = "is marked as broken"; }
else if !allowUnsupportedSystem && hasUnsupportedPlatform attrs then
{ valid = "no"; reason = "unsupported"; errormsg = "is only supported on `${showPlatforms attrs.meta.platforms}` but not on requested ${hostPlatform.system}"; }
{ valid = "no"; reason = "unsupported"; errormsg = "is only supported on `${showPlatforms attrs}` but not on requested ${hostPlatform.system}"; }
else if !(hasAllowedInsecure attrs) then
{ valid = "no"; reason = "insecure"; errormsg = "is marked as insecure"; }