summary refs log tree commit diff
path: root/modules/system/boot/systemd.nix
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2012-11-03 05:41:46 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2012-11-06 11:25:43 +0100
commita333f7212e4a079a5c6d26bfcb7c933e02ce01b1 (patch)
tree127eb2e50e64304aba312a04dd0aa85d580c196e /modules/system/boot/systemd.nix
parent70e6e19f545244a1a5cb55efb6b396e80cb435d8 (diff)
downloadnixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar.gz
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar.bz2
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar.lz
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar.xz
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.tar.zst
nixpkgs-a333f7212e4a079a5c6d26bfcb7c933e02ce01b1.zip
systemd: Fail if kernel features are missing.
This has rendered my system unbootable, because I forgot to enable AUTOFS4 in my
custom kernel. In addition to AUTOFS4, this includes (hopefully) all other
kernel features needed by systemd, as listed in the README:

REQUIREMENTS:
  Linux kernel >= 2.6.39
    with devtmpfs
    with cgroups (but it's OK to disable all controllers)
    optional but strongly recommended: autofs4, ipv6

Autofs4 is not a requirement here, but in our case it turns out that the system
is not able to boot properly with a LUKS-enabled system (or at least not on _my_
system).

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'modules/system/boot/systemd.nix')
-rw-r--r--modules/system/boot/systemd.nix4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/system/boot/systemd.nix b/modules/system/boot/systemd.nix
index 340a6d80c1c..e76d35fa9f2 100644
--- a/modules/system/boot/systemd.nix
+++ b/modules/system/boot/systemd.nix
@@ -453,6 +453,8 @@ in
       // mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.services
       // mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.sockets;
 
+    system.requiredKernelConfig = map config.lib.kernelConfig.isEnabled [
+      "CGROUPS" "AUTOFS4_FS" "DEVTMPFS"
+    ];
   };
-
 }