mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
doc: Improve wording and fix typos in "Introduction" and "Requirements".
* doc/guix.texi (Introduction, Requirements): Rephrase and fix typos.
This commit is contained in:
parent
9c782445fb
commit
4bfc4ea349
1 changed files with 19 additions and 19 deletions
|
@ -96,8 +96,8 @@ Documentation License.''
|
||||||
GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``ɡiːks''
|
GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``ɡiːks''
|
||||||
using the international phonetic alphabet (IPA).} is a functional
|
using the international phonetic alphabet (IPA).} is a functional
|
||||||
package management tool for the GNU system. Package management consists
|
package management tool for the GNU system. Package management consists
|
||||||
in all the activities that relate to building packages from source,
|
of all activities that relate to building packages from sources,
|
||||||
honoring the build-time and run-time dependencies on packages,
|
honoring their build-time and run-time dependencies,
|
||||||
installing packages in user environments, upgrading installed packages
|
installing packages in user environments, upgrading installed packages
|
||||||
to new versions or rolling back to a previous set, removing unused
|
to new versions or rolling back to a previous set, removing unused
|
||||||
software packages, etc.
|
software packages, etc.
|
||||||
|
@ -105,17 +105,17 @@ software packages, etc.
|
||||||
@cindex functional package management
|
@cindex functional package management
|
||||||
The term @dfn{functional} refers to a specific package management
|
The term @dfn{functional} refers to a specific package management
|
||||||
discipline. In Guix, the package build and installation process is seen
|
discipline. In Guix, the package build and installation process is seen
|
||||||
as a function, in the mathematical sense: that function takes inputs,
|
as a function, in the mathematical sense. That function takes inputs,
|
||||||
such as build scripts, a compiler, and libraries depended on, and
|
such as build scripts, a compiler, and libraries, and
|
||||||
returns the installed package. As a pure function, its result depends
|
returns an installed package. As a pure function, its result depends
|
||||||
solely on its inputs---for instance, it cannot refer to software or
|
solely on its inputs---for instance, it cannot refer to software or
|
||||||
scripts that were not explicitly passed as inputs. A build function
|
scripts that were not explicitly passed as inputs. A build function
|
||||||
always produces the same result when passed a given set of inputs. Last
|
always produces the same result when passed a given set of inputs. It
|
||||||
but not least, a build function cannot alter the system's environment in
|
cannot alter the system's environment in
|
||||||
any way; for instance, it cannot create, modify, or delete files outside
|
any way; for instance, it cannot create, modify, or delete files outside
|
||||||
of its build and installation directories. This is achieved by running
|
of its build and installation directories. This is achieved by running
|
||||||
build processes in dedicated ``chroots'', where only their explicit
|
build processes in isolated environments (or @dfn{chroots}), where only their
|
||||||
inputs are visible.
|
explicit inputs are visible.
|
||||||
|
|
||||||
@cindex store
|
@cindex store
|
||||||
The result of package build functions is @dfn{cached} in the file
|
The result of package build functions is @dfn{cached} in the file
|
||||||
|
@ -126,12 +126,11 @@ a hash of all the inputs used to build that package; thus, changing an
|
||||||
input yields a different directory name.
|
input yields a different directory name.
|
||||||
|
|
||||||
This approach is the foundation of Guix's salient features: support for
|
This approach is the foundation of Guix's salient features: support for
|
||||||
transactional package upgrades and rollback, per-user installation, and
|
transactional package upgrade and rollback, per-user installation, and
|
||||||
garbage collection of packages (@pxref{Features}).
|
garbage collection of packages (@pxref{Features}).
|
||||||
|
|
||||||
Guix has a command-line interface allowing users to build, install,
|
Guix has a command-line interface, which allows users to build, install,
|
||||||
upgrade, and remove packages, as well as a Scheme programming interface.
|
upgrade, and remove packages, as well as a Scheme programming interface.
|
||||||
The remainder of this manual describes them.
|
|
||||||
|
|
||||||
Last but not least, Guix is used to build a distribution of the GNU
|
Last but not least, Guix is used to build a distribution of the GNU
|
||||||
system, with many GNU and non-GNU free software packages. @xref{GNU
|
system, with many GNU and non-GNU free software packages. @xref{GNU
|
||||||
|
@ -175,19 +174,20 @@ following packages are also needed:
|
||||||
@item @url{http://gcc.gnu.org, GCC's g++}
|
@item @url{http://gcc.gnu.org, GCC's g++}
|
||||||
@end itemize
|
@end itemize
|
||||||
|
|
||||||
When a working installation of the Nix package manager is available, you
|
When a working installation of @url{http://nixos.org/nix/, the Nix package
|
||||||
|
manager} is available, you
|
||||||
can instead configure Guix with @code{--disable-daemon}. In that case,
|
can instead configure Guix with @code{--disable-daemon}. In that case,
|
||||||
@url{http://nixos.org/nix/, Nix} replaces the three dependencies above.
|
Nix replaces the three dependencies above.
|
||||||
|
|
||||||
Guix is compatible with Nix, so it is possible to share the same store
|
Guix is compatible with Nix, so it is possible to share the same store
|
||||||
between both. To do so, you must pass @command{configure} not only the
|
between both. To do so, you must pass @command{configure} not only the
|
||||||
same @code{--with-store-dir} value, but also the same
|
same @code{--with-store-dir} value, but also the same
|
||||||
@code{--localstatedir} value (the latter is essential because it
|
@code{--localstatedir} value. The latter is essential because it
|
||||||
specifies where the database that store meta-data about the store is
|
specifies where the database that stores metadata about the store is
|
||||||
located, among other things.) The default values are
|
located, among other things. The default values are
|
||||||
@code{--with-store-dir=/nix/store} and @code{--localstatedir=/nix/var}.
|
@code{--with-store-dir=/nix/store} and @code{--localstatedir=/nix/var}.
|
||||||
Note that @code{--disable-daemon} is orthogonal and is not required if
|
Note that @code{--disable-daemon} is not required if
|
||||||
your goal is to share the same store as Nix.
|
your goal is to share the store with Nix.
|
||||||
|
|
||||||
@node Setting Up the Daemon
|
@node Setting Up the Daemon
|
||||||
@section Setting Up the Daemon
|
@section Setting Up the Daemon
|
||||||
|
|
Loading…
Reference in a new issue