about summary refs log tree commit diff
path: root/lib/systems
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
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')
-rw-r--r--lib/systems/inspect.nix2
-rw-r--r--lib/systems/parse.nix5
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index 1dcb4af35e6c..380c36c2b9b0 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -19,6 +19,7 @@ rec {
     Linux        = { kernel = kernels.linux; };
     SunOS        = { kernel = kernels.solaris; };
     FreeBSD      = { kernel = kernels.freebsd; };
+    Hurd         = { kernel = kernels.hurd; };
     NetBSD       = { kernel = kernels.netbsd; };
     OpenBSD      = { kernel = kernels.openbsd; };
     Windows      = { kernel = kernels.windows; };
@@ -27,7 +28,6 @@ rec {
 
     Arm32        = recursiveUpdate patterns.Arm patterns."32bit";
     Arm64        = recursiveUpdate patterns.Arm patterns."64bit";
-
   };
 
   predicates = mapAttrs'
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"