summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-03-01 21:12:32 +0100
committerLudovic Courtès <ludo@gnu.org>2013-03-01 21:54:56 +0100
commit5d4b411f8a3372455a8c92d10a28e88e9edba6eb (patch)
treea5ae425d43fa307dc3e86166d1901905727c66b3 /doc
parent431a35518f74f50238ccc106a6a3121a9fcc11b9 (diff)
downloadguix-5d4b411f8a3372455a8c92d10a28e88e9edba6eb.tar.gz
guix package: Add `--install-from-expression'.
* guix/scripts/package.scm (read/eval-package-expression): New
  procedure.
  (show-help): Add `-e'.
  (%options): Likewise.
  (guix-package)[process-actions]: Handle ('install . p) pairs, where P
  is a package.
* tests/guix-package.sh: Add `boot_make_drv'.  Use `-i $boot_make_drv'
  once, and then use `-e $boot_make'.
* doc/guix.texi (Invoking guix package): Document `-e'.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi13
1 files changed, 13 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index ec784ce349..a07c277e70 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -514,6 +514,19 @@ Thus, when installing MPC, the MPFR and GMP libraries also get installed
 in the profile; removing MPC also removes MPFR and GMP---unless they had
 also been explicitly installed independently.
 
+@item --install-from-expression=@var{exp}
+@itemx -e @var{exp}
+Install the package @var{exp} evaluates to.
+
+@var{exp} must be a Scheme expression that evaluates to a
+@code{<package>} object.  This option is notably useful to disambiguate
+between same-named variants of a package, with expressions such as
+@code{(@@ (gnu packages base) guile-final)}.
+
+Note that this option installs the first output of the specified
+package, which may be insufficient when needing a specific output of a
+multiple-output package.
+
 @item --remove=@var{package}
 @itemx -r @var{package}
 Remove @var{package}.