NixOS: Difference between revisions

imported>Ixxie
No edit summary
imported>Ixxie
Line 9: Line 9:
=== Declarative Configuration ===
=== Declarative Configuration ===


One of NixOS's most distinguishing features is the ability to ''declaratively configure'' the whole system. This is done by specifying a configuration file which defines which packages are installed on the system, which services to run and various other settings and options. This file is normally called <code>configuration.nix</code> and is found by default at <code>/etc/nixos</code>, although another location can be set using the environment variable <code>NIX_PATH</code>. The system configuration is then built with the command <code>nixos-rebuild</code>. The following is an example of a <code>configuration.nix</code> file:
One of NixOS's most distinguishing features is the ability to ''declaratively configure'' the whole system. This is done by specifying a configuration file which defines which packages are installed on the system, which services to run and various other settings and options. This file is normally called <code>configuration.nix</code> and is found by default at <code>/etc/nixos</code>, although another location can be set using the environment variable <code>NIX_PATH</code>. The system configuration is then built with the command <code>nixos-rebuild</code>. The official website has search tools for browsing the available [https://nixos.org/nixos/options.html# configuration options] and [https://nixos.org/nixos/packages.html packages] (with the exception of proprietary packages).
 
 
The following is an example of a <code>configuration.nix</code> file:


<syntaxhighlight lang="nix">
<syntaxhighlight lang="nix">
Line 54: Line 57:
}
}
</syntaxhighlight>
</syntaxhighlight>
The official website has a [https://nixos.org/nixos/options.html# search tool for NixOS configuration options], as well as a [https://nixos.org/nixos/packages.html tool for finding all available packages] on Nixpkgs (with the exception of proprietary packages).


=== Imperative Operations ===
=== Imperative Operations ===