197 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			197 lines
		
	
	
		
			6.0 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <refentry xmlns="http://docbook.org/ns/docbook"
 | |
|           xmlns:xlink="http://www.w3.org/1999/xlink"
 | |
|           xmlns:xi="http://www.w3.org/2001/XInclude">
 | |
| 
 | |
| <refmeta>
 | |
|   <refentrytitle><command>nixos-install</command></refentrytitle>
 | |
|   <manvolnum>8</manvolnum>
 | |
|   <refmiscinfo class="source">NixOS</refmiscinfo>
 | |
|   <!-- <refmiscinfo class="version"><xi:include href="version.txt" parse="text"/></refmiscinfo> -->
 | |
| </refmeta>
 | |
| 
 | |
| <refnamediv>
 | |
|   <refname><command>nixos-install</command></refname>
 | |
|   <refpurpose>install bootloader and NixOS</refpurpose>
 | |
| </refnamediv>
 | |
| 
 | |
| <refsynopsisdiv>
 | |
|   <cmdsynopsis>
 | |
|     <command>nixos-install</command>
 | |
|     <arg>
 | |
|       <arg choice='plain'><option>-I</option></arg>
 | |
|       <replaceable>path</replaceable>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <arg choice='plain'><option>--root</option></arg>
 | |
|       <replaceable>root</replaceable>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <group choice='req'>
 | |
|         <arg choice='plain'><option>--max-jobs</option></arg>
 | |
|         <arg choice='plain'><option>-j</option></arg>
 | |
|       </group>
 | |
|       <replaceable>number</replaceable>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <option>--cores</option>
 | |
|       <replaceable>number</replaceable>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <option>--option</option>
 | |
|       <replaceable>name</replaceable>
 | |
|       <replaceable>value</replaceable>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <arg choice='plain'><option>--show-trace</option></arg>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <arg choice='plain'><option>--chroot</option></arg>
 | |
|     </arg>
 | |
|     <arg>
 | |
|       <arg choice='plain'><option>--help</option></arg>
 | |
|     </arg>
 | |
|   </cmdsynopsis>
 | |
| </refsynopsisdiv>
 | |
| 
 | |
| 
 | |
| <refsection><title>Description</title>
 | |
| 
 | |
| <para>This command installs NixOS in the file system mounted on
 | |
| <filename>/mnt</filename>, based on the NixOS configuration specified
 | |
| in <filename>/mnt/etc/nixos/configuration.nix</filename>.  It performs
 | |
| the following steps:
 | |
| 
 | |
| <itemizedlist>
 | |
| 
 | |
|   <listitem><para>It copies Nix and its dependencies to
 | |
|   <filename>/mnt/nix/store</filename>.</para></listitem>
 | |
| 
 | |
|   <listitem><para>It runs Nix in <filename>/mnt</filename> to build
 | |
|   the NixOS configuration specified in
 | |
|   <filename>/mnt/etc/nixos/configuration.nix</filename>.</para></listitem>
 | |
| 
 | |
|   <listitem><para>It installs the GRUB boot loader on the device
 | |
|   specified in the option <option>boot.loader.grub.device</option>,
 | |
|   and generates a GRUB configuration file that boots into the NixOS
 | |
|   configuration just installed.</para></listitem>
 | |
| 
 | |
|   <listitem><para>It prompts you for a password for the root
 | |
|   account.</para></listitem>
 | |
| 
 | |
| </itemizedlist>
 | |
| 
 | |
| </para>
 | |
| 
 | |
| <para>This command is idempotent: if it is interrupted or fails due to
 | |
| a temporary problem (e.g. a network issue), you can safely re-run
 | |
| it.</para>
 | |
| 
 | |
| </refsection>
 | |
| 
 | |
| <refsection><title>Options</title>
 | |
| 
 | |
| <para>This command accepts the following options:</para>
 | |
| 
 | |
| <variablelist>
 | |
| 
 | |
|   <varlistentry>
 | |
|     <term><option>--root</option></term>
 | |
|     <listitem>
 | |
