nixpkgs/nixos/doc/manual/man-nixos-version.xml
Michael Lohmann c09f6c3db0 nixos-version: output configurationRevision
`nixos-version --configuration-revision` will show the
configurationRevision.
2023-01-03 20:40:35 +01:00

159 lines
3.9 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-version</command>
</refentrytitle><manvolnum>8</manvolnum>
<refmiscinfo class="source">NixOS</refmiscinfo>
</refmeta>
<refnamediv>
<refname><command>nixos-version</command></refname>
<refpurpose>show the NixOS version</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>nixos-version</command>
<arg>
<option>--hash</option>
</arg>
<arg>
<option>--revision</option>
</arg>
<arg>
<option>--configuration-revision</option>
</arg>
<arg>
<option>--json</option>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
<para>
This command shows the version of the currently active NixOS configuration.
For example:
<screen><prompt>$ </prompt>nixos-version
16.03.1011.6317da4 (Emu)
</screen>
The version consists of the following elements:
<variablelist>
<varlistentry>
<term>
<literal>16.03</literal>
</term>
<listitem>
<para>
The NixOS release, indicating the year and month in which it was
released (e.g. March 2016).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<literal>1011</literal>
</term>
<listitem>
<para>
The number of commits in the Nixpkgs Git repository between the start of
the release branch and the commit from which this version was built.
This ensures that NixOS versions are monotonically increasing. It is
<literal>git</literal> when the current NixOS configuration was built
from a checkout of the Nixpkgs Git repository rather than from a NixOS
channel.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<literal>6317da4</literal>
</term>
<listitem>
<para>
The first 7 characters of the commit in the Nixpkgs Git repository from
which this version was built.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<literal>Emu</literal>
</term>
<listitem>
<para>
The code name of the NixOS release. The first letter of the code name
indicates that this is the N'th stable NixOS release; for example, Emu
is the fifth release.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsection>
<refsection>
<title>Options</title>
<para>
This command accepts the following options:
</para>
<variablelist>
<varlistentry>
<term>
<option>--hash</option>
</term>
<term>
<option>--revision</option>
</term>
<listitem>
<para>
Show the full SHA1 hash of the Git commit from which this configuration
was built, e.g.
<screen><prompt>$ </prompt>nixos-version --hash
6317da40006f6bc2480c6781999c52d88dde2acf
</screen>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<option>--configuration-revision</option>
</term>
<listitem>
<para>
Show the configuration revision if available. This could be the full SHA1
hash of the Git commit of the system flake, if you add
<screen>{ system.configurationRevision = self.rev or "dirty"; }</screen>
to the <screen>modules</screen> array of your flake.nix system configuration e.g.
<screen><prompt>$ </prompt>nixos-version --configuration-revision
aa314ebd1592f6cdd53cb5bba8bcae97d9323de8
</screen>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<option>--json</option>
</term>
<listitem>
<para>
Print a JSON representation of the versions of NixOS and the
top-level configuration flake.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
</refentry>