diff options
| author | Daiderd Jordan <daiderd@gmail.com> | 2017-07-23 16:05:46 +0200 |
|---|---|---|
| committer | Daiderd Jordan <daiderd@gmail.com> | 2017-07-23 16:05:46 +0200 |
| commit | 8016f1e2fd752fb102b64d185163cc93cc78e316 (patch) | |
| tree | ed48646548137ad78e0f423b89504d0214bc4921 /modules/system | |
| parent | b3a9587cfb3feecb91cfc9f865e62c3fa639da81 (diff) | |
add activation-checks
Diffstat (limited to 'modules/system')
| -rw-r--r-- | modules/system/activation-checks.nix | 28 | ||||
| -rw-r--r-- | modules/system/activation-scripts.nix | 4 |
2 files changed, 30 insertions, 2 deletions
diff --git a/modules/system/activation-checks.nix b/modules/system/activation-checks.nix new file mode 100644 index 0000000..3f07cb0 --- /dev/null +++ b/modules/system/activation-checks.nix @@ -0,0 +1,28 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + buildUsers = optionalString config.services.nix-daemon.enable '' + buildUser=$(dscl . -read /Groups/nixbld GroupMembership 2>&1 | awk '/^GroupMembership: / {print $2}') + if [ -z $buildUser ]; then + echo "Using the nix-daemon requires build users, aborting activation" >&2 + exit 2 + fi + ''; +in + +{ + options = { + }; + + config = { + + system.activationScripts.checks.text = '' + set +e + ${buildUsers} + set -e + ''; + + }; +} diff --git a/modules/system/activation-scripts.nix b/modules/system/activation-scripts.nix index aa97633..48d2773 100644 --- a/modules/system/activation-scripts.nix +++ b/modules/system/activation-scripts.nix @@ -52,9 +52,7 @@ in ${cfg.activationScripts.extraActivation.text} - ${cfg.activationScripts.nix-daemon.text} ${cfg.activationScripts.nix.text} - ${cfg.activationScripts.accessibility.text} ${cfg.activationScripts.applications.text} ${cfg.activationScripts.etc.text} @@ -88,6 +86,8 @@ in # Ensure a consistent umask. umask 0022 + ${cfg.activationScripts.checks.text} + ${cfg.activationScripts.extraUserActivation.text} ${cfg.activationScripts.defaults.text} |
