aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-02-20 23:46:38 +0100
committerLudovic Courtès <ludo@gnu.org>2013-02-20 23:47:16 +0100
commitf651b477b701d086402c18665eca68b26c3bec6b (patch)
treee0d9d10df8488ddd63eff3be5c3f9d3c1d66b290 /doc
parent9bb2b96aabdbb245c4a409e96b25df2954cfe385 (diff)
downloadgnu-guix-f651b477b701d086402c18665eca68b26c3bec6b.tar
gnu-guix-f651b477b701d086402c18665eca68b26c3bec6b.tar.gz
Add "guix pull".
* guix/scripts/pull.scm: New file. * Makefile.am (MODULES): Add it. * doc/guix.texi (Invoking guix pull): New node. (Invoking guix package): Add cross-ref to it. * guix/ui.scm (config-directory): New procedure. * scripts/guix.in: When `GUIX_UNINSTALLED' is undefined, add $XDG_CONFIG_HOME/guix/latest to the search path. * po/POTFILES.in: Add guix/scripts/pull.scm.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi33
1 files changed, 33 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 9245bd00f5..6a9ebab1f6 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -393,6 +393,7 @@ management tools it provides.
* Features:: How Guix will make your life brighter.
* Invoking guix package:: Package installation, removal, etc.
* Invoking guix gc:: Running the garbage collector.
+* Invoking guix pull:: Fetching the latest Guix and distribution.
@end menu
@node Features
@@ -521,6 +522,11 @@ Remove @var{package}.
@itemx -u @var{regexp}
Upgrade all the installed packages matching @var{regexp}.
+Note that this upgrades package to the latest version of packages found
+in the distribution currently installed. To update your distribution,
+you should regularly run @command{guix pull} (@pxref{Invoking guix
+pull}).
+
@item --roll-back
Roll back to the previous @dfn{generation} of the profile---i.e., undo
the last transaction.
@@ -654,6 +660,33 @@ Show the list of live store files and directories.
@end table
+@node Invoking guix pull
+@section Invoking @command{guix pull}
+
+Packages are installed or upgraded to the latest version available in
+the distribution currently available on your local machine. To update
+that distribution, along with the Guix tools, you must run @command{guix
+pull}: the command downloads the latest Guix source code and package
+descriptions, and deploys it.
+
+On completion, @command{guix package} will use packages and package
+versions from this just-retrieved copy of Guix. Not only that, but all
+the Guix commands and Scheme modules will also be taken from that latest
+version. New @command{guix} sub-commands added by the update also
+become available.
+
+The @command{guix pull} command is usually invoked with no arguments,
+but it supports the following options:
+
+@table @code
+@item --verbose
+Produce verbose output, writing build logs to the standard error output.
+
+@item --bootstrap
+Use the bootstrap Guile to build the latest Guix. This option is only
+useful to Guix developers.
+@end table
+
@c *********************************************************************
@node Programming Interface
@chapter Programming Interface