Nixos-generate-config: Difference between revisions
No edit summary |
Includes usage and fill out details |
||
Line 1: | Line 1: | ||
Generate NixOS configuration modules. | |||
This command is part of the <code>nixos-install-tools</code> package. It analyzes your hardware configuration and generates two files of: | |||
* <code>/etc/nixos/configuration.nix</code> - the main system configuration file. | |||
* <code>/etc/nixos/hardware-configuration.nix</code> - a hardware-specific configuration file, including detected devices and modules. | |||
= Usage = | |||
<syntaxHighlight lang=bash> | <syntaxHighlight lang=bash> | ||
# nixos-generate-config | # nixos-generate-config | ||
</syntaxHighlight> | </syntaxHighlight> | ||
This | This will create configuration files based on the currently mounted system. This is typically used where NixOS is already installed. By default, <code>nixos-generate-config</code> will not overwrite an existing <code>configuration.nix</code>. To force overwrite an existing file, pass the <code>--force</code> option. | ||
== Generate configuration for a target root == | |||
To generate configuration files with a specific root directory (commonly used during installation): | |||
<syntaxhighlight lang="bash"> | |||
# nixos-generate-config --root /mnt | |||
</syntaxhighlight> | |||
This writes configuration files to <code>/mnt/etc/nixos/</code>. | |||
== Show hardware configuration == | |||
To print the detected hardware configuration to standard output without writing to disk: | |||
<syntaxhighlight lang="bash"> | |||
# nixos-generate-config --show-hardware-config | |||
</syntaxhighlight> | |||
= | = Hardware specific notes = | ||
If you are using an SSD it may be useful to enable TRIM support as well as set filesystem flags to improve the SSD performance: | If you are using an SSD it may be useful to enable TRIM support as well as set filesystem flags to improve the SSD performance: |
Revision as of 05:45, 21 April 2025
Generate NixOS configuration modules.
This command is part of the nixos-install-tools
package. It analyzes your hardware configuration and generates two files of:
/etc/nixos/configuration.nix
- the main system configuration file./etc/nixos/hardware-configuration.nix
- a hardware-specific configuration file, including detected devices and modules.
Usage
# nixos-generate-config
This will create configuration files based on the currently mounted system. This is typically used where NixOS is already installed. By default, nixos-generate-config
will not overwrite an existing configuration.nix
. To force overwrite an existing file, pass the --force
option.
Generate configuration for a target root
To generate configuration files with a specific root directory (commonly used during installation):
# nixos-generate-config --root /mnt
This writes configuration files to /mnt/etc/nixos/
.
Show hardware configuration
To print the detected hardware configuration to standard output without writing to disk:
# nixos-generate-config --show-hardware-config
Hardware specific notes
If you are using an SSD it may be useful to enable TRIM support as well as set filesystem flags to improve the SSD performance:
fileSystems."/".options = [ "noatime" "nodiratime" "discard" ];
A collection of hardware specific platforms with their config can be found at NixOS Hardware repository