File tracker.spec of Package tracker

#
# spec file for package tracker
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2010 Luis Medinas, Portugal
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#



Name:           tracker
Version:        0.9.38
Release:        3.<RELEASE3>
# FIXME: 2010-03-24 building gtk-doc fails because of a bug in graphviz
License:        GPLv2+
Summary:        Powerful object database, tag/metadata database, search tool and indexer
Url:            http://projects.gnome.org/tracker/
Group:          Productivity/Other
Source0:        %{name}-%{version}.tar.bz2
Source1:        README.SUSE.flickr
Source2:        README.SUSE.rss
# PATCH-FIX-UPSTREAM tracker-no-duplicated-results.patch bgo#639547 vuntz@opensuse.org -- Don't get duplicated results in search results
Patch0:         tracker-no-duplicated-results.patch
# PATCH-FIX-OPENSUSE tracker-removeable-media-off.patch bgo622288 badshah400@gmail.com -- Disable indexing on removable media by default. See bgo#622288 for how it should be done properly.
Patch1:         tracker-removeable-media-off.patch
BuildRequires:  NetworkManager-devel
BuildRequires:  dbus-1-glib-devel
BuildRequires:  enca-devel
BuildRequires:  evolution-data-server-devel
BuildRequires:  evolution-devel
BuildRequires:  fdupes
BuildRequires:  flac-devel
BuildRequires:  gcc-c++
BuildRequires:  giflib-devel
BuildRequires:  glib2-devel
BuildRequires:  gnome-panel-devel
BuildRequires:  graphviz
BuildRequires:  gstreamer-0_10-plugins-base-devel
BuildRequires:  gtk-doc
BuildRequires:  gtk2-devel
BuildRequires:  intltool
BuildRequires:  libexempi-devel
BuildRequires:  libexif-devel
BuildRequires:  libgee-devel
%if 0%{?suse_version} >= 1130
BuildRequires:  libgnome-keyring-devel
%else
BuildRequires:  gnome-keyring-devel
%endif
BuildRequires:  libgrss-devel
BuildRequires:  libgsf-devel
%if 0%{?suse_version} >= 1140
BuildRequires:  libgupnp-dlna-devel
%endif
BuildRequires:  libicu-devel
BuildRequires:  libiptcdata-devel
BuildRequires:  libpng-devel
BuildRequires:  libpoppler-glib-devel
BuildRequires:  librest-devel
BuildRequires:  libtiff-devel
BuildRequires:  libupower-glib-devel
BuildRequires:  libuuid-devel
BuildRequires:  libvorbis-devel
BuildRequires:  libxml2-devel
BuildRequires:  nautilus-devel
BuildRequires:  sqlite3-devel
BuildRequires:  taglib-devel
BuildRequires:  totem-pl-parser-devel
BuildRequires:  translation-update-upstream
BuildRequires:  update-desktop-files
# We require vala 0.11.2 at least, which is vala-unstable in 11.4 cycle.
BuildRequires:  vala-unstable-devel
BuildRequires:  zlib-devel
Recommends:     %{name}-lang
# We want to index files by default, if possible
Recommends:     %{name}-miner-files
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package miner-evolution
License:        GPLv2+
Summary:        Tracker miner to index Evolution mails
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}
Requires:       evolution
Supplements:    packageand(%{name}:evolution}
# Name changed during development of 11.4
Provides:       evolution-tracker = %{version}
Obsoletes:      evolution-tracker < %{version}
# A generic provides, since this is also an evolution plugin
Provides:       evolution-plugin-tracker = %{version}

%description miner-evolution
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains an Evolution plugin that will index Evolution
mails.

%package miner-files
License:        GPLv2+
Summary:        Tracker miner to index files and applications
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}

%description miner-files
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains a miner to index files and applications.

%package miner-flickr
License:        GPLv2+
Summary:        Tracker miner to index Flickr images
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}

%description miner-flickr
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains a miner to index Flickr images.

%package miner-rss
License:        GPLv2+
Summary:        Tracker miner to index ATOM and RSS feeds
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}

%description miner-rss
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains a miner to index ATOM and RSS feeds.

%package gui
License:        GPLv2+
Summary:        Graphical User Interface for Tracker
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}
Recommends:     %{name}-lang

%description gui
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n libtracker-client-0_10-0
License:        GPLv2+
Summary:        Client library for Tracker
Group:          System/Libraries
Recommends:     %{name}

%description -n libtracker-client-0_10-0
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n libtracker-extract-0_10-0
License:        GPLv2+
Summary:        Extract library for Tracker
Group:          System/Libraries
Recommends:     %{name}

%description -n libtracker-extract-0_10-0
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n libtracker-miner-0_10-0
License:        GPLv2+
Summary:        Miner library for Tracker
Group:          System/Libraries
Recommends:     %{name}

%description -n libtracker-miner-0_10-0
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n libtracker-sparql-0_10-0
License:        GPLv2+
Summary:        Sparql library for Tracker
Group:          System/Libraries
Recommends:     %{name}

