aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--doc.am12
-rw-r--r--doc/guix.texi55
3 files changed, 29 insertions, 40 deletions
diff --git a/.gitignore b/.gitignore
index eaa7dbd51a..47cb39584e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -112,3 +112,5 @@ GTAGS
/emacs/guix-helper.scm
/emacs/guix-init.el
/emacs/guix-profiles.el
+/doc/os-config-bare-bones.texi
+/doc/os-config-desktop.texi
diff --git a/doc.am b/doc.am
index c517e0f908..df85cfe2b0 100644
--- a/doc.am
+++ b/doc.am
@@ -25,12 +25,16 @@ EXTRA_DIST += \
doc/images/bootstrap-graph.eps \
doc/images/bootstrap-graph.pdf
+OS_CONFIG_EXAMPLES_TEXI = \
+ doc/os-config-bare-bones.texi \
+ doc/os-config-desktop.texi
+
# Bundle this file so that makeinfo finds it in out-of-source-tree builds.
-BUILT_SOURCES += doc/os-config.texi
-EXTRA_DIST += doc/os-config.texi
-MAINTAINERCLEANFILES = doc/os-config.texi
+BUILT_SOURCES += $(OS_CONFIG_EXAMPLES_TEXI)
+EXTRA_DIST += $(OS_CONFIG_EXAMPLES_TEXI)
+MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI)
-doc/os-config.texi: gnu/system/examples/bare-bones.tmpl
+doc/os-config-%.texi: gnu/system/examples/%.tmpl
$(MKDIR_P) "`dirname "$@"`"
cp "$<" "$@"
diff --git a/doc/guix.texi b/doc/guix.texi
index ea4a5c7b7c..33b1c2ed01 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -3925,20 +3925,14 @@ that end, the installation system comes with two text editors: GNU nano
It is better to store that file on the target root file system, say, as
@file{/mnt/etc/config.scm}.
-A minimal operating system configuration, with just the bare minimum and
-only a root account would look like this (on the installation system,
-this example is available as @file{/etc/configuration/bare-bones.scm}):
+@xref{Using the Configuration System}, for examples of operating system
+configurations. These examples are available under
+@file{/etc/configuration} in the installation image, so you can copy
+them and use them as a starting point for your own configuration.
-@example
-@include os-config.texi
-@end example
-
-@noindent
-For more information on @code{operating-system} declarations,
-@pxref{Using the Configuration System}.
-
-Once that is done, the new system must be initialized (remember that the
-target root file system is mounted under @file{/mnt}):
+Once you are done preparing the configuration file, the new system must
+be initialized (remember that the target root file system is mounted
+under @file{/mnt}):
@example
guix system init /mnt/etc/config.scm /mnt
@@ -4021,29 +4015,7 @@ kernel, initial RAM disk, and boot loader looks like this:
@findex operating-system
@lisp
-(use-modules (gnu) ; for 'user-account', '%base-services', etc.
- (gnu packages emacs) ; for 'emacs'
- (gnu services ssh)) ; for 'lsh-service'
-
-(operating-system
- (host-name "komputilo")
- (timezone "Europe/Paris")
- (locale "fr_FR.utf8")
- (bootloader (grub-configuration
- (device "/dev/sda")))
- (file-systems (cons (file-system
- (device "/dev/sda1") ; or partition label
- (mount-point "/")
- (type "ext3"))
- %base-file-systems))
- (users (list (user-account
- (name "alice")
- (group "users")
- (comment "Bob's sister")
- (home-directory "/home/alice"))))
- (packages (cons emacs %base-packages))
- (services (cons (lsh-service #:port 2222 #:root-login? #t)
- %base-services)))
+@include os-config-bare-bones.texi
@end lisp
This example should be self-describing. Some of the fields defined
@@ -4076,6 +4048,17 @@ generated as needed (@pxref{Defining Services}). @xref{operating-system
Reference}, for details about the available @code{operating-system}
fields.
+The configuration for a typical ``desktop'' usage, with the X11 display
+server, a desktop environment, network management, an SSH server, and
+more, would look like this:
+
+@lisp
+@include os-config-desktop.texi
+@end lisp
+
+@xref{Desktop Services}, for the exact list of services provided by
+@var{%desktop-services}.
+
Assuming the above snippet is stored in the @file{my-system-config.scm}
file, the @command{guix system reconfigure my-system-config.scm} command
instantiates that configuration, and makes it the default GRUB boot