diff options
Diffstat (limited to 'doc/guix.texi')
-rw-r--r-- | doc/guix.texi | 59 |
1 files changed, 48 insertions, 11 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index c91bc2021d..e23eab0f81 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -141,8 +141,10 @@ Distribution}. @node Installation @chapter Installation -This section describes the software requirements of Guix, as well as how -to install it and get ready to use it. +GNU Guix is available for download from its website at +@url{http://www.gnu.org/software/guix/}. This section describes the +software requirements of Guix, as well as how to install it and get +ready to use it. The build procedure for Guix is the same as for other GNU software, and is not covered here. Please see the files @file{README} and @@ -293,6 +295,10 @@ The following command-line options are supported: Take users from @var{group} to run build processes (@pxref{Setting Up the Daemon, build users}). +@item --no-substitutes +Do not use substitutes for build products. That is, always build things +locally instead of allowing downloads of pre-built binaries. + @item --cache-failures Cache build failures. By default, only successful builds are cached. @@ -447,11 +453,8 @@ scripts, etc. This direct correspondence allows users to make sure a given package installation matches the current state of their distribution, and helps maximize @dfn{reproducibility}. -@c FIXME: Remove footnote when it's implemented. This foundation allows Guix to support @dfn{transparent binary/source -deployment}@footnote{This feature is not implemented as of version -@value{VERSION}. Please contact @email{bug-guix@@gnu.org} for more -details.}. When a pre-built binary for a @file{/nix/store} path is +deployment}. When a pre-built binary for a @file{/nix/store} path is available from an external source, Guix just downloads it; otherwise, it builds the package from source, locally. @@ -537,9 +540,10 @@ multiple-output package. @itemx -r @var{package} Remove @var{package}. -@item --upgrade=@var{regexp} -@itemx -u @var{regexp} -Upgrade all the installed packages matching @var{regexp}. +@item --upgrade[=@var{regexp}] +@itemx -u [@var{regexp}] +Upgrade all the installed packages. When @var{regexp} is specified, upgrade +only installed packages whose name matches @var{regexp}. Note that this upgrades package to the latest version of packages found in the distribution currently installed. To update your distribution, @@ -810,8 +814,9 @@ the GNU mirrors defined in @code{(guix download)}. The @code{sha256} field specifies the expected SHA256 hash of the file being downloaded. It is mandatory, and allows Guix to check the integrity of the file. The @code{(base32 @dots{})} form introduces the -base32 representation of the hash. A convenient way to obtain this -information is with the @code{guix download} tool. +base32 representation of the hash. You can obtain this information with +the @code{guix hash} (@pxref{Invoking guix hash}) and @code{guix +download} tools. @item @cindex GNU Build System @@ -1090,6 +1095,7 @@ space. @menu * Invoking guix build:: Building packages from the command line. +* Invoking guix hash:: Computing the cryptographic hash of a file. @end menu @node Invoking guix build @@ -1185,6 +1191,37 @@ the @code{package-derivation} procedure of the @code{(guix packages)} module, and to the @code{build-derivations} procedure of the @code{(guix store)} module. +@node Invoking guix hash +@section Invoking @command{guix hash} + +The @command{guix hash} command allows to check the integrity of a file. +It is primarily a convenience tool for anyone contributing to the +distribution: it computes the cryptographic hash of a file, which can be +used in the definition of a package (@pxref{Defining Packages}). + +The general syntax is: + +@example +guix hash @var{option} @var{file} +@end example + +@command{guix hash} has the following option: + +@table @code + +@item --format=@var{fmt} +@itemx -f @var{fmt} +Write the hash in the given format. + +Supported formats: @code{nix-base32}, @code{base32}, @code{base16} +(@code{hex} and @code{hexadecimal} can be used as well). + +If the @option{--format} option is not specified, @command{guix hash} +will output the hash in @code{nix-base32}. This representation is used +in the definitions of packages. + +@end table + @c ********************************************************************* @node GNU Distribution @chapter GNU Distribution |