aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDavid Thompson <davet@gnu.org>2016-02-12 21:39:26 +0100
committerLudovic Courtès <ludo@gnu.org>2016-02-12 22:02:06 +0100
commit779aa003fbacbbcb6973f289b607d1d285009cec (patch)
tree74c05c5dd104dea4e27d9f28a30bdbfa8f15cdfe /doc
parente5f04c2dde258c14e714e748d17b1137fe0bf4f3 (diff)
downloadpatches-779aa003fbacbbcb6973f289b607d1d285009cec.tar
patches-779aa003fbacbbcb6973f289b607d1d285009cec.tar.gz
scripts: environment: Build environments as profiles.
Fixes <http://bugs.gnu.org/19816>. * guix/scripts/environment.scm (evaluate-input-search-paths) (build-inputs): Delete. (evaluate-profile-search-paths, strip-input-name) (package-or-package+output?, package-environment-inputs) (build-environment, inputs->profile-derivations): New procedures. (create-environment, show-search-paths, launch-environment) (launch-environment/container): Replace 'inputs' argument with 'profile' argument. (package+propagated-inputs): Strip off names off of input tuples. (options/resolve-packages): Handle input tuples that specify an output in expressions. (guix-environment): Convert inputs into a profile to use in the environment. Remove non-package inputs such as origins from environment inputs. * doc/guix.texi ("invoking guix environment"): Document package+output tuples for --expression option. * tests/guix-environment.sh: Update tests. * tests/guix-environment-container.sh: Likewise. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi7
1 files changed, 7 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index ee5cb5de24..89935b476c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -5093,6 +5093,13 @@ guix environment --ad-hoc -e '(@@ (gnu) %base-packages)'
starts a shell with all the GuixSD base packages available.
+The above commands only the use default output of the given packages.
+To select other outputs, two element tuples can be specified:
+
+@example
+guix environment --ad-hoc -e '(list (@ (gnu packages bash) bash) "include")'
+@end example
+
@item --load=@var{file}
@itemx -l @var{file}
Create an environment for the package or list of packages that the code