filterPackages: add fallbacks for missing attrs (#32)

Co-authored-by: Pacman99 <pachum99@gmail.com>
This commit is contained in:
Pacman99 2021-05-11 12:05:05 -07:00 committed by GitHub
parent 2ebf2558e5
commit b543720b25
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 3 deletions

View File

@ -119,7 +119,7 @@ let
# {
# hello = «derivation»;
# }
filterPackages = system: packages: import ./filterPackages.nix system packages;
filterPackages = import ./filterPackages.nix { inherit allSystems; };
# Returns the structure used by `nix app`
mkApp =

View File

@ -1,3 +1,4 @@
{ allSystems }:
system: packages:
let
# Adopted from nixpkgs.lib
@ -18,11 +19,12 @@ let
let
inherit (builtins) isAttrs;
isDerivation = x: isAttrs x && x ? type && x.type == "derivation";
platforms = meta.hydraPlatforms or meta.platforms or [ ];
isBroken = meta.broken or false;
platforms = meta.hydraPlatforms or meta.platforms or allSystems;
in
# check for isDerivation, so this is independently useful of
# flattenTree, which also does filter on derviations
isDerivation v && !meta.broken && builtins.elem system platforms
isDerivation v && !isBroken && builtins.elem system platforms
;
in
filterAttrs sieve packages