tracker/tracker.spec

552 lines
19 KiB
RPMSpec
Raw Normal View History

#
# 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/
#
%define build_evo 0%{?suse_version} <= 1140
Name: tracker
Version: 0.11.0
Release: 3
# FIXME: on update, check if we can re-enable the evo miner for Factory (last check: 0.11.0)
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-OPENSUSE tracker-removeable-media-off.patch bgo622288 badshah400@gmail.com -- Disable indexing on removable media by default. This is only needed for 11.4 and earlier, as 12.1 and later have proper default values in GSettings.
Patch1: tracker-removeable-media-off.patch
BuildRequires: NetworkManager-devel
BuildRequires: dbus-1-glib-devel
# Needed for the gtk-doc
BuildRequires: dia
BuildRequires: enca-devel
%if 0%{?build_evo}
BuildRequires: evolution-data-server-devel
BuildRequires: evolution-devel
%endif
BuildRequires: fdupes
BuildRequires: flac-devel
BuildRequires: gcc-c++
BuildRequires: giflib-devel
BuildRequires: glib2-devel
BuildRequires: gobject-introspection-devel
BuildRequires: graphviz
BuildRequires: gstreamer-0_10-plugins-base-devel
BuildRequires: gtk-doc
BuildRequires: gtk3-devel
BuildRequires: intltool
BuildRequires: libexempi-devel
BuildRequires: libexif-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: libtiff-devel
BuildRequires: libupower-glib-devel
BuildRequires: libuuid-devel
BuildRequires: libvorbis-devel
BuildRequires: libxml2-devel
BuildRequires: sqlite3-devel
BuildRequires: taglib-devel
BuildRequires: totem-pl-parser-devel
BuildRequires: translation-update-upstream
BuildRequires: update-desktop-files
BuildRequires: vala-devel >= 0.12.0
BuildRequires: zlib-devel
BuildRequires: pkgconfig(gee-1.0)
BuildRequires: pkgconfig(libnautilus-extension)
BuildRequires: pkgconfig(libpanelapplet-4.0)
BuildRequires: pkgconfig(rest-0.7)
Recommends: %{name}-lang
# We want to index files by default, if possible
Recommends: %{name}-miner-files
%if !(0%{?build_evo})
Obsoletes: %{name}-miner-evolution < %{version}
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%glib2_gsettings_schema_requires
%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.
%if 0%{?build_evo}
%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.
%endif
%package miner-files
License: GPLv2+
Summary: Tracker miner to index files and applications
Group: System/GUI/GNOME
Requires: %{name} = %{version}
%glib2_gsettings_schema_requires
%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-extract-0_11-0
License: GPLv2+
Summary: Extract library for Tracker
Group: System/Libraries
Recommends: %{name}
%glib2_gsettings_schema_requires
%description -n libtracker-extract-0_11-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_11-0
License: GPLv2+
Summary: Miner library for Tracker
Group: System/Libraries
Recommends: %{name}
%description -n libtracker-miner-0_11-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_11-0
License: GPLv2+
Summary: Sparql library for Tracker
Group: System/Libraries
Recommends: %{name}
%description -n libtracker-sparql-0_11-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-extract-0_11-0 = %{version}
Requires: libtracker-miner-0_11-0 = %{version}
Requires: libtracker-sparql-0_11-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
%if 0%{?suse_version} <= 1140
%patch1 -p1
%endif
cp %{S:1} src/miners/flickr/README.SUSE
cp %{S:2} src/miners/rss/README.SUSE
%build
autoreconf
%configure \
--enable-libvorbis \
--enable-libflac \
--enable-tracker-explorer \
--enable-tracker-search-bar \
--enable-tracker-preferences \
--disable-functional-tests \
--enable-gtk-doc
%__make %{?_smp_mflags} V=1
%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
%if 0%{?build_evo}
%suse_update_desktop_file %{buildroot}%{_datadir}/tracker/miners/tracker-miner-evolution.desktop
%endif
%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
%glib2_gsettings_schema_post
%postun
%glib2_gsettings_schema_postun
%post miner-files
%glib2_gsettings_schema_post
%postun miner-files
%glib2_gsettings_schema_postun
%post -n libtracker-extract-0_11-0
%glib2_gsettings_schema_post
/sbin/ldconfig
%postun -n libtracker-extract-0_11-0
%glib2_gsettings_schema_postun
/sbin/ldconfig
%post -n libtracker-miner-0_11-0 -p /sbin/ldconfig
%postun -n libtracker-miner-0_11-0 -p /sbin/ldconfig
%post -n libtracker-sparql-0_11-0 -p /sbin/ldconfig
%postun -n libtracker-sparql-0_11-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.11/
%{_datadir}/%{name}/
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.Extract.service
%{_datadir}/dbus-1/services/org.freedesktop.Tracker1.service
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.DB.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.FTS.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.Store.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.Writeback.gschema.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.enums.xml
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.gschema.xml
%{_mandir}/man1/tracker-control.1%{ext_man}
%{_mandir}/man1/tracker-extract.1%{ext_man}
%{_mandir}/man1/tracker-import.1%{ext_man}
%{_mandir}/man1/tracker-info.1%{ext_man}
%{_mandir}/man1/tracker-search.1%{ext_man}
%{_mandir}/man1/tracker-sparql.1%{ext_man}
%{_mandir}/man1/tracker-stats.1%{ext_man}
%{_mandir}/man1/tracker-store.1%{ext_man}
%{_mandir}/man1/tracker-tag.1%{ext_man}
# Exclude files which live in other packages
%exclude %{_datadir}/%{name}/miners/tracker-miner-applications.desktop
%if 0%{?build_evo}
%exclude %{_datadir}/%{name}/miners/tracker-miner-evolution.desktop
%endif
%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
%if 0%{?build_evo}
%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
%endif
%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}/glib-2.0/schemas/org.freedesktop.Tracker.Miner.Files.gschema.xml
%{_datadir}/%{name}/miners/tracker-miner-applications.desktop
%{_datadir}/%{name}/miners/tracker-miner-files.desktop
%{_mandir}/man1/tracker-miner-fs.1%{ext_man}
%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
%{_mandir}/man1/tracker-miner-rss.1%{ext_man}
%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-extract-0_11-0
%defattr(-,root,root)
%{_libdir}/libtracker-extract*.so.*
%{_libdir}/girepository-1.0/TrackerExtract-0.11.typelib
%{_datadir}/glib-2.0/schemas/org.freedesktop.Tracker.Extract.gschema.xml
%files -n libtracker-miner-0_11-0
%defattr(-,root,root)
%{_libdir}/libtracker-miner*.so.*
%{_libdir}/girepository-1.0/TrackerMiner-0.11.typelib
%files -n libtracker-sparql-0_11-0
%defattr(-, root, root)
%{_libdir}/libtracker-sparql*.so.*
%{_libdir}/girepository-1.0/Tracker-0.11.typelib
%files -n tracker-devel
%defattr(-,root,root)
%{_libdir}/lib*.so
%{_includedir}/tracker-0.11/
%{_libdir}/pkgconfig/*.pc
%{_datadir}/gtk-doc/html/libtracker-miner/
%{_datadir}/gtk-doc/html/libtracker-extract/
%{_datadir}/gtk-doc/html/libtracker-sparql
%{_datadir}/gtk-doc/html/ontology/
%dir %{_datadir}/vala
%dir %{_datadir}/vala/vapi
%{_datadir}/vala/vapi/*.deps
%{_datadir}/vala/vapi/*.vapi
%{_datadir}/gir-1.0/*.gir
%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/4.0/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-3.0/libnautilus-tracker-tags*
%files lang -f %{name}.lang
%changelog