#
-# TODO:
-# - finish crawl system
+# TODO:
# - separtate CLI utilities
#
%include /usr/lib/rpm/macros.mono
#
# Conditional build:
-%bcond_with epiphany # don't build epiphany extension
-%bcond_with evolution # don't include evolution support
+%bcond_with epiphany # build epiphany extension
+%bcond_with gsf # build with libgsf support
+%bcond_without evolution # don't include evolution support
#
Summary: Beagle - An indexing subsystem
Summary(pl): Beagle - podsystem indeksuj±cy
Name: beagle
-Version: 0.1.2
-Release: 0.9
+Version: 0.2.1
+Release: 2
License: Various
Group: Libraries
-Source0: http://ftp.gnome.org/pub/gnome/sources/beagle/0.1/%{name}-%{version}.tar.bz2
-# Source0-md5: 944553979659ed21a68bba307126126a
+Source0: http://ftp.gnome.org/pub/gnome/sources/beagle/0.2/%{name}-%{version}.tar.bz2
+# Source0-md5: 325ed91dc66fb6be060d0a5f4c8f56dd
Patch0: %{name}-desktop.patch
Patch1: %{name}-crawl.patch
URL: http://beaglewiki.org/Main_Page
BuildRequires: autoconf >= 2.52
BuildRequires: automake
-%{?with_evolution:BuildRequires: dotnet-evolution-sharp-devel >= 0.6}
-BuildRequires: dotnet-gecko-sharp2-devel = 0.11
-BuildRequires: dotnet-gmime-sharp-devel >= 2.1.16-2
-#BuildRequires: dotnet-gsf-sharp-devel >= 0.2
+%{?with_evolution:BuildRequires: dotnet-evolution-sharp-devel >= 0.10.2}
+BuildRequires: dotnet-gmime-sharp-devel >= 2.1.19
+%{?with_gsf:BuildRequires: dotnet-gsf-sharp-devel >= 0.7}
#BuildRequires: dotnet-gst-sharp-devel
-BuildRequires: dotnet-gtk-sharp2-gnome-devel
+BuildRequires: dotnet-gtk-sharp2-gnome-devel >= 2.3.90
%{?with_epiphany:BuildRequires: epiphany-devel >= 1.8}
BuildRequires: gnome-vfs2-devel
-BuildRequires: gtk+2-devel >= 2:2.4.0
+BuildRequires: gtk+2-devel >= 2:2.6.0
BuildRequires: gtk-doc
BuildRequires: libexif-devel >= 0.5.0
BuildRequires: libgnome-devel
BuildRequires: libpng-devel
BuildRequires: libtool
-BuildRequires: libxml2-devel >= 2.6.0
+BuildRequires: libxml2-devel >= 2.6.19
BuildRequires: mono-csharp >= 1.1.10
BuildRequires: mozilla-devel
BuildRequires: pkgconfig
+BuildRequires: python-devel
BuildRequires: sqlite-devel
BuildRequires: wv-devel >= 1.0.0
BuildRequires: zip
Requires: %{name}-libs = %{version}-%{release}
-Requires: dotnet-gmime-sharp >= 2.1.16-2
+Requires: dotnet-gmime-sharp >= 2.1.19
%{?with_epiphany:Requires: epiphany-extensions}
-Requires: gtk+2 >= 2:2.4.0
+Requires: gtk+2 >= 2:2.6.0
Requires: sqlite
+ExcludeArch: alpha i386 sparc sparc64
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
%package crawl-system
Summary: Beagle crawl system
-Summary(pl): System przeszukuj±cy beagle-crawl
+Summary(pl): System przeszukuj±cy beagle-crawl
Group: Applications/System
+Requires: crondaemon
+Provides: group(beagleindex)
+Provides: user(beagleindex)
%description crawl-system
Beagle crawl system.
%description crawl-system -l pl
System przeszukuj±cy beagle-crawl.
+%package evolution
+Summary: Beagle Evolution backend
+Summary(pl): Backend Beagle dla Evolution
+Group: X11/Applications/Networking
+Requires: %{name} = %{version}-%{release}
+Requires: dotnet-evolution-sharp >= 0.10.2-4
+Requires: evolution
+
+%description
+Beagle Evolution backend.
+
+%description evolution -l pl
+Backend Beagle dla Evolution.
+
%package -n epiphany-extension-beagle
Summary: Epiphany extension - beagle
Summary(pl): Rozszerzenie dla Epiphany - beagle
Rozszerzenie dla Epiphany sprawiaj±ce, ¿e Beagle indeksuje ka¿d±
odwiedzan± stronê.
+%package -n python-%{name}
+Summary: Beagle Python bindings
+Summary(pl): Wi±zania jêzyka Python dla Beagle
+Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
+%pyrequires_eq python-libs
+
+%description -n python-%{name}
+Beagle Python bindings.
+
+%description -n python-%{name} -l pl
+Wi±zania jêzyka Python dla Beagle.
+
%prep
%setup -q
%patch0 -p1
--enable-gtk-doc \
--with-html-dir=%{_gtkdocdir} \
--%{!?with_epiphany:dis}%{?with_epiphany:en}able-epiphany-extension \
- --%{!?with_evoultion:dis}%{?with_evolution:en}able-evolution-sharp
-
+ --%{!?with_evolution:dis}%{?with_evolution:en}able-evolution-sharp
+
%{__make} \
- MOZILLA_HOME=%{_libdir}/mozilla
+ MOZILLA_HOME=%{_libdir}/mozilla \
+ pythondir=%{py_sitedir}
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_var}/cache/beagle/index
%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+ DESTDIR=$RPM_BUILD_ROOT \
+ pythondir=%{py_sitedir}
# Kill useless files
rm -f $RPM_BUILD_ROOT%{_libdir}/epiphany/1.8/extensions/*.la \
$RPM_BUILD_ROOT%{_libdir}/%{name}/*.la
-
+
+rm -f $RPM_BUILD_ROOT%{py_sitedir}/*.{a,la}
+rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/*.{a,la}
+
rm -rf $RPM_BUILD_ROOT%{_datadir}/locale/no
%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
+%pre crawl-system
+%groupadd -g 166 -r -f beagleindex
+%useradd -u 166 -r -d /var/cache/beagle -s /bin/false -c "Beagle indexing" -g beagleindex beagleindex
+
+%postun crawl-system
+if [ "$1" = "0" ]; then
+ %userremove beagleindex
+ %groupremove beagleindex
+fi
+
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%defattr(644,root,root,755)
%doc AUTHORS COPYING ChangeLog NEWS README
%attr(755,root,root) %{_bindir}/*
-
+%attr(755,root,root) %{_libdir}/%{name}/lib*.so*
+%dir %{_libdir}/%{name}/Backends
%{_libdir}/%{name}/Filters
-%{_libdir}/%{name}/*.exe
+%attr(755,root,root) %{_libdir}/%{name}/*.exe
%{_libdir}/%{name}/*.dll*
%attr(755,root,root) %{_libdir}/%{name}/beagled-index-helper
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
%dir %{_libdir}/%{name}
-%attr(755,root,root) %{_libdir}/%{name}/lib*.so.*.*.*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/*.so
-%attr(755,root,root) %{_libdir}/%{name}/*.so
%{_includedir}/libbeagle
%{_libdir}/*.la
%{_gtkdocdir}/beagle
%files static
%defattr(644,root,root,755)
%{_libdir}/*.a
-%{_libdir}/%{name}/*.a
-# not finished yet
%files crawl-system
%defattr(644,root,root,755)
-%attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.daily/*
-%attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/beagle/*
+%attr(640,root,crontab) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/*.crontab
+%dir %{_sysconfdir}/beagle
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/beagle/*
+%dir %attr(755,beagleindex,beagleindex) %{_var}/cache/beagle
+%dir %attr(755,beagleindex,beagleindex) %{_var}/cache/beagle/index
%attr(755,root,root) %{_sbindir}/*
-%{_libdir}/beagle-crawl-system
+%attr(755,root,root) %{_libdir}/beagle-crawl-system
+
+%files evolution
+%defattr(644,root,root,755)
+%{_libdir}/%{name}/Backends/Evolution*
%if %{with epiphany}
%files -n epiphany-extension-beagle
%attr(755,root,root) %{_libdir}/epiphany/1.8/extensions/libbeagleextension.so*
%{_libdir}/epiphany/1.8/extensions/*.xml
%endif
+
+%files -n python-%{name}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py_sitedir}/*.so