%description -n libtracker-sparql-0_10-0
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n tracker-devel
License:        GPLv2+
Summary:        Tracker -- Development files
Group:          Development/Libraries/GNOME
Requires:       glib2-devel
Requires:       libtracker-client-0_10-0 = %{version}
Requires:       libtracker-extract-0_10-0 = %{version}
Requires:       libtracker-miner-0_10-0 = %{version}
Requires:       libtracker-sparql-0_10-0 = %{version}

%description -n tracker-devel
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

It consists of a common object database that allows entities to
have an almost infinte number of properties, metadata (both
embedded/harvested as well as user definable), a comprehensive
database of keywords/tags and links to other entities.

It provides additional features for file-based objects
including context linking and audit trails for a file object.

It has the ability to index, store, harvest metadata, retrieve
and search all types of files and other first class objects.

%package -n gnome-panel-applet-tracker
License:        GPLv2+
Summary:        A GNOME panel applet for Tracker
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}
Recommends:     %{name}-lang
Supplements:    packageand(%{name}:gnome-panel}
# Name changed during development of 11.4
Provides:       tracker-applet = %{name}
Obsoletes:      tracker-applet < %{name}

%description -n gnome-panel-applet-tracker
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains a panel applet to easily use Tracker.

%package -n nautilus-extension-tracker-tags
License:        GPLv2+
Summary:        Tracker Plugin for Nautilus
Group:          System/GUI/GNOME
Requires:       %{name} = %{version}
Requires:       nautilus
Recommends:     %{name}-lang
Supplements:    packageand(%{name}:nautilus}
# Name changed during development of 11.4
Provides:       nautilus-tracker = %{version}
Obsoletes:      nautilus-tracker < %{version}

%description -n nautilus-extension-tracker-tags
Tracker is a powerful desktop-neutral first class object
database, tag/metadata database, search tool and indexer.

This package contains an nautilus plugin to tag files with Tracker.

%lang_package
%prep
%setup -q
translation-update-upstream
%patch0 -p1
%patch1 -p1
cp %{S:1} src/miners/flickr/README.SUSE
cp %{S:2} src/miners/rss/README.SUSE

%build
%configure \
         --enable-libvorbis \
         --enable-libflac \
         --enable-tracker-explorer \
         --enable-tracker-search-bar \
         --enable-tracker-search-tool \
         --enable-tracker-preferences \
         --disable-functional-tests
#         --enable-gtk-doc
%__make %{?_smp_mflags}

%install
%makeinstall
find %{buildroot} -type f -name "*.la" -delete -print
rm -r %{buildroot}%{_datadir}/tracker-tests
%find_lang %{name} %{?no_lang_C}
%suse_update_desktop_file tracker-miner-flickr
%suse_update_desktop_file tracker-miner-fs
%suse_update_desktop_file tracker-miner-rss
%suse_update_desktop_file tracker-store
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-applications.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-evolution.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-files.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-flickr.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-rss.desktop
%suse_update_desktop_file tracker-preferences X-SuSE-ControlCenter-Personal
%suse_update_desktop_file tracker-needle DesktopUtility
%fdupes %{buildroot}

%clean
rm -rf %{buildroot}

%post -n libtracker-client-0_10-0 -p /sbin/ldconfig

%postun -n libtracker-client-0_10-0 -p /sbin/ldconfig

%post -n libtracker-extract-0_10-0 -p /sbin/ldconfig

%postun -n libtracker-extract-0_10-0 -p /sbin/ldconfig

%post -n libtracker-miner-0_10-0 -p /sbin/ldconfig

%postun -n libtracker-miner-0_10-0 -p /sbin/ldconfig

%post -n libtracker-sparql-0_10-0 -p /sbin/ldconfig

%postun -n libtracker-sparql-0_10-0 -p /sbin/ldconfig

%if 0%{?suse_version} > 1130

%post gui
%desktop_database_post
%icon_theme_cache_post
%endif

%if 0%{?suse_version} > 1130

%postun gui
%desktop_database_postun
%icon_theme_cache_postun
%endif

%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog COPYING README NEWS
%{_sysconfdir}/xdg/autostart/tracker-store.desktop
%{_bindir}/%{name}-control
%{_bindir}/%{name}-import
%{_bindir}/%{name}-info
%{_bindir}/%{name}-search
%{_bindir}/%{name}-sparql
%{_bindir}/%{name}-stats
%{_bindir}/%{name}-tag
%{_libexecdir}/%{name}-extract
%{_libexecdir}/%{name}-store
%{_libexecdir}/%{name}-writeback
%{_libdir}/%{name}-0.10/
%{_datadir}/%{name}/
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Extract.service
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.service
%{_mandir}/man1/tracker-control.1*
%{_mandir}/man1/tracker-extract.1*
%{_mandir}/man1/tracker-import.1*
%{_mandir}/man1/tracker-info.1*
%{_mandir}/man1/tracker-search.1*
%{_mandir}/man1/tracker-sparql.1*
%{_mandir}/man1/tracker-stats.1*
%{_mandir}/man1/tracker-store.1*
%{_mandir}/man1/tracker-tag.1*
%{_mandir}/man5/tracker-extract.cfg.5*
%{_mandir}/man5/tracker-fts.cfg.5*
%{_mandir}/man5/tracker-store.cfg.5*
# Exclude files which live in other packages
%exclude %{_datadir}/%{name}/miners/tracker-miner-applications.desktop
%exclude %{_datadir}/%{name}/miners/tracker-miner-evolution.desktop
%exclude %{_datadir}/%{name}/miners/tracker-miner-files.desktop
%exclude %{_datadir}/%{name}/miners/tracker-miner-flickr.desktop
%exclude %{_datadir}/%{name}/miners/tracker-miner-rss.desktop
%exclude %{_datadir}/%{name}/tracker-explorer.ui
%exclude %{_datadir}/%{name}/tracker-needle.ui
%exclude %{_datadir}/%{name}/tracker-preferences.ui
%exclude %{_datadir}/%{name}/tracker-search-bar.ui
%exclude %{_datadir}/%{name}/tracker-search-bar-menu.xml

