Files
dev/configs/nixos/registry/stable-uid.nix

26 lines
556 B
Nix

{ lib, ... }:
let
duplicateUids =
entries:
lib.filterAttrs (_uid: serviceNames: builtins.length serviceNames > 1) (serviceNamesByUid entries);
serviceNamesByUid =
entries:
lib.mapAttrs (_uid: uidEntries: lib.unique (map (entry: entry.entry) uidEntries)) (
lib.groupBy (entry: toString entry.value) entries
);
in
{
# Next stable UID: 20005
type = lib.types.ints.positive;
checks = [
{
assertion = entries: duplicateUids entries == { };
message = "Stable UID allocations must be unique.";
}
];
}