diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-09-24 11:26:30 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-09-24 14:06:09 +0200 |
commit | 300868ba57e3786dae399f3cac4fff39ad6c316f (patch) | |
tree | f7fb1e6d2e2e7cf0aec10f233d1286cd3f855b57 /doc | |
parent | c107b54108f6640504371d414f8a47191b92dbb8 (diff) | |
download | guix-300868ba57e3786dae399f3cac4fff39ad6c316f.tar guix-300868ba57e3786dae399f3cac4fff39ad6c316f.tar.gz |
guix build: Add -L/--load-path as a common option.
* guix/scripts/build.scm (show-build-options-help): Document -L.
(%standard-build-options): Add -L/--load-path.
* tests/guix-package.sh: Test it.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/guix.texi | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index a63602162d..bdba88e2e2 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2492,6 +2492,14 @@ following: @table @code +@item --load-path=@var{directory} +@itemx -L @var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tools. + @item --keep-failed @itemx -K Keep the build tree of failed builds. Thus, if a build fail, its build @@ -3951,17 +3959,22 @@ Reference Manual}). For instance, the @code{(gnu packages emacs)} module exports a variable named @code{emacs}, which is bound to a @code{<package>} object (@pxref{Defining Packages}). -The @code{(gnu packages @dots{})} module name space is special: it is +The @code{(gnu packages @dots{})} module name space is automatically scanned for packages by the command-line tools. For instance, when running @code{guix package -i emacs}, all the @code{(gnu packages @dots{})} modules are scanned until one that exports a package object whose name is @code{emacs} is found. This package search facility is implemented in the @code{(gnu packages)} module. +@cindex customization, of packages Users can store package definitions in modules with different -names---e.g., @code{(my-packages emacs)}. In that case, commands such -as @command{guix package} and @command{guix build} have to be used with -the @code{-e} option so that they know where to find the package. +names---e.g., @code{(my-packages emacs)}. These package definitions +will not be visible by default. Thus, users can invoke commands such as +@command{guix package} and @command{guix build} have to be used with the +@code{-e} option so that they know where to find the package, or use the +@code{-L} option of these commands to make those modules visible +(@pxref{Invoking guix build, @code{--load-path}}). The latter makes it +easy to customize the distribution. The distribution is fully @dfn{bootstrapped} and @dfn{self-contained}: each package is built based solely on other packages in the |