gnome-shell/gnome-shell.spec

240 lines
8.5 KiB
RPMSpec

#
# spec file for package gnome-shell
#
# Copyright (c) 2014 SUSE LINUX Products 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_wayland_backend 0
Name: gnome-shell
Version: 3.12.2
Release: 0
Summary: GNOME Shell
License: GPL-2.0+
Group: System/GUI/GNOME
Url: http://live.gnome.org/GnomeShell
Source: http://download.gnome.org/sources/gnome-shell/3.12/%{name}-%{version}.tar.xz
# PATCH-NEEDS-REBASE PATCH-FIX-UPSTREAM gnome-shell-private-connection.patch bnc#751211 bgo#646187 dimstar@opensuse.org -- create private connections if the user is not authorized
Patch1: gnome-shell-private-connection.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: gcc-c++
BuildRequires: intltool
BuildRequires: translation-update-upstream
BuildRequires: update-desktop-files
BuildRequires: xsltproc
# needed for directory ownership
BuildRequires: dbus-1
BuildRequires: pkgconfig(atk-bridge-2.0)
BuildRequires: pkgconfig(caribou-1.0) >= 0.4.8
BuildRequires: pkgconfig(clutter-1.0) >= 1.15.9
BuildRequires: pkgconfig(gcr-base-3) >= 3.7.5
BuildRequires: pkgconfig(gdk-pixbuf-2.0)
BuildRequires: pkgconfig(gio-2.0) >= 2.37.0
BuildRequires: pkgconfig(gjs-1.0) >= 1.39.0
BuildRequires: pkgconfig(gnome-bluetooth-1.0) >= 3.9.0
BuildRequires: pkgconfig(gnome-desktop-3.0) >= 3.7.90
BuildRequires: pkgconfig(gnome-keybindings)
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.10.1
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.7.4
BuildRequires: pkgconfig(gstreamer-1.0) >= 0.11.92
BuildRequires: pkgconfig(gstreamer-base-1.0)
BuildRequires: pkgconfig(gtk+-3.0) >= 3.3.9
BuildRequires: pkgconfig(json-glib-1.0) >= 0.13.2
BuildRequires: pkgconfig(libcanberra)
BuildRequires: pkgconfig(libcanberra-gtk)
BuildRequires: pkgconfig(libcroco-0.6) >= 0.6.8
BuildRequires: pkgconfig(libedataserver-1.2) >= 3.5.3
BuildRequires: pkgconfig(libgnome-menu-3.0) >= 3.5.3
BuildRequires: pkgconfig(libmutter) >= 3.12.1
BuildRequires: pkgconfig(libnm-glib)
BuildRequires: pkgconfig(libnm-gtk) >= 0.9.8
BuildRequires: pkgconfig(libnm-util) >= 0.9.8
BuildRequires: pkgconfig(libpulse) >= 2.0
BuildRequires: pkgconfig(libpulse-mainloop-glib)
BuildRequires: pkgconfig(libsecret-unstable)
BuildRequires: pkgconfig(libsoup-2.4)
BuildRequires: pkgconfig(libstartup-notification-1.0) >= 0.11
BuildRequires: pkgconfig(libsystemd-daemon)
BuildRequires: pkgconfig(libsystemd-login)
BuildRequires: pkgconfig(mutter-plugins)
BuildRequires: pkgconfig(polkit-agent-1) >= 0.100
BuildRequires: pkgconfig(telepathy-glib) >= 0.17.5
BuildRequires: pkgconfig(telepathy-logger-0.2) >= 0.2.4
BuildRequires: pkgconfig(xtst)
%if %{build_wayland_backend}
BuildRequires: pkgconfig(libmutter-wayland) >= 3.12.1
%endif
# The clock / calendar applet in the panel requires e-d-s (bnc#795793).
Requires: evolution-data-server
Requires: gdk-pixbuf-loader-rsvg
Requires: gnome-icon-theme-symbolic
Requires: gnome-session
# For a GSettings schema and power system icon
Requires: gnome-settings-daemon
Requires: gsettings-desktop-schemas
## Finally, dependencies for session services that are needed for system icons and the user menu
# bluetooth system icon
Requires: gnome-bluetooth
# "System settings" menu item
Requires: gnome-control-center
# "High Contrast" in accessibility status icon
Requires: gnome-themes-accessibility
# network system icon
Requires: NetworkManager-gnome
# 11.4 doesn't have typelib dependency
%if 0%{?suse_version} < 1210
Requires: libaccountsservice0
Requires: libcaribou0
Requires: libgdmgreeter1
%endif
Recommends: %{name}-browser-plugin
Recommends: %{name}-lang
# Wanda makes use of this.
Recommends: fortune
# The dateTime applet in the panel launches gnome-clocks upon user request
Recommends: gnome-clocks
Recommends: gnome-shell-search-provider-documents
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%glib2_gsettings_schema_requires
%description
The GNOME Shell redefines user interactions with the GNOME desktop. In
particular, it offers new paradigms for launching applications, accessing
documents, and organizing open windows in GNOME.
%if %{build_wayland_backend}
%package wayland
Summary: GNOME Shell -- Wayland session
Group: System/GUI/GNOME
Requires: %{name} = %{version}
Requires: gnome-settings-daemon
%description wayland
This package contains the definition of the default GNOME Shell on Wayland.
%endif
%package devel
Summary: GNOME Shell -- Development Files
Group: Development/Libraries/GNOME
Requires: %{name} = %{version}
%description devel
The GNOME Shell redefines user interactions with the GNOME desktop. In
particular, it offers new paradigms for launching applications, accessing
documents, and organizing open windows in GNOME.
%package browser-plugin
Summary: GNOME Shell Browser Plugin for the Extensions Repository
Group: System/GUI/GNOME
Requires: %{name} = %{version}
Supplements: packageand(%{name}:MozillaFirefox)
%description browser-plugin
The GNOME Shell Browser Plugin provides integration with gnome-shell
and the corresponding extensions repository. The plugin allows the
extensions repository to provide good integration, letting the website
know which extensions are enabled and disabled, and allowing the website
to enable, disable and install them.
%lang_package
%prep
%setup -q
# NEEDS REBASE
#patch1 -p1
translation-update-upstream
%build
export BROWSER_PLUGIN_DIR=%{_libdir}/browser-plugins
%configure \
--disable-static \
--libexecdir=%{_libexecdir}/%{name} \
--with-nmlibexecdir=%{_libexecdir} \
--disable-schemas-install \
--enable-compile-warnings=no
%__make %{?_smp_mflags} V=1
%install
%makeinstall
find %{buildroot} -type f -name "*.la" -delete -print
# This is the directory where extensions get installed
install -d %{buildroot}%{_datadir}/gnome-shell/extensions
# This is the directory where search providers get installed
install -d %{buildroot}%{_datadir}/gnome-shell/search-providers
%find_lang %{name} %{?no_lang_C}
%suse_update_desktop_file %{name}
%suse_update_desktop_file gnome-shell-extension-prefs
# Work around race, as reported in bnc#844891 & bgo#709313.
install -d %{buildroot}%{_datadir}/gnome-shell/modes
%clean
rm -rf %{buildroot}
%post
%glib2_gsettings_schema_post
%desktop_database_post
%postun
%glib2_gsettings_schema_postun
%desktop_database_postun
%files
%defattr(-,root,root)
%doc COPYING README NEWS
%{_bindir}/gnome-shell
%{_bindir}/gnome-shell-extension-prefs
%{_bindir}/gnome-shell-extension-tool
%{_bindir}/gnome-shell-perf-tool
%{_libexecdir}/gnome-shell/
%if "%{_libdir}" != "%{_libexecdir}"
%{_libdir}/gnome-shell/
%endif
%dir %{_datadir}/GConf
%dir %{_datadir}/GConf/gsettings
%{_datadir}/GConf/gsettings/gnome-shell-overrides.convert
%{_datadir}/applications/evolution-calendar.desktop
%{_datadir}/applications/gnome-shell.desktop
%{_datadir}/applications/gnome-shell-extension-prefs.desktop
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screencast.xml
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screenshot.xml
%{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider.xml
%{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml
%{_datadir}/dbus-1/services/org.gnome.Shell.CalendarServer.service
%{_datadir}/dbus-1/services/org.gnome.Shell.HotplugSniffer.service
%{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.xml
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-system.xml
%{_datadir}/gnome-shell/
%doc %{_mandir}/man?/gnome-shell.*
%if %{build_wayland_backend}
%files wayland
%defattr(-,root,root)
%{_bindir}/gnome-shell-wayland
%{_datadir}/applications/gnome-shell-wayland.desktop
%endif
%files devel
%defattr(-,root,root)
%doc %{_datadir}/gtk-doc/html/st/
%doc %{_datadir}/gtk-doc/html/shell/
%files browser-plugin
%defattr(-,root,root)
%doc browser-plugin/README
%{_libdir}/browser-plugins/libgnome-shell-browser-plugin.*
%files lang -f %{name}.lang
%changelog