b483c91
Name:           avahi
jvdias 2ec9a85
Version:        0.6
jvdias b159b29
Release:        3
jvdias b9d86a7
Summary:        Local network service discovery 
b483c91
b483c91
Group:          System Environment/Base
b483c91
License:        LGPL
b483c91
URL:            http://www.freedesktop.org/Software/Avahi
b483c91
Source0:        %{name}-%{version}.tar.gz
b483c91
Patch1:		avahi-0.5.2-fedora.patch
jvdias b9d86a7
Patch2:		avahi-0.5.2-start_after_dbus.patch
jvdias b159b29
Patch3:         avahi-0.6-initscript_status.patch
jvdias b9d86a7
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
jvdias b159b29
BuildRequires:  doxygen, gtk2-devel, qt-devel, libglade2-devel, libdaemon-devel, glib-devel, libcap-devel, dbus-devel, expat-devel, python, dbus-python
jvdias b159b29
Requires:       dbus, libdaemon, expat, python, dbus-python, libcap
a5f67f3
Obsoletes:	howl, howl-libs
Florian La Roche dcf3fba
#Provides:	howl >= 0.9.8, howl-libs >= 0.9.8
b483c91
b483c91
%description
b483c91
Avahi is a system which facilitates service discovery on
b483c91
a local network -- this means that you can plug your laptop or
b483c91
computer into a network and instantly be able to view other people who
b483c91
you can chat with, find printers to print to or find files being
b483c91
shared. This kind of technology is already found in MacOS X (branded
b483c91
'Rendezvous', 'Bonjour' and sometimes 'ZeroConf') and is very
b483c91
convenient.
b483c91
b483c91
%package tools
jvdias b9d86a7
Summary: Tools for mDNS browsing and publishing
b483c91
Group: System Environment/Base
jvdias b159b29
Requires: %{name} = %{version}, gtk2, pygtk2, libglade2, pygtk2-libglade, python-twisted
b483c91
b483c91
%description tools
b483c91
Tools that use avahi to browse and publish mDNS services and hosts.
b483c91
b483c91
%package glib
jvdias b9d86a7
Summary: Glib libraries for avahi
b483c91
Group: System Environment/Base
b483c91
Requires: %{name} = %{version}
jvdias a5ac681
Requires: glib2
b483c91
b483c91
%description glib
b483c91
Libraries for easy use of avahi from glib applications.
b483c91
b483c91
%package glib-devel
jvdias b9d86a7
Summary: Libraries and header files for avahi glib development
b483c91
Group: Development/Libraries
b483c91
Requires: %{name}-devel = %{version}
jvdias a5ac681
Requires: %{name}-glib = %{version}
b483c91
Requires: glib2-devel
b483c91
b483c91
%description glib-devel
b483c91
The avahi-devel package contains the header files and libraries
b483c91
necessary for developing programs using avahi with glib.
b483c91
b483c91
%package qt3
b483c91
Summary: Qt3 libraries for avahi
b483c91
Group: System Environment/Base
b483c91
Requires: %{name} = %{version}
jvdias a5ac681
Requires: qt
b483c91
b483c91
%description qt3
b483c91
Libraries for easy use of avahi from Qt3 applications.
b483c91
b483c91
%package qt3-devel
jvdias b9d86a7
Summary: Libraries and header files for avahi Qt3 development
b483c91
Group: Development/Libraries
b483c91
Requires: %{name}-devel = %{version}
jvdias a5ac681
Requires: %{name}-qt3 = %{version}
jvdias a5ac681
Requires: qt-devel
b483c91
b483c91
%description qt3-devel
b483c91
The avahi-devel package contains the header files and libraries
b483c91
necessary for developing programs using avahi with Qt3.
b483c91
b483c91
%package devel
jvdias b9d86a7
Summary: Libraries and header files for avahi development
b483c91
Group: Development/Libraries
b483c91
Requires: %{name} = %{version}
jvdias 3468e32
Obsoletes: howl-devel
Florian La Roche dcf3fba
#Provides: howl-devel >= 0.9.8
b483c91
b483c91
%description devel
b483c91
The avahi-devel package contains the header files and libraries
b483c91
necessary for developing programs using avahi.
b483c91
b483c91
%define avahi_user_uid 70
b483c91
b483c91
%prep
b483c91
%setup -q
jvdias 2ec9a85
#%patch1 -p1 -b .fedora
jvdias 2ec9a85
#^- this patch now upstream
jvdias c5c9d50
%patch2 -p1 -b .start_after_dbus
jvdias b159b29
%patch3 -p1 -b .initscript_status
b483c91
b483c91
%build
b483c91
# auto* update needed for avahi-0.5.2-fedora.patch
b483c91
aclocal -I common
b483c91
libtoolize --force
b483c91
automake-1.9 --add-missing
b483c91
autoconf
b483c91
jvdias 2ec9a85
%configure --with-distro=fedora --disable-qt4 --disable-mono --disable-monodoc --with-avahi-user=avahi --with-avahi-group=avahi --enable-compat-howl
b483c91
make %{?_smp_mflags}
b483c91
b483c91
b483c91
%install
b483c91
rm -rf $RPM_BUILD_ROOT
b483c91
make install DESTDIR=$RPM_BUILD_ROOT
b483c91
b483c91
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
b483c91
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
b483c91
b483c91
# remove example 
b483c91
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/avahi/services/ssh.service
b483c91
b483c91
# remove desktop file for avahi-discover
b483c91
rm -f $RPM_BUILD_ROOT%{_datadir}/applications/avahi-discover.desktop
b483c91
jvdias b9d86a7
# create /var/run/avahi-daemon to ensure correct selinux policy for it:
jvdias b9d86a7
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/avahi-daemon
jvdias b9d86a7
jvdias b159b29
# remove the documentation directory - let \%doc handle it:
jvdias b159b29
rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}
jvdias b159b29
b483c91
%clean
b483c91
rm -rf $RPM_BUILD_ROOT
b483c91
b483c91
%pre
b483c91
# Add the "avahi" user
b483c91
/usr/sbin/useradd -c 'Avahi daemon' -u %{avahi_user_uid} \
b483c91
	-s /sbin/nologin -r -d '/' avahi 2> /dev/null || :
