about summary refs log tree commit diff
path: root/lib/systems/parse.nix
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2017-05-22 12:42:03 -0400
committerJohn Ericson <Ericson2314@Yahoo.com>2017-05-22 13:55:26 -0400
commiteaa509f33a7058bd819f02a1da32c4ed372e6b49 (patch)
tree1e8612d7f14c6958ff4f45f8f8639d5b55e219d0 /lib/systems/parse.nix
parent1dc6f15de995da2d0351b34c40215336e219cf82 (diff)
downloadnixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar.gz
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar.bz2
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar.lz
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar.xz
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.tar.zst
nixlib-eaa509f33a7058bd819f02a1da32c4ed372e6b49.zip
stdenv: Rename `isGNU` to `isHurd` as GNU is a userland
Elsewhere, things called GNU indeed includes GNU/Linux or GNU/Hurd, but this
predicate was defined excluding Linux regardless of userland.
Diffstat (limited to 'lib/systems/parse.nix')
-rw-r--r--lib/systems/parse.nix5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index b94caeb57589..34272b45b8b5 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -77,6 +77,7 @@ rec {
   {
     darwin  = { execFormat = macho;   families = { inherit unix; }; };
     freebsd = { execFormat = elf;     families = { inherit unix bsd; }; };
+    hurd    = { execFormat = elf;     families = { inherit unix; }; };
     linux   = { execFormat = elf;     families = { inherit unix; }; };
     netbsd  = { execFormat = elf;     families = { inherit unix bsd; }; };
     none    = { execFormat = unknown; families = { inherit unix; }; };
@@ -113,7 +114,9 @@ rec {
   mkSkeletonFromList = l: {
     "2" = # We only do 2-part hacks for things Nix already supports
       if elemAt l 1 == "cygwin"
-        then { cpu = elemAt l 0;                      kernel = "windows"; abi = "cygnus";    }
+        then { cpu = elemAt l 0;                      kernel = "windows";  abi = "cygnus";   }
+      else if elemAt l 1 == "gnu"
+        then { cpu = elemAt l 0;                      kernel = "hurd";     abi = "gnu";      }
       else   { cpu = elemAt l 0;                      kernel = elemAt l 1;                   };
     "3" = # Awkwards hacks, beware!
       if elemAt l 1 == "apple"