%files miner-evolution
%defattr(-,root,root)
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Miner.EMails.service
%{_datadir}/%{name}/miners/tracker-miner-evolution.desktop
%{_libdir}/evolution/*/plugins/liborg-freedesktop-Tracker-evolution-plugin.so
%{_libdir}/evolution/*/plugins/org-freedesktop-Tracker-evolution-plugin.eplug

%files miner-files
%defattr(-,root,root)
%{_sysconfdir}/xdg/autostart/tracker-miner-fs.desktop
%{_libexecdir}/%{name}-miner-fs
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Miner.Applications.service
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Miner.Files.service
%{_datadir}/%{name}/miners/tracker-miner-applications.desktop
%{_datadir}/%{name}/miners/tracker-miner-files.desktop
%{_mandir}/man1/tracker-miner-fs.1*
%{_mandir}/man5/tracker-miner-fs.cfg.5*

%files miner-flickr
%defattr(-,root,root)
%doc src/miners/flickr/README.SUSE
%{_sysconfdir}/xdg/autostart/tracker-miner-flickr.desktop
%{_libexecdir}/%{name}-miner-flickr
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Miner.Flickr.service
%{_datadir}/%{name}/miners/tracker-miner-flickr.desktop

%files miner-rss
%defattr(-,root,root)
%doc src/miners/rss/README.SUSE examples/rss-reader/initial-data.ttl
%{_sysconfdir}/xdg/autostart/tracker-miner-rss.desktop
%{_libexecdir}/%{name}-miner-rss
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Miner.RSS.service
%{_datadir}/%{name}/miners/tracker-miner-rss.desktop

%files gui
%defattr(-,root,root)
# preferences
%{_bindir}/tracker-preferences
%{_datadir}/applications/tracker-preferences.desktop
%{_datadir}/icons/hicolor/*/apps/tracker.*
%{_datadir}/%{name}/tracker-preferences.ui
%{_mandir}/man1/tracker-preferences.1*
# Tracker Needle (former search tool)
%{_bindir}/tracker-needle
%{_datadir}/applications/tracker-needle.desktop
%{_datadir}/%{name}/tracker-needle.ui
%{_mandir}/man1/tracker-needle.1*
# explorer
%{_bindir}/%{name}-explorer
%{_datadir}/%{name}/tracker-explorer.ui

%files -n libtracker-client-0_10-0
%defattr(-,root,root)
%{_libdir}/libtracker-client*.so.*

%files -n libtracker-extract-0_10-0
%defattr(-,root,root)
%{_libdir}/libtracker-extract*.so.*

%files -n libtracker-miner-0_10-0
%defattr(-,root,root)
%{_libdir}/libtracker-miner*.so.*

%files -n libtracker-sparql-0_10-0
%defattr(-, root, root)
%{_libdir}/libtracker-sparql*.so.*

%files -n tracker-devel
%defattr(-,root,root)
%{_libdir}/lib*.so
%{_includedir}/tracker-0.10/
%{_libdir}/pkgconfig/*.pc
#%{_datadir}/gtk-doc/html/libtracker-common/
#%{_datadir}/gtk-doc/html/libtracker-miner/
#%{_datadir}/gtk-doc/html/libtracker-client/
#%{_datadir}/gtk-doc/html/libtracker-extract/
#%{_datadir}/gtk-doc/html/ontology/
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/*.deps
%{_datadir}/vala/vapi/*.vapi

%files -n gnome-panel-applet-tracker
%defattr(-,root,root)
%{_datadir}/%{name}/tracker-search-bar.ui
%{_datadir}/%{name}/tracker-search-bar-menu.xml
%{_datadir}/dbus-1/services/org.gnome.panel.applet.SearchBarFactory.service
%{_datadir}/gnome-panel/applets/org.gnome.panel.SearchBar.panel-applet
%{_libexecdir}/tracker-search-bar
%{_mandir}/man1/tracker-search-bar.1*

%files -n nautilus-extension-tracker-tags
%defattr(-,root,root)
%{_libdir}/nautilus/extensions-2.0/libnautilus-tracker-tags*

%files lang -f %{name}.lang

%changelog
openSUSE Build Service is sponsored by