b483c91
b483c91
%post
b483c91
/sbin/ldconfig
jvdias c5c9d50
if [ "$1" -eq 1 ]; then
jvdias c5c9d50
   /sbin/chkconfig --add avahi-daemon >/dev/null 2>&1
jvdias c5c9d50
#  We should realy make dbus reload the system.d config here. Dunno how though.
jvdias c5c9d50
#  kill -HUP `cat /var/run/messagebus.pid` ?   
jvdias c5c9d50
elif [ "$1" -gt 1 ]; then
jvdias c5c9d50
#  reset initscript run order:
jvdias c5c9d50
   LC_ALL=C /sbin/chkconfig --levels=0123456 avahi-daemon reset >/dev/null 2>&1
jvdias c5c9d50
#  pre 0.5.2-3, avahi-daemon initscript had 'chkconfig: 345 34 66', 
jvdias c5c9d50
#  so it got started AFTER messagebus ( 97 ) and was unable to start.
jvdias c5c9d50
#  It now has 'chkconfig: 345 98 02'.
jvdias c5c9d50
   /sbin/service avahi-daemon condrestart >/dev/null 2>&1
jvdias c5c9d50
fi;
b483c91
jvdias b9d86a7
%postun -p /sbin/ldconfig
b483c91
b483c91
%preun
jvdias b9d86a7
if [ "$1" -eq 0 ]; then
b483c91
    service avahi-daemon stop > /dev/null 2>&1
b483c91
    /sbin/chkconfig --del avahi-daemon
