nixos: Update documentation to refer to bin/apply

This commit is contained in:
Robert Hensing
2024-09-25 12:43:11 +02:00
parent d0b30777a2
commit 7902cea1de
7 changed files with 12 additions and 12 deletions

View File

@@ -12,7 +12,7 @@ system has booted, you can make the selected configuration the default
for subsequent boots: for subsequent boots:
```ShellSession ```ShellSession
# /run/current-system/bin/switch-to-configuration boot # /run/current-system/bin/apply boot
``` ```
Second, you can switch to the previous configuration in a running Second, you can switch to the previous configuration in a running
@@ -25,11 +25,11 @@ system:
This is equivalent to running: This is equivalent to running:
```ShellSession ```ShellSession
# /nix/var/nix/profiles/system-N-link/bin/switch-to-configuration switch # /nix/var/nix/profiles/system-N-link/bin/apply switch
``` ```
where `N` is the number of the NixOS system configuration. To get a where `N` is the number of the NixOS system configuration to roll back to.
list of the available configurations, do: To get a list of the available configurations, run:
```ShellSession ```ShellSession
$ ls -l /nix/var/nix/profiles/system-*-link $ ls -l /nix/var/nix/profiles/system-*-link

View File

@@ -16,6 +16,6 @@ profile:
The most notable deviation of this profile from a standard NixOS configuration The most notable deviation of this profile from a standard NixOS configuration
is that after building it, you cannot switch *to* the configuration anymore. is that after building it, you cannot switch *to* the configuration anymore.
The profile sets `config.system.switch.enable = false;`, which excludes The profile sets `config.system.switch.enable = false;`, which excludes
`switch-to-configuration`, the central script called by `nixos-rebuild`, from `apply` and `switch-to-configuration`, the central scripts called by `nixos-rebuild`, from
your system. Removing this script makes the image lighter and slightly more your system. Removing this script makes the image lighter and slightly more
secure. secure.

View File

@@ -5,8 +5,8 @@ This chapter explains some of the internals of this command to make it simpler
for new module developers to configure their units correctly and to make it for new module developers to configure their units correctly and to make it
easier to understand what is happening and why for curious administrators. easier to understand what is happening and why for curious administrators.
`nixos-rebuild`, like many deployment solutions, calls `switch-to-configuration` `nixos-rebuild`, like many deployment solutions, calls `apply` (or for NixOS older than 24.11, `switch-to-configuration`)
which resides in a NixOS system at `$out/bin/switch-to-configuration`. The which resides in a NixOS system at `$out/bin/apply`. The
script is called with the action that is to be performed like `switch`, `test`, script is called with the action that is to be performed like `switch`, `test`,
`boot`. There is also the `dry-activate` action which does not really perform `boot`. There is also the `dry-activate` action which does not really perform
the actions but rather prints what it would do if you called it with `test`. the actions but rather prints what it would do if you called it with `test`.

View File

@@ -247,7 +247,7 @@ The first steps to all these are the same:
```ShellSession ```ShellSession
$ sudo mv -v /boot /boot.bak && $ sudo mv -v /boot /boot.bak &&
sudo /nix/var/nix/profiles/system/bin/switch-to-configuration boot sudo /nix/var/nix/profiles/system/bin/apply boot
``` ```
Cross your fingers, reboot, hopefully you should get a NixOS prompt! Cross your fingers, reboot, hopefully you should get a NixOS prompt!

View File

@@ -23,7 +23,7 @@ in
}; };
} }
({ config, ... }: { ({ config, ... }: {
# Don't pull in switch-to-configuration by default, except when specialisations or early boot shenanigans are involved. # Don't pull in apply and switch-to-configuration by default, except when specialisations or early boot shenanigans are involved.
# This is mostly a Hydra optimization, so we don't rebuild all the tests every time switch-to-configuration-ng changes. # This is mostly a Hydra optimization, so we don't rebuild all the tests every time switch-to-configuration-ng changes.
key = "no-switch-to-configuration"; key = "no-switch-to-configuration";
system.switch.enable = mkDefault (config.isSpecialisation || config.specialisation != {} || config.virtualisation.installBootLoader); system.switch.enable = mkDefault (config.isSpecialisation || config.specialisation != {} || config.virtualisation.installBootLoader);

View File

@@ -42,7 +42,7 @@ in
(e.g. `fewJobsManyCores`) at runtime, run: (e.g. `fewJobsManyCores`) at runtime, run:
``` ```
sudo /run/current-system/specialisation/fewJobsManyCores/bin/switch-to-configuration test sudo /run/current-system/specialisation/fewJobsManyCores/bin/apply test
``` ```
''; '';
type = types.attrsOf (types.submodule ( type = types.attrsOf (types.submodule (

View File

@@ -49,8 +49,8 @@ let
# Putting it all together. This builds a store path containing # Putting it all together. This builds a store path containing
# symlinks to the various parts of the built configuration (the # symlinks to the various parts of the built configuration (the
# kernel, systemd units, init scripts, etc.) as well as a script # kernel, systemd units, init scripts, etc.) as well as a script
# `switch-to-configuration' that activates the configuration and # `bin/apply` that activates the configuration and
# makes it bootable. See `activatable-system.nix`. # makes it bootable. See `activatable-system.nix` and `switchable-system.nix`.
baseSystem = pkgs.stdenvNoCC.mkDerivation ({ baseSystem = pkgs.stdenvNoCC.mkDerivation ({
name = "nixos-system-${config.system.name}-${config.system.nixos.label}"; name = "nixos-system-${config.system.name}-${config.system.nixos.label}";
preferLocalBuild = true; preferLocalBuild = true;