profiles: 'profile-derivation' now honors #:system.
authorLudovic Courtès <ludo@gnu.org>
Sat, 4 Jun 2016 22:04:05 +0000 (00:04 +0200)
committerLudovic Courtès <ludo@gnu.org>
Sat, 4 Jun 2016 22:05:38 +0000 (00:05 +0200)
Fixes <http://bugs.gnu.org/23682>.
Reported by Ander GM <anthk@openmailbox.org>.

* guix/profiles.scm (profile-derivation): Pass #:system to
'gexp->derivation'.
* tests/guix-environment.sh: Add 'guix environment -s' test.

guix/profiles.scm
tests/guix-environment.sh

index 8355af7..ce8a11f 100644 (file)
@@ -811,6 +811,7 @@ the monadic procedures listed in HOOKS--such as an Info 'dir' file, etc."
                          #:search-paths search-paths)))
 
     (gexp->derivation "profile" builder
+                      #:system system
                       #:modules '((guix build profiles)
                                   (guix build union)
                                   (guix build utils)
index 5ad8dfa..0b5123a 100644 (file)
@@ -57,6 +57,21 @@ else
     test $? = 42
 fi
 
+case "`uname -m`" in
+    x86_64)
+       # On x86_64, we should be able to create a 32-bit environment.
+       guix environment --bootstrap --ad-hoc guile-bootstrap --pure    \
+            -- guile -c '(exit (string-prefix? "x86_64" %host-type))'
+       guix environment --bootstrap --ad-hoc guile-bootstrap --pure    \
+            -s i686-linux                                              \
+            -- guile -c '(exit (string-prefix? "i686" %host-type))'
+       ;;
+    *)
+       echo "nothing to do" >&2
+       ;;
+esac
+
+
 # Same as above, but with deprecated -E flag.
 if guix environment --bootstrap --ad-hoc guile-bootstrap --pure \
         -E "guile -c '(exit 42)'"