[avahi] Is systemd planning to fully replace avahi?

Till Kamppeter till.kamppeter at gmail.com
Wed Oct 12 10:53:25 UTC 2022


On 12/10/2022 09:37, Lennart Poettering wrote:
>> Do we want to keep avahi primary choice for mDNS? What are you opinions on
>> replacing avahi with systemd-resolved?
> 
> Yeah, this is definitely on my list. resolved already covers a lot of
> ground of mDNS/DNS-SD but there's quite some stuff missing
> still, most importantly API compat. Patches welcome!

For replacing Avahi by a systemd solution it is extremely important to 
get API compatibility, as most free software projects use the Avahi 
libraries to implement DNS-SD support. Currently I see only the projects 
from the CUPS author and former Apple employee Michael Sweet supporting 
two APIs, Avahi and MDNS Responder, the latter coming from the *BSD and 
Mac OS is based on FreeBSD AFAIR. So CUPS and PAPPL for example have the 
two alternatives, but most other applications would need major effort if 
systemd will not resemble the Avahi API.

But in OpenPrinting the MDNS Responder support could get extended to 
more applications, like cups-filters, as we have run a GSoC project to 
consolidating DNS-SD support into an API provided by CUPS and 
cups-filters and also Michael Sweet is working on an API in the new 
libcups3 (CUPS 3.x) which provide functions for printing and scanning 
needs and encapsulate the actual DNS-SD implementation (Avahi or MDNS 
Responder).

libcups3:
https://github.com/OpenPrinting/libcups

Optimizing DNS-SD browsing:
https://openprinting.github.io/current/#optimizing-dns-sd-browsing
https://github.com/thakan25/gsoc22-submission

So ideally systemd would provide the Avahi API, but the MDNS Rwesponder 
API could already be of help. If we succeed to centralize the interface 
to DNS-SD inside OpenPrinting, we could even look into a native DNS-SD 
API of systemd (but there are many other projects/applications using the 
Avahi API, too).

    Till


More information about the avahi mailing list