{ pkgs , lib , config , ... }: with lib; let cfg = config.global.id; in { options.global.id = mkOption { type = with types; str; description = "systemd machine id"; }; config = { environment.etc.machine-id.text = cfg + "\n"; networking.hostId = substring 0 8 cfg; }; }