Personal Nix setup

Replace ciao in homebridge with systemd-resolved

Changed files
+15 -3
modules
automation
homebridge
router
+13 -1
modules/automation/homebridge/default.nix
···
type = types.port;
};
advertiser = mkOption {
-
default = "ciao";
+
default = if config.services.resolved.enable then "resolved" else "ciao";
type = types.str;
};
bind = mkOption {
···
isSystemUser = true;
};
};
+
+
security.polkit.extraConfig = optionalString (cfg.homebridge.bridge.advertiser == "resolved") ''
+
// kitten/system: Allow homebridge to register systemd-resolved services
+
// This was enabled via modules.automation.homebridge
+
polkit.addRule(function(action, subject) {
+
if ((action.id == "org.freedesktop.resolve1.register-service" ||
+
action.id == "org.freedesktop.resolve1.unregister-service") &&
+
subject.user == "${config.users.users.homebridge.name}") {
+
return polkit.Result.YES;
+
}
+
});
+
'';
};
}
+2 -2
modules/router/mdns.nix
···
in {
options.modules.router = {
mdns.enable = mkOption {
-
default = cfg.enable;
+
default = false;
description = "Whether to enable mDNS Discovery Service";
type = types.bool;
};
};
-
config = mkIf (cfg.mdns.enable && intern != null) {
+
config = mkIf (cfg.mdns.enable && cfg.enable && intern != null) {
services.avahi = {
enable = true;
allowInterfaces = if intern != null then [ intern.name ] else [];