diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2018-03-27 11:42:51 -0400 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2018-03-27 11:59:59 -0400 |
commit | f8ed783f4f0f2239f0c084fe1700529304376697 (patch) | |
tree | cd132fc0a5ab9e4f24d9f8916efb2258aff06f7f /pkgs/stdenv/generic/check-meta.nix | |
parent | 26e8d58cb545004acb7cbd00db81a402923a2445 (diff) | |
download | nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar.gz nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar.bz2 nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar.lz nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar.xz nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.tar.zst nixlib-f8ed783f4f0f2239f0c084fe1700529304376697.zip |
meta: Simplify platform check logic
Code golf or readability, you decide
Diffstat (limited to 'pkgs/stdenv/generic/check-meta.nix')
-rw-r--r-- | pkgs/stdenv/generic/check-meta.nix | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 2f4ff62f767e..26522ad6045e 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -174,9 +174,10 @@ let else "key '${k}' is unrecognized; expected one of: \n\t [${lib.concatMapStringsSep ", " (x: "'${x}'") (lib.attrNames metaTypes)}]"; checkMeta = meta: if shouldCheckMeta then lib.remove null (lib.mapAttrsToList checkMetaAttr meta) else []; - checkPlatform = attrs: - (!(attrs ? meta.platforms) || lib.any (lib.meta.platformMatch hostPlatform) attrs.meta.platforms) && - (!(attrs ? meta.badPlatforms && lib.any (lib.meta.platformMatch hostPlatform) attrs.meta.badPlatforms)); + checkPlatform = attrs: let + anyMatch = lib.any (lib.meta.platformMatch hostPlatform); + in anyMatch (attrs.meta.platforms or lib.platforms.all) && + ! anyMatch (attrs.meta.badPlatforms or []); # Check if a derivation is valid, that is whether it passes checks for # e.g brokenness or license. |