|       <para>Defaults to <filename>/mnt</filename>. If this option is given, treat the directory
 | |
|       <replaceable>root</replaceable> as the root of the NixOS installation.
 | |
|       </para>
 | |
|     </listitem>
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry>
 | |
|     <term><option>-I</option></term>
 | |
|     <listitem>
 | |
|       <para>Add a path to the Nix expression search path. This option may be given multiple times.
 | |
|         See the NIX_PATH environment variable for information on the semantics of the Nix search path.
 | |
|         Paths added through <replaceable>-I</replaceable> take precedence over NIX_PATH.</para>
 | |
|     </listitem>
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry><term><option>--max-jobs</option></term>
 | |
|     <term><option>-j</option></term>
 | |
|   
 | |
|     <listitem><para>Sets the maximum number of build jobs that Nix will
 | |
|     perform in parallel to the specified number. The default is <literal>1</literal>.
 | |
|     A higher value is useful on SMP systems or to exploit I/O latency.</para></listitem>
 | |
|   
 | |
|   </varlistentry>
 | |
|   
 | |
|   
 | |
|   <varlistentry><term><option>--cores</option></term>
 | |
|   
 | |
|     <listitem><para>Sets the value of the <envar>NIX_BUILD_CORES</envar>
 | |
|     environment variable in the invocation of builders.  Builders can
 | |
|     use this variable at their discretion to control the maximum amount
 | |
|     of parallelism.  For instance, in Nixpkgs, if the derivation
 | |
|     attribute <varname>enableParallelBuilding</varname> is set to
 | |
|     <literal>true</literal>, the builder passes the
 | |
|     <option>-j<replaceable>N</replaceable></option> flag to GNU Make.
 | |
|     The value <literal>0</literal> means that the builder should use all
 | |
|     available CPU cores in the system.</para></listitem>
 | |
|   
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry><term><option>--option</option> <replaceable>name</replaceable> <replaceable>value</replaceable></term>
 | |
| 
 | |
|     <listitem><para>Set the Nix configuration option
 | |
|     <replaceable>name</replaceable> to <replaceable>value</replaceable>.</para></listitem>
 | |
| 
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry>
 | |
|     <term><option>--show-trace</option></term>
 | |
|     <listitem>
 | |
|       <para>Causes Nix to print out a stack trace in case of Nix expression evaluation errors.</para>
 | |
|     </listitem>
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry>
 | |
|     <term><option>--chroot</option></term>
 | |
|     <listitem>
 | |
|       <para>Chroot into given installation. Any additional arguments passed are going to be executed inside the chroot.
 | |
|       </para>
 | |
|     </listitem>
 | |
|   </varlistentry>
 | |
| 
 | |
|   <varlistentry>
 | |
|     <term><option>--help</option></term>
 | |
|     <listitem>
 | |
|       <para>Synonym for <command>man nixos-install</command>.</para>
 | |
|     </listitem>
 | |
|   </varlistentry>
 | |
| 
 | |
| </variablelist>
 | |
| 
 | |
| </refsection>
 | |
| 
 | |
| 
 | |
| <refsection><title>Examples</title>
 | |
| 
 | |
| <para>A typical NixOS installation is done by creating and mounting a
 | |
| file system on <filename>/mnt</filename>, generating a NixOS
 | |
| configuration in
 | |
| <filename>/mnt/etc/nixos/configuration.nix</filename>, and running
 | |
| <command>nixos-install</command>.  For instance, if we want to install
 | |
| NixOS on an <literal>ext4</literal> file system created in
 | |
| <filename>/dev/sda1</filename>:
 | |
| 
 | |
| <screen>
 | |
| $ mkfs.ext4 /dev/sda1
 | |
| $ mount /dev/sda1 /mnt
 | |
| $ nixos-generate-config --root /mnt
 | |
| $ # edit /mnt/etc/nixos/configuration.nix
 | |
| $ nixos-install
 | |
| $ reboot
 | |
| </screen>
 | |
| 
 | |
| </para>
 | |
| 
 | |
| </refsection>
 | |
| 
 | |
| </refentry>
 | 
