lib = {
# Check that there is no clash with nixos/modules/misc/ids.nix
uids = {
+ cryptpad = 386;
+ openldap = 99; # commented in the ids file
+ postfixscripts = 387;
acme = 388;
backup = 389;
vhost = 390;
};
gids = {
nagios = 11; # commented in the ids file
+ openldap = 99; # commented in the ids file
+ cryptpad = 386;
acme = 388;
backup = 389;
vhost = 390;
mastodon = 399;
};
};
- nixosModule = { ... }: {
+ nixosModule = { config, lib, ... }: {
config = {
ids.uids = self.lib.uids;
ids.gids = self.lib.gids;
+ assertions = [
+ {
+ assertion = builtins.length (builtins.attrValues config.ids.gids) == builtins.length (lib.unique (builtins.attrValues config.ids.gids));
+ message = "Non-unique list of gids";
+ }
+ {
+ assertion = builtins.length (builtins.attrValues config.ids.uids) == builtins.length (lib.unique (builtins.attrValues config.ids.uids));
+ message = "Non-unique list of uids";
+ }
+ ];
};
};
};