diff options
author | sternenseemann <sternenseemann@systemli.org> | 2022-04-26 22:17:48 +0200 |
---|---|---|
committer | sternenseemann <sternenseemann@systemli.org> | 2022-05-23 21:25:04 +0200 |
commit | acb063701a6a209a514bbdefacc9bce22332ef60 (patch) | |
tree | 37cfe400a5a5ec8f7792f52060363f7aa5cff213 /pkgs/stdenv | |
parent | fe836f35644a152c5a38d09e162694fec9755b6b (diff) | |
download | nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar.gz nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar.bz2 nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar.lz nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar.xz nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.tar.zst nixpkgs-acb063701a6a209a514bbdefacc9bce22332ef60.zip |
lib.systems.elaborate: expose canExecute predicate over isCompatible
canExecute is like isCompatible, but also checks that the Kernels are _equal_, i.e. that both platforms use the same syscall interface. This is crucial in order to actually be able to execute binaries for the other platform. isCompatible is dropped, since it has changed semantically and there's no use case left in nixpkgs.
Diffstat (limited to 'pkgs/stdenv')
-rw-r--r-- | pkgs/stdenv/linux/default.nix | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 5c5ca64b1e9..ace0d704b72 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -31,7 +31,7 @@ # compatible with or current architecture. getCompatibleTools = lib.foldl (v: system: if v != null then v - else if localSystem.isCompatible (lib.systems.elaborate { inherit system; }) then archLookupTable.${system} + else if localSystem.canExecute (lib.systems.elaborate { inherit system; }) then archLookupTable.${system} else null) null (lib.attrNames archLookupTable); archLookupTable = table.${localSystem.libc} |