Merge #361424: refactor lib.packagesFromDirectoryRecursive (v2)
[NixPkgs.git] / nixos / modules / system / boot / emergency-mode.nix
blob34058bc17a6b953c454db48ef7c4f837a1f6b6c3
1 { config, lib, ... }:
4   ###### interface
6   options = {
8     systemd.enableEmergencyMode = lib.mkOption {
9       default = true;
10       type = lib.types.bool;
11       description = ''
12         Whether to enable emergency mode, which is an
13         {command}`sulogin` shell started on the console if
14         mounting a filesystem fails.  Since some machines (like EC2
15         instances) have no console of any kind, emergency mode doesn't
16         make sense, and it's better to continue with the boot insofar
17         as possible.
18       '';
19     };
21   };
23   ###### implementation
25   config = {
27     systemd.additionalUpstreamSystemUnits = lib.optionals config.systemd.enableEmergencyMode [
28       "emergency.target"
29       "emergency.service"
30     ];
32   };