File totem.spec of Package totem
#
# spec file for package totem
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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_zeitgeist_plugin 0
Name: totem
Version: 3.26.0
Release: 0
Summary: Movie Player for the GNOME Desktop
License: GPL-2.0-or-later AND LGPL-2.1-or-later
Group: Productivity/Multimedia/Video/Players
URL: https://wiki.gnome.org/Apps/Videos
Source0: http://download.gnome.org/sources/totem/3.26/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM totem-remove-pycopile.patch bgo#787965 zaitor@opensuse.org -- No longer use debian specific tool
Patch0: totem-remove-pycopile.patch
# PATCH-FIX-UPSTREAM totem-fix-properties-crash.patch bgo#787996 zaitor@opensuse.org -- Fix crash when properties are closed fast
Patch1: totem-fix-properties-crash.patch
# PATCH-FIX-UPSTREAM totem-add-opus-ogg.patch bgo#788440 zaitor@opensuse.org -- Add opus ogg files support in mime
Patch2: totem-add-opus-ogg.patch
# PATCH-FIX-UPSTREAM totem-fix-gtk-doc.patch bgo#789202 zaitor@opensuse.org -- Fix gtk-doc build fail
Patch3: totem-fix-gtk-doc.patch
# PATCH-FIX-UPSTREAM totem-nb-translations.patch zaitor@opensuse.org -- Update Norwegian Bokmål translation
Patch4: totem-nb-translations.patch
# PATCH-FIX-UPSTREAM totem-thumbnailer-blacklist-fixes.patch bgo#790491 zaitor@opensuse.org -- Fixes to the thumbnailer blacklists plugins
Patch5: totem-thumbnailer-blacklist-fixes.patch
# PATCH-FIX-UPSTREAM totem-fix-libtotem_gir-dependency.patch bjorn.lie@gmail.com -- build: fix libtotem_gir dependency for vala plugins
Patch6: totem-fix-libtotem_gir-dependency.patch
# PATCH-FIX-SLE totem-xgettext-po-update.patch bsc1087076#c21 sbrabec@suse.com -- Fix broken "ninja totem-update-po".
Patch7: totem-xgettext-po-update.patch
BuildRequires: appstream-glib
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gstreamer-plugins-good >= 0.11.93
# For gst-inspect tool
BuildRequires: gstreamer-utils >= 0.11.93
BuildRequires: gtk-doc
BuildRequires: intltool
# FIXME meson does not recognise lirc_client
#BuildRequires: lirc-devel
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: python3-pylint
BuildRequires: update-desktop-files
BuildRequires: vala >= 0.14.1
BuildRequires: yelp-tools
BuildRequires: pkgconfig(cairo) >= 1.14.0
BuildRequires: pkgconfig(clutter-1.0) >= 1.17.3
BuildRequires: pkgconfig(clutter-gst-3.0) >= 2.99.2
BuildRequires: pkgconfig(clutter-gtk-1.0) >= 1.8.1
BuildRequires: pkgconfig(glib-2.0) >= 2.35.0
BuildRequires: pkgconfig(gnome-desktop-3.0)
BuildRequires: pkgconfig(grilo-0.3) >= 0.3.0
BuildRequires: pkgconfig(gsettings-desktop-schemas)
BuildRequires: pkgconfig(gstreamer-1.0) >= 1.6.0
BuildRequires: pkgconfig(gstreamer-plugins-bad-1.0) >= 1.0.2
BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) >= 1.6.0
BuildRequires: pkgconfig(gstreamer-tag-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.19.4
BuildRequires: pkgconfig(iso-codes)
BuildRequires: pkgconfig(libepc-ui-1.0) > 0.4.0
BuildRequires: pkgconfig(libnautilus-extension)
BuildRequires: pkgconfig(libpeas-1.0) >= 1.1.0
BuildRequires: pkgconfig(libxml-2.0) >= 2.6.0
BuildRequires: pkgconfig(pygobject-3.0) >= 2.90.3
BuildRequires: pkgconfig(shared-mime-info)
BuildRequires: pkgconfig(totem-plparser) >= 3.25.90
BuildRequires: pkgconfig(x11)
# We want a useful set of plugins
Requires: gstreamer-plugins-base
Requires: gstreamer-plugins-good
Requires: iso-codes
Recommends: %{name}-lang
# Required for cluttersink
Recommends: gstreamer-plugin-cluttergst3
Recommends: gstreamer-plugins-bad
Recommends: gstreamer-plugins-ugly
Recommends: totem-plugins
Suggests: gnome-dvb-daemon
# totem-plugin-upnp has been substituted by a grilo plugin.
Obsoletes: totem-plugin-upnp <= %{version}
# The browser plugins were dropped with totem 3.13.90
Obsoletes: totem-browser-plugin < 3.13.90
Obsoletes: totem-browser-plugin-gmp < 3.13.90
Obsoletes: totem-browser-plugin-vegas < 3.13.90
%glib2_gsettings_schema_requires
BuildRequires: translation-update-upstream
%if %{build_zeitgeist_plugin}
BuildRequires: pkgconfig(zeitgeist-2.0) >= 0.9.12
%endif
%if ! %{build_zeitgeist_plugin}
Obsoletes: totem-plugin-zeitgeist <= %{version}
%endif
%description
Totem is a movie player for the GNOME desktop based on GStreamer. It
features a playlist, a full-screen mode, seek and volume controls, and
complete keyboard navigation.
%package plugins
Summary: Plugins for Totem Movie Player
Group: Productivity/Multimedia/Video/Players
Requires: %{name} = %{version}
# Gromit Annotation plugin
Suggests: gromit
%glib2_gsettings_schema_requires
%description plugins
Totem is a movie player for the GNOME desktop based on GStreamer.
This package includes plugins for Totem, to add advanced features.
%package plugin-brasero
Summary: Brasero support for the Totem movie player
Group: Productivity/Multimedia/Video/Players
Requires: %{name} = %{version}
Requires: brasero
Supplements: packageand(%{name}:brasero)
%description plugin-brasero
Totem is movie player for the GNOME desktop based on GStreamer.
This package includes the Brasero plugin for Totem.
%if %{build_zeitgeist_plugin}
%package plugin-zeitgeist
Summary: Zeitgeist support for the Totem movie player
Group: Productivity/Multimedia/Video/Players
Requires: %{name} = %{version}
Supplements: packageand(%{name}:zeitgeist)
%description plugin-zeitgeist
Totem is a movie player for the GNOME desktop based on GStreamer.
This package includes the Zeitgeist plugin for Totem.
%endif
%package -n nautilus-totem
Summary: Totem Plugin for Nautilus
Group: Productivity/Multimedia/Video/Players
Requires: %{name} = %{version}
Supplements: packageand(%{name}:nautilus)
%description -n nautilus-totem
Totem is a movie player for the GNOME desktop based on GStreamer.
This package contains a plugin to integrate Totem into Nautilus.
%package devel
Summary: Developer Documentation for Totem Movie Player
Group: Development/Libraries/GNOME
Requires: %{name} = %{version}
%description devel
Totem is a movie player for the GNOME desktop based on GStreamer.
This package contains developer documentation.
%lang_package
%prep
%autosetup -p1
#Broken:
# xgettext: error while opening "[encoding: UTF-8]" for reading: No such file or directory
translation-update-upstream
%build
# FIXME once we figure out whats wrong with lirc-devel, add this to meson calls
# -Dwith-plugins=all \
%meson \
-D enable-easy-codec-installation=yes \
-D enable-gtk-doc=true \
-D enable-introspection=yes \
-D enable-nautilus=yes \
-D enable-python=yes \
-D enable-vala=yes \
%{nil}
# workaround parallel build breakage (bgo#786248)
%meson_build src/Totem-1.0.gir
%meson_build
%install
%meson_install
%find_lang %{name} %{?no_lang_C}
%fdupes %{buildroot}/%{_prefix}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%license COPYING
%doc %{_datadir}/help/C/%{name}/
%{_bindir}/*
%{_datadir}/GConf/gsettings/totem.convert
%{_datadir}/dbus-1/services/org.gnome.Totem.service
%dir %{_datadir}/metainfo
%{_datadir}/metainfo/org.gnome.Totem.appdata.xml
%{_datadir}/applications/*.desktop
%{_datadir}/glib-2.0/schemas/org.gnome.totem.enums.xml
%{_datadir}/glib-2.0/schemas/org.gnome.totem.gschema.xml
%{_datadir}/icons/hicolor/*/apps/org.gnome.Totem-symbolic.svg
%{_datadir}/icons/hicolor/*/apps/org.gnome.Totem.png
%dir %{_datadir}/thumbnailers
%{_datadir}/thumbnailers/totem.thumbnailer
%{_libexecdir}/totem-gallery-thumbnailer
%{_datadir}/totem/
%{_mandir}/man?/*%{ext_man}
# Own directories for plugins
%dir %{_libdir}/totem
%dir %{_libdir}/totem/plugins
%{_libdir}/libtotem.so.0*
%{_libdir}/girepository-1.0/Totem-1.0.typelib
%files lang -f %{name}.lang
%files -n nautilus-totem
%{_libdir}/nautilus/extensions-3.0/*.so
%files plugins
# Explicitly list plugins
%{_libdir}/totem/plugins/apple-trailers/
%{_libdir}/totem/plugins/autoload-subtitles/
%{_libdir}/totem/plugins/dbus/
%{_libdir}/totem/plugins/gromit/
%{_libdir}/totem/plugins/im-status/
#%%{_libdir}/totem/plugins/lirc/
%{_libdir}/totem/plugins/media-player-keys/
%{_libdir}/totem/plugins/ontop/
%{_libdir}/totem/plugins/opensubtitles/
%{_libdir}/totem/plugins/properties/
%{_libdir}/totem/plugins/pythonconsole/
%{_libdir}/totem/plugins/recent/
%{_libdir}/totem/plugins/rotation/
%{_libdir}/totem/plugins/save-file/
%{_libdir}/totem/plugins/screensaver/
%{_libdir}/totem/plugins/screenshot/
%{_libdir}/totem/plugins/skipto/
%{_libdir}/totem/plugins/vimeo/
%{_libdir}/totem/plugins/variable-rate/
%{_datadir}/GConf/gsettings/opensubtitles.convert
%{_datadir}/GConf/gsettings/pythonconsole.convert
%{_datadir}/glib-2.0/schemas/org.gnome.totem.plugins.opensubtitles.gschema.xml
%{_datadir}/glib-2.0/schemas/org.gnome.totem.plugins.pythonconsole.gschema.xml
%files plugin-brasero
%{_libdir}/totem/plugins/brasero-disc-recorder/
%if %{build_zeitgeist_plugin}
%files plugin-zeitgeist
%{_libdir}/totem/plugins/zeitgeist-dp/
%endif
%files devel
%doc AUTHORS NEWS README
%{_datadir}/gtk-doc/html/totem/
%{_includedir}/totem/
%{_libdir}/libtotem.so
%{_libdir}/pkgconfig/totem.pc
%{_datadir}/gir-1.0/*.gir
%changelog