Bug 187820

Summary: kdelibs: --enable-dnssd
Product: [Fedora] Fedora Reporter: Rex Dieter <rdieter>
Component: kdelibsAssignee: Petr Rockai <prockai>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideKeywords: FutureFeature
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-08-01 14:31:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Rex Dieter 2006-04-03 19:28:50 UTC
Enable DNS-SD support in kdelibs

+BuildRequires: avahi-devel

Add to %configure:
--enable-dnssd 
--with-extra-includes="$(pkg-config --cflags-only-I avahi-compat-libdns_sd)"

Comment 1 Rex Dieter 2006-04-05 12:50:21 UTC
Forget --with-extra-includes, that implementation is a bit problematic.  This
one worked (better) for me:

export CPPFLAGS="$CPPFLAGS $(pkg-config --cflags-only-I avahi-compat-libdns_sd)"

Comment 2 Petr Rockai 2006-05-05 11:43:45 UTC
I'll look into this. Shouldn't be a big problem.

Comment 3 Rex Dieter 2006-05-05 12:12:32 UTC
Thanks Peter.

Comment 4 Petr Rockai 2006-05-11 14:22:30 UTC
Well, it probably will be some hassle. Everything compiles fine, but the 
kioslave tends to crash it seems. I will investigate. Either way, avahi 
doesn't seem to be too happy about its compat libs. There's also avahi 
native implementation of kdnssd so i may look into that instead. Ideas, 
suggestions?

Comment 5 Rex Dieter 2006-05-11 14:41:42 UTC
I haven't seen any crashes (fc5), but I haven't tried using it all that much
either.  How did you test it out?

Regardless, if there is an avahi-native kdnssd, that probably is preferable.

Comment 6 Petr Rockai 2006-05-11 16:45:08 UTC
Compiled kdelibs with avahi, kdenetwork, tried zeroconf:/ in konqueror. 
Listing works more or less, but trying to access a service crashes the slave 
(-> no good). Have tried with both localhost and over-the-network services. 
And the ioslave output is full of "fix your client to use avahi directly". I 
will look into it more tomorrow when i have time. And i'll try to build 
avahi-based kdnssd if that doesn't work.

Comment 7 Rex Dieter 2006-05-11 17:05:47 UTC
crud, now I'm having even less luck (on my fc5 box), zeroconf:/ just yields
An error occurred...
The Zerconf daemon (mdnsd) is not running

Even though both avahi-daemon and avahi-dnsconfd services are running. ):

Comment 8 Petr Rockai 2006-05-11 17:11:59 UTC
Sorry should have mentioned that it refuses to work at all until you put pid 
of avahi-daemon (not the helper, the real daemon) 
into /var/run/mdnsd.pid ;-). That could be fixed for sure, but the other 
thing is nastier.

Comment 9 Rex Dieter 2006-05-17 17:26:23 UTC
Looks like kdnssd-avahi may be the way to go, but unfortunately, it replaces
libkdnssd.so.* from kdelibs.



Comment 10 Rex Dieter 2006-05-17 17:29:37 UTC
See also related avahi bug #192080 "avahi: omit --enable-compat-libdns_sd"

Comment 11 Rex Dieter 2006-05-17 18:51:02 UTC
Don't lose too much sleep on this... I'll try out kdnssd-avahi for
kde-redhat/testing, and let you know how it works.

Comment 12 Rex Dieter 2006-05-31 12:10:58 UTC
kdnssd-avahi seems to work fine (though not as fully functional as the
mDNSResponder-based one).  See
http://kde-redhat.unl.edu/apt/kde-redhat/SPECS/kdnssd-avahi.spec
http://kde-redhat.unl.edu/apt/kde-redhat/all/SRPMS.stable/kdnssd-avahi-0.1.2-5.src.rpm

This *replaces* kdelibs' versions of
/usr/include/kde/dnssd/
/usr/lib/libkdnssd.*

Comment 13 Petr Rockai 2006-05-31 13:02:56 UTC
Well yeah, but if it was on me, i would just build kdnssd-avahi as a part of 
kdelibs build and just replace the libs in the package. Not much point in 
shipping mDNSresponder-based kdnssd that doesn't work. Since you say that 
it works fine, i'll probably go ahead and patch kdelibs in rawhide to build 
avahi kdnssd. Is that ok with you?

Comment 14 Rex Dieter 2006-05-31 15:01:12 UTC
From a maintainance POV, IMO, it's better to package kdnssd-avahi separately. 
It'd be a shame to have to push a new kdelids for a small fix in kdnssd-avahi. 
Besides, 
1.  It's easier to do separately.  (I tried stuffing this into kdelibs, looked
like a lot more work).
2.  I'm (almost) always of the opinion to package as upstream does, and since
kdnssd-avahi is separate from kdelibs... (for now, anyway).

Besides, I'd kinda like to have the ability to replace kdnssd-avahi with a
mDNSResponder-based libkdnssd... (:  

And, It's not that a mDNSResponder-based libkdssd doesn't work, it's that as-is,
apple's mDNSResponder in not installable, due to lib soname clashes with
avahi... which has recently been fixed (avahi's maintainer kindly split off the
compat-dnssd bits).

Comment 15 Rex Dieter 2006-05-31 15:01:52 UTC
Changing target fc5->devel, since this is (most likely) fc6 territory.

Comment 16 Rex Dieter 2006-07-13 20:24:50 UTC
Updated kdnssd-avahi pkg:

http://kde-redhat.unl.edu/apt/kde-redhat/SPECS/kdnssd-avahi.spec
http://kde-redhat.unl.edu/apt/kde-redhat/all/SRPMS.stable/kdnssd-avahi-0.1.2-6.20060713svn.src.rpm

then modify kdelibs to
%exclude %{_libdir}/libkdnssd.*
%exclude %{_includedir}/kde/dnssd/
(or put near end of install somewhere:
rm -f $RPM_BUILD_ROOT%{_libdir}/libkdnssd.*
rm -rf $RPM_BUILD_ROOT%{_includedir}/kde/dnssd
)

and add to kdelibs:
Requires: libkdnssd
and add to kdelibs-devel:
Requires: libkdnssd-devel

that about should do it.  


Comment 17 Rex Dieter 2006-08-01 14:31:01 UTC
This is all now in rawhide/devel -> closing.