b483c91
fi
b483c91
jvdias b9d86a7
%post glib -p /sbin/ldconfig
jvdias b9d86a7
jvdias b9d86a7
%postun glib -p /sbin/ldconfig
jvdias b9d86a7
jvdias b9d86a7
%post qt3 -p /sbin/ldconfig
jvdias b9d86a7
jvdias b9d86a7
%postun qt3 -p /sbin/ldconfig
jvdias b9d86a7
b483c91
%files
jvdias b9d86a7
%defattr(-,root,root,0644)
b483c91
%doc docs/* avahi-daemon/example.service avahi-daemon/ssh.service
jvdias b9d86a7
%attr(755,root,root) %{_sysconfdir}/init.d/*
jvdias b9d86a7
%dir %attr(755,root,root) %{_sysconfdir}/avahi
jvdias b9d86a7
%dir %attr(755,root,root) %{_sysconfdir}/avahi/services
jvdias b9d86a7
%dir %attr(755,root,root) %{_localstatedir}/run/avahi-daemon
b483c91
%config %{_sysconfdir}/avahi/avahi-daemon.conf
b483c91
%config %{_sysconfdir}/avahi/avahi-dnsconfd.action
b483c91
%config %{_sysconfdir}/dbus-1/system.d/avahi-dbus.conf
jvdias b9d86a7
%attr(755,root,root) %{_sbindir}/*
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-common.so.*
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-core.so.*
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-client.so.*
jvdias 2ec9a85
%attr(755,root,root) %{_libdir}/libavahi-compat-howl.so.*
jvdias b9d86a7
%attr(755,root,root) %{_datadir}/avahi
b483c91
%exclude %{_datadir}/avahi/interfaces
b483c91
%{_mandir}/man5/*
b483c91
%{_mandir}/man8/*
b483c91
b483c91
%files tools
jvdias b9d86a7
%defattr(-, root, root, 0644)
jvdias b9d86a7
%attr(755,root,root) %{_bindir}/*
7c76df3
# These are .py files only, so they don't go in lib64
jvdias b9d86a7
%attr(755,root,root) %{_prefix}/lib/python2.4/site-packages/*
b483c91
%{_mandir}/man1/*
jvdias b9d86a7
%attr(755,root,root) %{_datadir}/avahi/interfaces/
b483c91
b483c91
%files devel
jvdias b9d86a7
%defattr(-, root, root, 0644)
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-common.so
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-core.so
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-client.so
jvdias 2ec9a85
%attr(755,root,root) %{_libdir}/libavahi-compat-howl.so
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-client/
jvdias a5ac681
%{_includedir}/avahi-client/*
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-common/
jvdias a5ac681
%{_includedir}/avahi-common/*
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-core/
jvdias a5ac681
%{_includedir}/avahi-core/*
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-compat-howl/
jvdias a5ac681
%{_includedir}/avahi-compat-howl/*
jvdias b9d86a7
%{_libdir}/pkgconfig/avahi-core.pc
jvdias b9d86a7
%{_libdir}/pkgconfig/avahi-client.pc
jvdias 2ec9a85
%{_libdir}/pkgconfig/avahi-compat-howl.pc
jvdias 2ec9a85
%{_libdir}/pkgconfig/avahi-compat-libdns_sd.pc
b483c91
b483c91
%files glib
jvdias b9d86a7
%defattr(-, root, root, 0755)
jvdias b9d86a7
%{_libdir}/libavahi-glib.so.*
b483c91
b483c91
%files glib-devel
jvdias b9d86a7
%defattr(-, root, root, 0644)
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-glib.so
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-glib
jvdias a5ac681
%{_includedir}/avahi-glib/*
jvdias a5ac681
%{_libdir}/pkgconfig/avahi-glib.pc
b483c91
b483c91
%files qt3
jvdias b9d86a7
%defattr(-, root, root, 0755)
jvdias b9d86a7
%{_libdir}/libavahi-qt3.so.*
jvdias b9d86a7
%{_libdir}/pkgconfig/avahi-qt3.pc
b483c91
b483c91
%files qt3-devel
jvdias b9d86a7
%defattr(-, root, root, 0644)
jvdias b9d86a7
%attr(755,root,root) %{_libdir}/libavahi-qt3.so
jvdias a5ac681
%attr(755,root,root) %dir %{_includedir}/avahi-qt3
jvdias a5ac681
%{_includedir}/avahi-qt3/*
b483c91
b483c91
%changelog
jvdias b159b29
* Wed Nov 30 2005 Jason Vas Dias<jvdias@redhat.com> - 0.6-3
jvdias b159b29
- fix bug 172047 - tools should require python-twisted
jvdias b159b29
- fix bug 173985 - docs directory permissions
jvdias b159b29
jvdias 2ec9a85
* Mon Nov 21 2005 Jason Vas Dias<jvdias@redhat.com> - 0.6-1
jvdias 2ec9a85
- Upgrade to upstream version 0.6 - now provides 'avahi-howl-compat'
jvdias 2ec9a85
  libraries / includes.
jvdias 2ec9a85
jvdias b9d86a7
* Mon Nov 14 2005 Jason Vas Dias<jvdias@redhat.com> - 0.5.2-7
jvdias b9d86a7
- fix bug 172034: fix ownership of /var/run/avahi-daemon/
jvdias b9d86a7
- fix bug 172772: .spec file improvements from matthias@rpmforge.net
jvdias b9d86a7
 
jvdias 3468e32
* Mon Oct 31 2005 Jason Vas Dias<jvdias@redhat.com> - 0.5.2-6
jvdias 3468e32
- put back avahi-devel Obsoletes: howl-devel
jvdias 3468e32
a5f67f3
* Mon Oct 31 2005 Alexander Larsson <alexl@redhat.com> - 0.5.2-5
a5f67f3
- Obsoletes howl, howl-libs, as we want to get rid of them on updates
a5f67f3
- No provides yet, as the howl compat library is in Avahi 0.6.0.
a5f67f3
Florian La Roche dcf3fba
* Sun Oct 30 2005 Florian La Roche <laroche@redhat.com>
Florian La Roche dcf3fba
- disable the Obsoletes: howl until the transition is complete
Florian La Roche dcf3fba
jvdias c5c9d50
* Fri Oct 28 2005 Jason Vas Dias<jvdias@redhat.com> - 0.5.2-3
jvdias c5c9d50
- change initscript to start avahi-daemon AFTER messagebus
jvdias c5c9d50
0c87b27
* Wed Oct 26 2005 Karsten Hopp <karsten@redhat.de> 0.5.2-2
0c87b27
- add buildrequires dbus-python
0c87b27
b483c91
* Fri Oct 21 2005 Alexander Larsson <alexl@redhat.com> - 0.5.2-1
b483c91
- Initial package