diff options
author | Ludovic Courtès <ludo@gnu.org> | 2019-11-20 10:02:01 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2019-11-22 15:07:58 +0100 |
commit | d76df98fa59166c0c9f71ca41d664857d93e136d (patch) | |
tree | f597a66a066b89d1fc0d1345e8c05ba79224bc14 | |
parent | c0e9d470e1eb3eba0d2c2da3c6ffdd5665c4638b (diff) | |
download | guix-d76df98fa59166c0c9f71ca41d664857d93e136d.tar.gz |
environment: Document that '--manifest' can be repeated.
* tests/guix-environment.sh: Test 'guix environment' with two '-m' options. * doc/guix.texi (Invoking guix environment): Explain that '-m' can be passed multiple times.
-rw-r--r-- | doc/guix.texi | 3 | ||||
-rw-r--r-- | tests/guix-environment.sh | 23 |
2 files changed, 25 insertions, 1 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 1fec43a228..0dc49c3cda 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4802,7 +4802,8 @@ As an example, @var{file} might contain a definition like this @item --manifest=@var{file} @itemx -m @var{file} Create an environment for the packages contained in the manifest object -returned by the Scheme code in @var{file}. +returned by the Scheme code in @var{file}. This option can be repeated +several times, in which case the manifests are concatenated. This is similar to the same-named option in @command{guix package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same diff --git a/tests/guix-environment.sh b/tests/guix-environment.sh index fb1c1a022d..2faf38df06 100644 --- a/tests/guix-environment.sh +++ b/tests/guix-environment.sh @@ -84,6 +84,29 @@ echo "(use-modules (guix profiles) (gnu packages bootstrap)) guix environment --bootstrap --manifest=$tmpdir/manifest.scm --pure \ -- "$SHELL" -c 'test -f "$GUIX_ENVIRONMENT/bin/guile"' +# Make sure '--manifest' can be specified multiple times. +cat > "$tmpdir/manifest2.scm" <<EOF +(use-modules (guix) (guix profiles) + (guix build-system trivial) + (gnu packages bootstrap)) + +(packages->manifest + (list (package + (inherit %bootstrap-guile) + (name "eliug") + (build-system trivial-build-system) + (arguments + (quasiquote + (#:guile ,%bootstrap-guile + #:builder + (begin + (mkdir %output) + (mkdir (string-append %output "/eliug"))))))))) +EOF +guix environment --bootstrap -m "$tmpdir/manifest.scm" \ + -m "$tmpdir/manifest2.scm" --pure \ + -- "$SHELL" -c 'test -f "$GUIX_ENVIRONMENT/bin/guile" && test -d "$GUIX_ENVIRONMENT/eliug"' + # Make sure '-r' works as expected. rm -f "$gcroot" expected="`guix environment --bootstrap --ad-hoc guile-bootstrap \ |