Zeroconf in KDE4
Jakub Stachowski
qbast at go2.pl
Wed Feb 21 16:59:08 GMT 2007
Hello,
As some may remember one of new features in KDE 3.4 was Zeroconf support -
abstraction layer for libdns_sd that makes publishing and
discovering network services really easy. It is now used by several
applications: krfb/krdc, kio_zeroconf, kftpgrabber, amarok, kpf and several
games from kdegames module. Unfortunately, I stopped taking care of this code
several months ago.
There were several causes: getting full time job, starting living on my own
and as most important loss of motivation. So, to not leave dnssd stuff in
uncertain situation, especially when kde4 is coming, I officially resign as
its maintainer.
Current state:
'Main' part of zeroconf support is kdnssd library from kdelibs. In 3.5 branch
it wraps Apple's mdnsd daemon. Because mdnsd and libdns_sd was licensed under
APSL (not accepted by some distributions), alternative called Avahi emerged
and started gaining market share really fast. To support it alternative
implementation of kdnssd (drop-in replacement for libkdnssd.so.1 from
kdelibs) wrapping avahi was developed in kdeplayground - at
first for Kubuntu (thanks J.Riddel for idea) and later also other
distributions started using it. Both implementations work and I am not aware
of any big problems with them.
I guess most pressing short-term goal for KDE4 would be to bring both backends
(mdnsd and avahi) into kdelibs and make it possible to select one at compile
time. Simply removing mdnsd stuff is not a good idea, because it is native
dnssd implementation for macosx and avahi does not work on windows at all.
Also there is a wish in bugzilla to add zeroconf support to knotes.
Implementing it should take not more than hour.
I had some long-term ideas about unification of various service discovery
protocols like slp, samba, lan:/ and zeroconf into one, easy to use API.
There is even some old code under branches/work/service-discovery, but it got
abandoned as well. Still, if it can give someone a good idea then all the
better.
If someone wants to take over maintenance, I will be sure to answer any
questions about this code. If not, and other developers think that kde's
zeroconf stuff is not really that useful, transition to kde4 would be good
moment to remove it.
Regards, Jakub
More information about the kde-core-devel
mailing list