summaryrefslogtreecommitdiff
path: root/doc/guix.texi
diff options
context:
space:
mode:
Diffstat (limited to 'doc/guix.texi')
-rw-r--r--doc/guix.texi75
1 files changed, 57 insertions, 18 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 2c144ee7e4..8affc235e1 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -682,6 +682,20 @@ chmod +x guix-install.sh
./guix-install.sh
@end example
+If you're running Debian or a derivative such as Ubuntu, you can instead
+install the package (it might be a version older than @value{VERSION}
+but you can update it afterwards by running @samp{guix pull}):
+
+@example
+sudo apt install guix
+@end example
+
+Likewise on openSUSE:
+
+@example
+sudo zypper install guix
+@end example
+
When you're done, @pxref{Application Setup} for extra configuration you
might need, and @ref{Getting Started} for your first steps!
@end quotation
@@ -7379,8 +7393,25 @@ The build system that should be used to build the package (@pxref{Build
Systems}).
@item @code{arguments} (default: @code{'()})
-The arguments that should be passed to the build system. This is a
-list, typically containing sequential keyword-value pairs.
+The arguments that should be passed to the build system (@pxref{Build
+Systems}). This is a list, typically containing sequential
+keyword-value pairs, as in this example:
+
+@lisp
+(package
+ (name "example")
+ ;; several fields omitted
+ (arguments
+ (list #:tests? #f ;skip tests
+ #:make-flags #~'("VERBOSE=1") ;pass flags to 'make'
+ #:configure-flags #~'("--enable-frobbing"))))
+@end lisp
+
+The exact set of supported keywords depends on the build system
+(@pxref{Build Systems}), but you will find that almost all of them honor
+@code{#:configure-flags}, @code{#:make-flags}, @code{#:tests?}, and
+@code{#:phases}. The @code{#:phases} keyword in particular lets you
+modify the set of build phases for your package (@pxref{Build Phases}).
@item @code{inputs} (default: @code{'()})
@itemx @code{native-inputs} (default: @code{'()})
@@ -9713,8 +9744,7 @@ phase before the @code{build} phase, called
(substitute* "Makefile"
(("PREFIX =.*")
(string-append "PREFIX = "
- out "\n")))
- #true))))))))
+ out "\n")))))))))))
@end lisp
The new phase that is inserted is written as an anonymous procedure,
@@ -13724,7 +13754,6 @@ gnu/packages/emacs.scm:856:13: emacs-auctex would be upgraded from 11.88.6 to 11
@end example
@item --list-updaters
-@itemx -L
List available updaters and exit (see @option{--type} above).
For each updater, display the fraction of packages it covers; at the
@@ -13855,6 +13884,7 @@ the user whether to download it or not. This is the default behavior.
Use @var{host} as the OpenPGP key server when importing a public key.
@item --load-path=@var{directory}
+@itemx -L @var{directory}
Add @var{directory} to the front of the package module search path
(@pxref{Package Modules}).
@@ -14921,8 +14951,8 @@ The command output looks like this:
@smallexample
$ guix challenge --substitute-urls="https://@value{SUBSTITUTE-SERVER-1} https://guix.example.org"
-updating list of substitutes from 'https://@value{SUBSTITUTE-SERVER-1}'... 100.0%
-updating list of substitutes from 'https://guix.example.org'... 100.0%
+updating substitutes from 'https://@value{SUBSTITUTE-SERVER-1}'... 100.0%
+updating substitutes from 'https://guix.example.org'... 100.0%
/gnu/store/@dots{}-openssl-1.0.2d contents differ:
local hash: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q
https://@value{SUBSTITUTE-SERVER-1}/nar/@dots{}-openssl-1.0.2d: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q
@@ -15209,7 +15239,7 @@ Here's a sample run:
$ guix weather --substitute-urls=https://guix.example.org
computing 5,872 package derivations for x86_64-linux...
looking for 6,128 store items on https://guix.example.org..
-updating list of substitutes from 'https://guix.example.org'... 100.0%
+updating substitutes from 'https://guix.example.org'... 100.0%
https://guix.example.org
43.4% substitutes available (2,658 out of 6,128)
7,032.5 MiB of nars (compressed)
@@ -15830,6 +15860,11 @@ file, the @command{guix system reconfigure my-system-config.scm} command
instantiates that configuration, and makes it the default GRUB boot
entry (@pxref{Invoking guix system}).
+@quotation Note
+We recommend that you keep this @file{my-system-config.scm} file safe
+and under version control to easily track changes to your configuration.
+@end quotation
+
The normal way to change the system configuration is by updating this
file and re-running @command{guix system reconfigure}. One should never
have to touch files in @file{/etc} or to run commands that modify the
@@ -18699,7 +18734,7 @@ starting with static network configuration.
This is the type for statically-configured network interfaces. Its
value must be a list of @code{static-networking} records. Each of them
declares a set of @dfn{addresses}, @dfn{routes}, and @dfn{links}, as
-show below.
+shown below.
@cindex network interface controller (NIC)
@cindex NIC, networking interface controller
@@ -21105,9 +21140,11 @@ You can do that directly, like this (you need to use the
(list cups-filters epson-inkjet-printer-escpr hplip-minimal))))
@end lisp
-Note: If you wish to use the Qt5 based GUI which comes with the hplip
+@quotation Note
+If you wish to use the Qt5 based GUI which comes with the hplip
package then it is suggested that you install the @code{hplip} package,
either in your OS configuration file or as your user.
+@end quotation
The available configuration parameters follow. Each parameter
definition is preceded by its type; for example, @samp{string-list foo}
@@ -25555,13 +25592,15 @@ example if you want your users to have addresses like
@samp{"john.smith@@example.com"} then you need to add a host
@samp{"example.com"}. All options in this list will apply only to this host.
-Note: the name @emph{virtual} host is used in configuration to avoid confusion with
+@quotation Note
+The name @emph{virtual} host is used in configuration to avoid confusion with
the actual physical host that Prosody is installed on. A single Prosody
instance can serve many domains, each one defined as a VirtualHost entry in
Prosody's configuration. Conversely a server that hosts a single domain would
have just one VirtualHost entry.
See @url{https://prosody.im/doc/configure#virtual_host_settings}.
+@end quotation
Available @code{virtualhost-configuration} fields are:
@@ -26162,8 +26201,10 @@ After setting this option, it is recommend that you inspect your Mumble
server log to ensure that Mumble is using the cipher suites that you
expected it to.
-Note: Changing this option may impact the backwards compatibility of your
+@quotation Note
+Changing this option may impact the backwards compatibility of your
Mumble-Server server, and can remove the ability for older Mumble clients to be able to connect to it.
+@end quotation
@item @code{public-registration} (default: @code{#f})
Must be a @code{<mumble-server-public-registration-configuration>}
@@ -37538,6 +37579,10 @@ $ guix system extension-graph @var{file} | xdot -
shows the extension relations among services.
+@quotation Note
+The @command{dot} program is provided by the @code{graphviz} package.
+@end quotation
+
@anchor{system-shepherd-graph}
@item shepherd-graph
Emit to standard output the @dfn{dependency
@@ -38862,12 +38907,6 @@ Return a G-expression that contains the values corresponding to the
disk by using something like @code{mixed-text-file}.
@end deffn
-@deffn {Scheme Procedure} validate-configuration @var{configuration}
-@var{fields}
-Type-check @var{fields}, a list of field names of @var{configuration}, a
-configuration record created by @code{define-configuration}.
-@end deffn
-
@deffn {Scheme Procedure} empty-serializer @var{field-name} @var{value}
A serializer that just returns an empty string. The
@code{serialize-package} procedure is an alias for this.