diff --git a/doc/manual/installation.xml b/doc/manual/installation.xml
new file mode 100644
index 00000000000..fe3a1a7e72e
--- /dev/null
+++ b/doc/manual/installation.xml
@@ -0,0 +1,241 @@
+
+
+Installation
+
+
+
+
+
+
+Building the installation CD
+
+Instead of building an installation CD, you could just download
+one from . If you want
+(or need) to build it yourself:
+
+
+
+ Make sure that you have a very
+ recent pre-release version of Nix installed ().
+ The NixOS Nix expressions frequently use bleading-edge features. If
+ you get any kind of expression evaluation error, try to upgrade your
+ Nix.
+
+ Optional but strongly recommended (and currently
+ required for building the
+ x86_64 ISO): subscribe/pull from the Nixpkgs
+ channel to speed up building, i.e.,
+
+
+$ nix-channel --add http://nix.cs.uu.nl/dist/nix/channels-v3/nixpkgs-unstable
+$ nix-channel --update
+
+
+
+ Check out NixOS from as
+ nixos.
+
+ If you don’t already have Nixpkgs checkout, Check
+ out Nixpkgs from as
+ nixpkgs.
+
+ In the directory nixos, make a
+ symbolic link pkgs to the pkgs
+ directory of the Nixpkgs tree, e.g.,
+
+
+$ ln -s nixpkgs/pkgs nixos/
+
+
+
+ Build the ISO image:
+
+
+$ nix-build configuration/rescue-cd.nix -A rescueCD
+
+ If everything goes well, you’ll end up with an ISO image in
+ ./result/iso/nixos.iso.
+
+ Burn the ISO image
+ ./result/iso/nixos.iso onto a CD or DVD or
+ attach it to a CD-ROM drive in VMware.
+
+
+
+
+
+
+
+
+
+
+
+
+Installation
+
+
+
+ Boot from the CD.
+
+ The CD contains a basic NixOS installation. When
+ it’s finished booting, it should have detected most of your hardware
+ and brought up networking (check ifconfig).
+ Networking is necessary for the installer, since it will download
+ lots of stuff (such as source tarballs or Nixpkgs channel binaries).
+ It’s best if you have a DHCP server on your network. Otherwise
+ configure manually.
+
+ Login as root, empty
+ password.
+
+ The NixOS installer doesn’t do any partitioning or
+ formatting yet, so you need to that yourself. Use the following
+ commands:
+
+
+
+ For partitioning:
+ fdisk.
+
+ For initialising Ext2/Ext3 partitions:
+ mke2fs. Ext3 is recommended; use the
+ to create a journalled file system. It is
+ also recommended that you assign a unique symbolic label to the
+ file system using the option . This will make the
+ file system configuration independent from device
+ changes.
+
+ For creating swap partitions:
+ mkswap. Again it’s recommended to assign a
+ label to the swap partition: .
+
+ For creating LVM volumes, the LVM commands, e.g.,
+
+
+$ pvcreate /dev/sda1 /dev/sdb1
+$ vgcreate MyVolGroup /dev/sda1 /dev/sdb1
+$ lvcreate --size 2G --name bigdisk MyVolGroup
+$ lvcreate --size 1G --name smalldisk MyVolGroup
+
+ Possibly you’ll need to do initctl start
+ lvm after this (TODO: check whether this is
+ needed).
+
+ For creating software RAID devices:
+ mdadm.
+
+ Mount the target file system on
+ /mnt.
+
+ The installation is declarative; you need to write
+ a description of the configuration that you want to be built and
+ activated. The configuration is specified in a Nix expression and
+ should be stored in
+ /etc/nixos/configuration.nix. See
+ /etc/nixos/nixos/configuration/examples for
+ example machine configurations. You can copy and edit one of
+ those (e.g., copy
+ /etc/nixos/nixos/configuration/examples/basic.nix
+ to /etc/nixos/configuration.nix). See for a list of the available configuration
+ options. The text editor nano is
+ available.
+
+ In particular you need to specify a root file system in
+ and the target device for the Grub
+ boot loader in .
+
+ More examples of NixOS configurations for some actual
+ machines can be found at .
+
+
+
+ Do the installation:
+
+
+$ nixos-install
+
+ Cross fingers.
+
+ If everything went well:
+
+
+$ reboot
+
+ You should now be able to boot into the installed NixOS. The Grub
+ boot menu shows a list of available
+ configurations (initially just one). Every time you
+ change the NixOS configuration, a new item appears in the menu.
+ This allows you to go back easily to another configuration if
+ something goes wrong.
+
+ You should log in and change the root
+ password with passwd.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Changing the configuration
+
+The file /etc/nixos/configuration.nix
+contains the current configuration of your machine. Whenever you’ve
+changed something to that file, or to the NixOS/Nixpkgs sources in
+/etc/nixos/nixos and
+/etc/nixos/nixpkgs, respectively, you should do
+
+
+$ nixos-rebuild switch
+
+to build the new configuration, make it the default configuration for
+booting, and try to effect the configuration in the running system
+(e.g., by restarting system services).
+
+You can also do
+
+
+$ nixos-rebuild test
+
+to build the configuration and switch the running system to it, but
+without making it the boot default. So if (say) the configuration
+locks up your machine, you can just reboot to get back to a working
+configuration.
+
+There is also
+
+
+$ nixos-rebuild boot
+
+to build the configuration and make it the boot default, but not
+switch to it now (so it will only take effect after the next
+reboot).
+
+Finally, you can do
+
+
+$ nixos-rebuild build
+
+to build the configuration but nothing more. This is useful to see
+whether everything compiles cleanly.
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/manual/manual.xml b/doc/manual/manual.xml
index 96368ed6876..51834234fb8 100644
--- a/doc/manual/manual.xml
+++ b/doc/manual/manual.xml
@@ -1,4 +1,5 @@
@@ -19,6 +20,21 @@
+
+
+ Preface
+
+ This manual is very sketchy. It gives basic information on
+ how to get NixOS up and running, but since NixOS is very much a
+ work in progress, you are likely to encounter problems here and
+ there. Extensive familiarity with Linux is recommended. If you
+ encounter problems, please report them on the
+ nix-dev@cs.uu.nl mailing list or on .
+
+
+
+
diff --git a/doc/manual/options-to-docbook.xsl b/doc/manual/options-to-docbook.xsl
index 71844cbd2b7..5f83cca474b 100644
--- a/doc/manual/options-to-docbook.xsl
+++ b/doc/manual/options-to-docbook.xsl
@@ -13,7 +13,7 @@
-
+ List of Options