From 0cf74190a958359a2d3c6dd870d32f88b5205b41 Mon Sep 17 00:00:00 2001 From: Dave Laing Date: Wed, 1 Nov 2017 11:07:51 +1000 Subject: nixos manual: Adds some examples of how to use fdisk. Also unifies the BIOS and UEFI installation instructions. It's a fairly basic usage, but it makes explicity the fact that you should at least have a main partition and a swap partition, and will save some users a bit of internet searching while they are getting set up. --- nixos/doc/manual/installation/installing-uefi.xml | 48 --------- nixos/doc/manual/installation/installing.xml | 122 ++++++++++++++++++++-- nixos/doc/manual/release-notes/rl-1404.xml | 2 +- 3 files changed, 115 insertions(+), 57 deletions(-) delete mode 100644 nixos/doc/manual/installation/installing-uefi.xml diff --git a/nixos/doc/manual/installation/installing-uefi.xml b/nixos/doc/manual/installation/installing-uefi.xml deleted file mode 100644 index 0d3eaa8bb1fb..000000000000 --- a/nixos/doc/manual/installation/installing-uefi.xml +++ /dev/null @@ -1,48 +0,0 @@ -
- -UEFI Installation - -NixOS can also be installed on UEFI systems. The procedure -is by and large the same as a BIOS installation, with the following -changes: - - - - You should boot the live CD in UEFI mode (consult your - specific hardware's documentation for instructions). You may find - the rEFInd - boot manager useful. - - - Instead of fdisk, you should use - gdisk to partition your disks. You will need to - have a separate partition for /boot with - partition code EF00, and it should be formatted as a - vfat filesystem. - - - Instead of , - you must set to - true. nixos-generate-config - should do this automatically for new configurations when booted in - UEFI mode. - - - After having mounted your installation partition to - /mnt, you must mount the boot partition - to /mnt/boot. - - - You may want to look at the options starting with - and - as well. - - - - -
diff --git a/nixos/doc/manual/installation/installing.xml b/nixos/doc/manual/installation/installing.xml index b0674307a563..ab9108c30a71 100644 --- a/nixos/doc/manual/installation/installing.xml +++ b/nixos/doc/manual/installation/installing.xml @@ -6,9 +6,18 @@ Installing NixOS +NixOS can be installed on BIOS or UEFI systems. The procedure +for a UEFI installation is by and large the same as a BIOS installation. The differences are mentioned in the steps that follow. + - Boot from the CD. + Boot from the CD. + + UEFI systems + You should boot the live CD in UEFI mode + (consult your specific hardware's documentation for instructions). + You may find the rEFInd boot + manager useful. The CD contains a basic NixOS installation. (It also contains Memtest86+, useful if you want to test new hardware). @@ -50,7 +59,31 @@ For partitioning: - fdisk. + fdisk. + +# fdisk /dev/sda # (or whatever device you want to install on) +-- for UEFI systems only +> n # (create a new partition for /boot) +> 3 # (make it a partition number 3) +> # (press enter to accept the default) +> +512M # (the size of the UEFI boot partition) +> t # (change the partition type ...) +> 3 # (... of the boot partition ...) +> 1 # (... to 'UEFI System') +-- for BIOS or UEFI systems +> n # (create a new partition for /swap) +> 2 # (make it a partition number 2) +> # (press enter to accept the default) +> +8G # (the size of the swap partition, set to whatever you like) +> n # (create a new partition for /) +> 1 # (make it a partition number 1) +> # (press enter to accept the default) +> # (press enter to accept the default and use the rest of the remaining space) +> a # (make the partition bootable) +> x # (enter expert mode) +> f # (fix up the partition ordering) +> r # (exit expert mode) +> w # (write the partition table to disk and exit) For initialising Ext4 partitions: mkfs.ext4. It is recommended that you assign a @@ -67,7 +100,25 @@ For creating swap partitions: mkswap. Again it’s recommended to assign a label to the swap partition: . + label. For example: + + +# mkswap -L swap /dev/sda2 + + + + + + UEFI systems + For creating boot partitions: + mkfs.fat. Again it’s recommended to assign a + label to the boot partition: . For example: + + +# mkfs.fat -F 32 -L boot /dev/sda3 + + For creating LVM volumes, the LVM commands, e.g., @@ -95,11 +146,27 @@ + + + UEFI systems + Mount the boot file system on /mnt/boot, e.g. + + +# mount /dev/disk/by-label/boot /mnt/boot + + + + If your machine has a limited amount of memory, you may want to activate swap devices now (swapon device). The installer (or rather, the build actions that it may spawn) may need quite a bit of - RAM, depending on your configuration. + RAM, depending on your configuration. + + +# swapon /dev/sda2 + + @@ -135,10 +202,25 @@ install Emacs by running nix-env -i emacs. - You must set the option + + + BIOS systems + You must set the option to specify on which disk the GRUB boot loader is to be installed. Without it, NixOS cannot - boot. + boot. + + UEFI systems + You must set the option + to true. + nixos-generate-config should do this automatically for new + configurations when booted in + UEFI mode. + You may want to look at the options starting with + and + as well. + + If there are other operating systems running on the machine before installing NixOS, the @@ -247,10 +329,34 @@ drive (here /dev/sda). Commands for Installing NixOS on <filename>/dev/sda</filename> # fdisk /dev/sda # (or whatever device you want to install on) +-- for UEFI systems only +> n # (create a new partition for /boot) +> 3 # (make it a partition number 3) +> # (press enter to accept the default) +> +512M # (the size of the UEFI boot partition) +> t # (change the partition type ...) +> 3 # (... of the boot partition ...) +> 1 # (... to 'UEFI System') +-- for BIOS or UEFI systems +> n # (create a new partition for /swap) +> 2 # (make it a partition number 2) +> # (press enter to accept the default) +> +8G # (the size of the swap partition) +> n # (create a new partition for /) +> 1 # (make it a partition number 1) +> # (press enter to accept the default) +> # (press enter to accept the default and use the rest of the remaining space) +> a # (make the partition bootable) +> x # (enter expert mode) +> f # (fix up the partition ordering) +> r # (exit expert mode) +> w # (write the partition table to disk and exit) # mkfs.ext4 -L nixos /dev/sda1 # mkswap -L swap /dev/sda2 # swapon /dev/sda2 +# mkfs.fat -F 32 -L boot /dev/sda3 # (for UEFI systems only) # mount /dev/disk/by-label/nixos /mnt +# mount /dev/disk/by-label/boot /mnt/boot # (for UEFI systems only) # nixos-generate-config --root /mnt # nano /mnt/etc/nixos/configuration.nix # nixos-install @@ -267,7 +373,8 @@ drive (here /dev/sda). (for BIOS systems only) + boot.loader.systemd-boot.enable = true; # (for UEFI systems only) # Note: setting fileSystems is generally not # necessary, since nixos-generate-config figures them out @@ -279,7 +386,6 @@ drive (here /dev/sda). - diff --git a/nixos/doc/manual/release-notes/rl-1404.xml b/nixos/doc/manual/release-notes/rl-1404.xml index 36f67ed88b0b..137caf14cba2 100644 --- a/nixos/doc/manual/release-notes/rl-1404.xml +++ b/nixos/doc/manual/release-notes/rl-1404.xml @@ -13,7 +13,7 @@ the following highlights: Installation on UEFI systems is now supported. See - for + for details. Systemd has been updated to version 212, which has -- cgit 1.4.1