Loading nixos/modules/services/networking/mosquitto.nix +22 −12 Original line number Diff line number Diff line Loading @@ -177,17 +177,6 @@ let '' ++ hashedLines)); makeACLFile = idx: users: supplement: pkgs.writeText "mosquitto-acl-${toString idx}.conf" (concatStringsSep "\n" (flatten [ supplement (mapAttrsToList (n: u: [ "user ${n}" ] ++ map (t: "topic ${t}") u.acl) users) ])); authPluginOptions = with types; submodule { options = { plugin = mkOption { Loading Loading @@ -342,7 +331,7 @@ let formatListener = idx: listener: [ "listener ${toString listener.port} ${toString listener.address}" "acl_file ${makeACLFile idx listener.users listener.acl}" "acl_file /etc/mosquitto/mosquitto-acl-${toString idx}.conf" ] ++ optional (! listener.omitPasswordAuth) "password_file ${cfg.dataDir}/passwd-${toString idx}" ++ formatFreeform {} listener.settings Loading Loading @@ -698,6 +687,27 @@ in cfg.listeners); }; environment.etc = listToAttrs ( imap0 (idx: listener: { name = "mosquitto/mosquitto-acl-${toString idx}.conf"; value = { user = config.users.users.mosquitto.name; group = config.users.users.mosquitto.group; mode = "0400"; text = (concatStringsSep "\n" (flatten [ listener.acl (mapAttrsToList (n: u: [ "user ${n}" ] ++ map (t: "topic ${t}") u.acl) listener.users) ])); }; }) cfg.listeners ); users.users.mosquitto = { description = "Mosquitto MQTT Broker Daemon owner"; group = "mosquitto"; Loading Loading
nixos/modules/services/networking/mosquitto.nix +22 −12 Original line number Diff line number Diff line Loading @@ -177,17 +177,6 @@ let '' ++ hashedLines)); makeACLFile = idx: users: supplement: pkgs.writeText "mosquitto-acl-${toString idx}.conf" (concatStringsSep "\n" (flatten [ supplement (mapAttrsToList (n: u: [ "user ${n}" ] ++ map (t: "topic ${t}") u.acl) users) ])); authPluginOptions = with types; submodule { options = { plugin = mkOption { Loading Loading @@ -342,7 +331,7 @@ let formatListener = idx: listener: [ "listener ${toString listener.port} ${toString listener.address}" "acl_file ${makeACLFile idx listener.users listener.acl}" "acl_file /etc/mosquitto/mosquitto-acl-${toString idx}.conf" ] ++ optional (! listener.omitPasswordAuth) "password_file ${cfg.dataDir}/passwd-${toString idx}" ++ formatFreeform {} listener.settings Loading Loading @@ -698,6 +687,27 @@ in cfg.listeners); }; environment.etc = listToAttrs ( imap0 (idx: listener: { name = "mosquitto/mosquitto-acl-${toString idx}.conf"; value = { user = config.users.users.mosquitto.name; group = config.users.users.mosquitto.group; mode = "0400"; text = (concatStringsSep "\n" (flatten [ listener.acl (mapAttrsToList (n: u: [ "user ${n}" ] ++ map (t: "topic ${t}") u.acl) listener.users) ])); }; }) cfg.listeners ); users.users.mosquitto = { description = "Mosquitto MQTT Broker Daemon owner"; group = "mosquitto"; Loading