stdenv: fix eval of pkgsMusl packages with platform constraints
Before the change `pkgsMusl.adobe-reader` was failing the interpreter: $ nix-instantiate --eval --strict --expr 'with import ./. {}; builtins.tryEval pkgsMusl.adobe-reader' error: error: evaluation aborted with the following error message: 'unsupported platform for the pure Linux stdenv' After the change `pkgsMusl.adobe-reader` returns catchable excation: $ nix-instantiate --eval --strict --expr 'with import ./. {}; builtins.tryEval pkgsMusl.adobe-reader' { success = false; value = false; } Noticed when was exploring `nixpkgs` for uncatchable evaluation errors. Ideally those should only happen when there is a code bug in the use site. In this case it's just a package with incompatible constraints for `musl`. Changed uncatchable `abort` to `throw`.
This commit is contained in:
parent
26270cb605
commit
3f3e74bc93
@ -89,9 +89,9 @@
|
|||||||
else null) null (lib.attrNames archLookupTable);
|
else null) null (lib.attrNames archLookupTable);
|
||||||
|
|
||||||
archLookupTable = table.${localSystem.libc}
|
archLookupTable = table.${localSystem.libc}
|
||||||
or (abort "unsupported libc for the pure Linux stdenv");
|
or (throw "unsupported libc for the pure Linux stdenv");
|
||||||
files = archLookupTable.${localSystem.system} or (if getCompatibleTools != null then getCompatibleTools
|
files = archLookupTable.${localSystem.system} or (if getCompatibleTools != null then getCompatibleTools
|
||||||
else (abort "unsupported platform for the pure Linux stdenv"));
|
else (throw "unsupported platform for the pure Linux stdenv"));
|
||||||
in files
|
in files
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user