rygel/rygel.spec

400 lines
14 KiB
RPMSpec

#
# spec file for package rygel
#
# Copyright (c) 2017 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/
#
Name: rygel
Version: 0.33.90
Release: 0
Summary: Home Media Solution for GNOME based on UPnP/DLNA
License: LGPL-2.0+
Group: Productivity/Multimedia/Other
Url: http://live.gnome.org/Rygel
Source0: http://download.gnome.org/sources/rygel/0.33/%{name}-%{version}.tar.xz
BuildRequires: gobject-introspection-devel >= 1.33.4
BuildRequires: libgupnp-av-devel >= 0.12.8
BuildRequires: libgupnp-devel >= 0.20.14
BuildRequires: libsoup-devel >= 2.44.0
BuildRequires: libunistring-devel
BuildRequires: sqlite3-devel >= 3.5
BuildRequires: suse-xsl-stylesheets
BuildRequires: systemd
%if !0%{?is_opensuse}
BuildRequires: translation-update-upstream
%endif
BuildRequires: update-desktop-files
BuildRequires: vala >= 0.24.0
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gee-0.8) >= 0.8.0
BuildRequires: pkgconfig(glib-2.0) >= 2.40.0
BuildRequires: pkgconfig(gstreamer-1.0) >= 1.0
BuildRequires: pkgconfig(gstreamer-app-1.0) >= 1.0
BuildRequires: pkgconfig(gstreamer-audio-1.0) >= 1.0
BuildRequires: pkgconfig(gstreamer-pbutils-1.0) >= 1.0
BuildRequires: pkgconfig(gtk+-3.0) >= 3.0
BuildRequires: pkgconfig(gupnp-dlna-2.0) >= 0.9.4
BuildRequires: pkgconfig(gupnp-dlna-gst-2.0) >= 0.9.4
BuildRequires: pkgconfig(libmediaart-2.0) >= 1.9.0
BuildRequires: pkgconfig(libsoup-2.4) >= 2.44.0
BuildRequires: pkgconfig(libxml-2.0) >= 2.7
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(tracker-sparql-1.0) >= 0.14.0
Requires: gstreamer-plugins-base
Recommends: %{name}-lang
Recommends: gstreamer-plugins-bad
Recommends: gstreamer-plugins-good
Recommends: gstreamer-plugins-ugly
# plugin-zdf-mediathek was removed in 0.31.1
Obsoletes: plugin-zdf-mediathek
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{?systemd_requires}
%description
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network. In
technical terms it is both a UPnP AV MediaServer and MediaRenderer
implemented through a plug-in mechanism. Interoperability with other
devices in the market is achieved by conformance to very strict
requirements of DLNA and on the fly conversion of media to format that
client devices are capable of handling.
%package -n librygel-core-2_6-2
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Core library
Group: System/Libraries
%description -n librygel-core-2_6-2
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the core library of rygel.
%package -n librygel-db-2_6-2
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Database library
Group: System/Libraries
%description -n librygel-db-2_6-2
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the database library of rygel.
%package -n librygel-renderer-2_6-2
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Renderer library
Group: System/Libraries
%description -n librygel-renderer-2_6-2
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the renderer library of rygel.
%package -n librygel-renderer-gst-2_6-2
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Renderer library
Group: System/Libraries
%description -n librygel-renderer-gst-2_6-2
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the renderer library of rygel.
%package -n librygel-ruih-2_0-1
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- ruih library
Group: System/Libraries
%description -n librygel-ruih-2_0-1
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the ruih library of rygel.
%package -n librygel-server-2_6-2
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Server library
Group: System/Libraries
%description -n librygel-server-2_6-2
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides the server library of rygel.
%package -n typelib-1_0-RygelCore-2_6
Summary: Rygel Core library -- gobject introspection
Group: System/Libraries
%description -n typelib-1_0-RygelCore-2_6
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
%package -n typelib-1_0-RygelRenderer-2_6
Summary: Rygel Renderer library -- gobject introspection
Group: System/Libraries
%description -n typelib-1_0-RygelRenderer-2_6
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
%package -n typelib-1_0-RygelRendererGst-2_6
Summary: Rygel Renderer library -- gobject introspection
Group: System/Libraries
%description -n typelib-1_0-RygelRendererGst-2_6
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
%package -n typelib-1_0-RygelServer-2_6
Summary: Rygel Server library -- gobject introspection
Group: System/Libraries
%description -n typelib-1_0-RygelServer-2_6
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
%package devel
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Development Files
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Requires: librygel-core-2_6-2 = %{version}
Requires: librygel-db-2_6-2 = %{version}
Requires: librygel-renderer-2_6-2 = %{version}
Requires: librygel-renderer-gst-2_6-2 = %{version}
Requires: librygel-ruih-2_0-1 = %{version}
Requires: librygel-server-2_6-2 = %{version}
Requires: typelib-1_0-RygelCore-2_6 = %{version}
Requires: typelib-1_0-RygelRenderer-2_6 = %{version}
Requires: typelib-1_0-RygelRendererGst-2_6 = %{version}
Requires: typelib-1_0-RygelServer-2_6 = %{version}
%description devel
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides development files for rygel.
%package plugin-gstreamer-renderer
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- GStreamer Renderer Plugin
Group: Productivity/Multimedia/Other
Requires: %{name} = %{version}
%description plugin-gstreamer-renderer
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides a standalone MediaRenderer plugin, based on the
GStreamer playbin2 element.
%package plugin-tracker
Summary: Home Media Solution for GNOME based on UPnP/DLNA -- Tracker Plugin
Group: Productivity/Multimedia/Other
Requires: %{name} = %{version}
Requires: tracker
Supplements: packageand(%{name}:tracker)
%description plugin-tracker
Rygel is a home media solution that allows you to easily share audio,
video and pictures, and control of media player on your home network.
This package provides a plugin using tracker to export media found on
the local machine.
%lang_package
%prep
%setup -q
%if !0%{?is_opensuse}
translation-update-upstream
%endif
%build
%configure --enable-tracker-plugin \
--enable-media-export-plugin \
--enable-external-plugin \
--enable-gst-launch-plugin
make %{?_smp_mflags} V=1
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
%suse_update_desktop_file rygel
%suse_update_desktop_file rygel-preferences X-SuSE-ControlCenter-Personal
%find_lang %{name} %{?no_lang_C}
%post
%desktop_database_post
%icon_theme_cache_post
%postun
%desktop_database_postun
%icon_theme_cache_postun
%post -n librygel-core-2_6-2 -p /sbin/ldconfig
%postun -n librygel-core-2_6-2 -p /sbin/ldconfig
%post -n librygel-db-2_6-2 -p /sbin/ldconfig
%postun -n librygel-db-2_6-2 -p /sbin/ldconfig
%post -n librygel-renderer-2_6-2 -p /sbin/ldconfig
%postun -n librygel-renderer-2_6-2 -p /sbin/ldconfig
%post -n librygel-renderer-gst-2_6-2 -p /sbin/ldconfig
%postun -n librygel-renderer-gst-2_6-2 -p /sbin/ldconfig
%post -n librygel-ruih-2_0-1 -p /sbin/ldconfig
%postun -n librygel-ruih-2_0-1 -p /sbin/ldconfig
%post -n librygel-server-2_6-2 -p /sbin/ldconfig
%postun -n librygel-server-2_6-2 -p /sbin/ldconfig
%files
%defattr(-, root, root)
%doc AUTHORS COPYING README TODO NEWS
%config(noreplace) %{_sysconfdir}/rygel.conf
%{_userunitdir}/rygel.service
%{_bindir}/rygel
%{_bindir}/rygel-preferences
%{_datadir}/rygel/
%{_datadir}/applications/rygel.desktop
%{_datadir}/applications/rygel-preferences.desktop
%{_datadir}/dbus-1/services/org.gnome.Rygel1.service
%{_datadir}/icons/hicolor/*/apps/*
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/mx-extract
%{_mandir}/*/*
# Plugins that we ship by default because they don't have a dependency and can
# be useful to most people
%dir %{_libdir}/rygel-2.6/
%dir %{_libdir}/rygel-2.6/engines/
%dir %{_libdir}/rygel-2.6/plugins/
%{_libdir}/rygel-2.6/engines/librygel-media-engine-gst.so
%{_libdir}/rygel-2.6/engines/librygel-media-engine-simple.so
%{_libdir}/rygel-2.6/engines/media-engine-gst.plugin
%{_libdir}/rygel-2.6/engines/media-engine-simple.plugin
# external applications implementing D-Bus MediaServer spec
%{_libdir}/rygel-2.6/plugins/librygel-external.so
%{_libdir}/rygel-2.6/plugins/external.plugin
# GStreamer pipelines in the config
%{_libdir}/rygel-2.6/plugins/librygel-gst-launch.so
%{_libdir}/rygel-2.6/plugins/gst-launch.plugin
# LightweightMediaScanner
%{_libdir}/rygel-2.6/plugins/librygel-lms.so
%{_libdir}/rygel-2.6/plugins/lms.plugin
# folders and files in the config
%{_libdir}/rygel-2.6/plugins/librygel-media-export.so
%{_libdir}/rygel-2.6/plugins/media-export.plugin
# media players implementing MPRIS2 D-Bus interface
%{_libdir}/rygel-2.6/plugins/librygel-mpris.so
%{_libdir}/rygel-2.6/plugins/mpris.plugin
# ruih plugin
%{_libdir}/rygel-2.6/plugins/librygel-ruih.so
%{_libdir}/rygel-2.6/plugins/ruih.plugin
%files -n librygel-core-2_6-2
%defattr(-,root,root)
%{_libdir}/librygel-core-2.6.so.*
%files -n librygel-db-2_6-2
%defattr(-,root,root)
%{_libdir}/librygel-db-2.6.so.*
%files -n librygel-renderer-2_6-2
%defattr(-,root,root)
%{_libdir}/librygel-renderer-2.6.so.*
%files -n librygel-renderer-gst-2_6-2
%defattr(-,root,root)
%{_libdir}/librygel-renderer-gst-2.6.so.*
%files -n librygel-ruih-2_0-1
%defattr(-,root,root)
%{_libdir}/librygel-ruih-2.0.so.*
%files -n librygel-server-2_6-2
%defattr(-,root,root)
%{_libdir}/librygel-server-2.6.so.*
%files -n typelib-1_0-RygelCore-2_6
%defattr(-,root,root)
%{_libdir}/girepository-1.0/RygelCore-2.6.typelib
%files -n typelib-1_0-RygelRenderer-2_6
%defattr(-,root,root)
%{_libdir}/girepository-1.0/RygelRenderer-2.6.typelib
%files -n typelib-1_0-RygelRendererGst-2_6
%defattr(-,root,root)
%{_libdir}/girepository-1.0/RygelRendererGst-2.6.typelib
%files -n typelib-1_0-RygelServer-2_6
%defattr(-,root,root)
%{_libdir}/girepository-1.0/RygelServer-2.6.typelib
%files devel
%defattr(-, root, root)
%{_includedir}/rygel-2.6/
%{_libdir}/librygel-core-2.6.so
%{_libdir}/librygel-db-2.6.so
%{_libdir}/librygel-renderer-2.6.so
%{_libdir}/librygel-renderer-gst-2.6.so
%{_libdir}/librygel-server-2.6.so
%{_libdir}/librygel-ruih-2.0.so
%{_libdir}/pkgconfig/rygel-core-2.6.pc
%{_libdir}/pkgconfig/rygel-renderer-2.6.pc
%{_libdir}/pkgconfig/rygel-renderer-gst-2.6.pc
%{_libdir}/pkgconfig/rygel-server-2.6.pc
%{_datadir}/gir-1.0/RygelCore-2.6.gir
%{_datadir}/gir-1.0/RygelRenderer-2.6.gir
%{_datadir}/gir-1.0/RygelRendererGst-2.6.gir
%{_datadir}/gir-1.0/RygelServer-2.6.gir
%{_datadir}/gtk-doc/html/librygel-core/
%{_datadir}/gtk-doc/html/librygel-db/
%{_datadir}/gtk-doc/html/librygel-renderer/
%{_datadir}/gtk-doc/html/librygel-renderer-gst/
%{_datadir}/gtk-doc/html/librygel-server/
%{_datadir}/vala/vapi/rygel-core-2.6.deps
%{_datadir}/vala/vapi/rygel-core-2.6.vapi
%{_datadir}/vala/vapi/rygel-db-2.6.deps
%{_datadir}/vala/vapi/rygel-db-2.6.vapi
%{_datadir}/vala/vapi/rygel-renderer-2.6.deps
%{_datadir}/vala/vapi/rygel-renderer-2.6.vapi
%{_datadir}/vala/vapi/rygel-renderer-gst-2.6.deps
%{_datadir}/vala/vapi/rygel-renderer-gst-2.6.vapi
%{_datadir}/vala/vapi/rygel-ruih-2.0.deps
%{_datadir}/vala/vapi/rygel-ruih-2.0.vapi
%{_datadir}/vala/vapi/rygel-server-2.6.deps
%{_datadir}/vala/vapi/rygel-server-2.6.vapi
%files plugin-gstreamer-renderer
%defattr(-, root, root)
%{_libdir}/rygel-2.6/plugins/librygel-playbin.so
%{_libdir}/rygel-2.6/plugins/playbin.plugin
%files plugin-tracker
%defattr(-, root, root)
%{_libdir}/rygel-2.6/plugins/librygel-tracker.so
%{_libdir}/rygel-2.6/plugins/tracker.plugin
%files lang -f %{name}.lang
%defattr(-,root,root)
%changelog