about summary refs log blame commit diff
path: root/doc/manual/opt-common.xml
blob: db8a60ecad6e699da80e7fbff1559495df9d614e (plain) (tree)
1
              


















                                                                     
                                                               





































































                                                                          
 
 











                                                                             

              

























                                                                     









                                                                     























                                                                      
<varlistentry>
  <term><option>--help</option></term>
  <listitem>
    <para>
      Prints out a summary of the command syntax and exits.
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--version</option></term>
  <listitem>
    <para>
      Prints out the Nix version number on standard output and exits.
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--verbose</option> / <option>-v</option></term>
  <listitem>
    <para>
      Increases the level of verbosity of diagnostic messages printed
      on standard error.  For each Nix operation, the information
      printed on standard output is well-defined; any diagnostic
      information is printed on standard error, never on standard
      output.
    </para>

    <para>
      This option may be specified repeatedly.  Currently, the
      following verbosity levels exist:
    </para>

    <variablelist>
      <varlistentry>
        <term>0</term>
        <listitem>
          <para>
            <quote>Errors only</quote>: only print messages explaining
            why the Nix invocation failed.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>1</term>
        <listitem>
          <para>
            <quote>Informational</quote>: print
            <emphasis>useful</emphasis> messages about what Nix is
            doing.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>2</term>
        <listitem>
          <para>
            <quote>Talkative</quote>: print more informational messages.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>3</term>
        <listitem>
          <para>
            <quote>Chatty</quote>: print even more informational messages.
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>4</term>
        <listitem>
          <para>
            <quote>Debug</quote>: print debug information:
          </para>
        </listitem>
      </varlistentry>
      <varlistentry>
        <term>5</term>
        <listitem>
          <para>
            <quote>Vomit</quote>: print vast amounts of debug
            information.
          </para>
        </listitem>
      </varlistentry>
    </variablelist>

  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--build-output</option> / <option>-B</option></term>
  <listitem>
    <para>
      Causes the output written by build actions to standard output
      and standard error to be echoed to standard error, regardless of
      verbosity level.  By default, it is only echoed at a verbosity
      level of at least 4 (<quote>Debug</quote>), and is suppressed at
      lower levels.  Note that it is always written to a log file in
      <filename><replaceable>prefix</replaceable>/nix/var/log/nix</filename>.
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--max-jobs</option> / <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 1.  A higher
      value is useful on SMP systems or to exploit I/O latency.
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--keep-going</option> / <option>-k</option></term>
  <listitem>
    <para>
      Keep going in case of failed builds, to the greatest extent
      possible.  That is, if building an input of some derivation
      fails, Nix will still build the other inputs, but not the
      derivation itself.  Without this option, Nix stops if any build
      fails (except for builds of substitutes), possibly killing
      builds in progress (in case of parallel or distributed builds).
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--keep-failed</option> / <option>-K</option></term>
  <listitem>
    <para>
      Specifies that in case of a build failure, the temporary
      directory (usually in <filename>/tmp</filename>) in which the
      build takes place should not be deleted.  The path of the build
      directory is printed as an informational message.
    </para>
  </listitem>
</varlistentry>


<varlistentry>
  <term><option>--fallback</option></term>
  <listitem>
    <para>
      Whenever Nix attempts to realise a derivation for which a
      closure is already known, but this closure cannot be realised,
      fall back on normalising the derivation.
    </para>

    <para>
      The most common scenario in which this is useful is when we have
      registered substitutes in order to perform binary distribution
      from, say, a network repository.  If the repository is down, the
      realisation of the derivation will fail.  When this option is
      specified, Nix will build the derivation instead.  Thus,
      binary installation falls back on a source installation.  This
      option is not the default since it is generally not desirable
      for a transient failure in obtaining the substitutes to lead to
      a full build from source (with the related consumption of
      resources).
    </para>
  </listitem>
</varlistentry>