summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /gnome-base/gnome-shell
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'gnome-base/gnome-shell')
-rw-r--r--gnome-base/gnome-shell/Manifest3
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.12-bluetooth-flag.patch50
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.14.0-bluetooth-gold.patch31
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.14.0-defaults.patch25
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.14.4.ebuild224
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.16.2.ebuild213
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.16.3.ebuild213
-rw-r--r--gnome-base/gnome-shell/metadata.xml13
8 files changed, 772 insertions, 0 deletions
diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
new file mode 100644
index 000000000000..a76f704ed7b3
--- /dev/null
+++ b/gnome-base/gnome-shell/Manifest
@@ -0,0 +1,3 @@
+DIST gnome-shell-3.14.4.tar.xz 1597744 SHA256 43336da7edece72bf298f1749510abb8470b625585e551c8b45258981435fd80 SHA512 254536cc3362d968bc624d2e87a5dbfe0471a7dbfb9c43a13e8913a3c097adaa22010bca6fc3fab90106519902d1997b4fa4f9ec6f325667dc3222f06614dc52 WHIRLPOOL 25bb0a0bc5227742e55912082157692d9f71bcf90ff6a3ed7a0b731470cb0a4adba70ba703a302f678746d6cc7263b8ca2fec3b77dae6bcfdd15d694262792a0
+DIST gnome-shell-3.16.2.tar.xz 1592496 SHA256 90b7aeac7673f05f0bf7de39444ac458900c943fa8fd22e5374c047aa54d1838 SHA512 54b9e5c0bcc484e286c6de508c8698452ec00fdcf4dbfc82c812989d69f7adcf5964f93d7284b75dde8f4542538cb7ea6e157f0cb5404fae2dc560474573f6cd WHIRLPOOL 125c645d4ac4f262caee325d76c2666e8bac3ab807074fc7115375d2e0882b6f4f178cd4e63bbfb033eea35d9ce93bfe88e1c4136e3773d811729dc6300718fb
+DIST gnome-shell-3.16.3.tar.xz 1593148 SHA256 227eff19fdf50fd7ac605e8068454a6a6bc6d1bd73281b28305c3cd8a91190cb SHA512 72be3bb435d0a8c4c5b1cb20dbd10697c54110ead4d5b55e88bf4c23ec7ec0e2169cbe2c357f002dcec17330d346e9efc6c8d284627d0407de25365142713e5e WHIRLPOOL 9d8c037a723b17f2a102ebe3a5f734a4df1ba88302b6240a4645629b0d51a6006bbda8de9c67e7b23730ee16e97c7691ecf950ec77d32fb63cf19bcdbc88724f
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.12-bluetooth-flag.patch b/gnome-base/gnome-shell/files/gnome-shell-3.12-bluetooth-flag.patch
new file mode 100644
index 000000000000..2fa93af25cd0
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.12-bluetooth-flag.patch
@@ -0,0 +1,50 @@
+From 3c9c3b19fcb212171036e1e57e749411b5fd7d65 Mon Sep 17 00:00:00 2001
+From: Sobhan Mohammadpour <sobhanmohammadpour1@yahoo.fr>
+Date: Thu, 28 Feb 2013 18:48:32 +0330
+Subject: [PATCH 2/3] Make bluetooth support optional
+
+https://bugs.gentoo.org/show_bug.cgi?id=398145
+
+Ed Catmur 2012-01-08 13:46:22 UTC
+libgnome-bluetooth-applet is a private library so they shouldn't be linking
+against it anyway. I tried to work out how to tell libtool to add it to rpath
+but got totally lost.
+
+I'll see if I can work out how to fix the automagic gnome-bluetooth dependency
+so I can at least merge USE=-bluetooth.
+---
+ configure.ac | 16 +++++++++++++---
+ 1 file changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9a30e65..aa710f0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -138,11 +138,21 @@ AS_IF([test x$enable_browser_plugin = xyes], [
+ ])
+ AM_CONDITIONAL(BUILD_BROWSER_PLUGIN, test x$enable_browser_plugin = xyes)
+
++AC_MSG_CHECKING([for bluetooth support])
++AC_ARG_WITH([bluetooth],
++ AS_HELP_STRING([--without-bluetooth],
++ [Build without gnome-bluetooth library (default: auto)]))
++AS_IF([test "x$with_bluetooth" != "xno"], [
+ PKG_CHECK_MODULES(BLUETOOTH, gnome-bluetooth-1.0 >= 3.9.0,
+- [AC_DEFINE([HAVE_BLUETOOTH],[1],[Define if you have libgnome-bluetooth-applet])
+- AC_SUBST([HAVE_BLUETOOTH],[1])],
++ [AC_DEFINE([HAVE_BLUETOOTH],[1],[Define if you have libgnome-bluetooth-applet])
++ AC_SUBST([HAVE_BLUETOOTH],[1])
++ AC_MSG_RESULT([yes])],
+ [AC_DEFINE([HAVE_BLUETOOTH],[0])
+- AC_SUBST([HAVE_BLUETOOTH],[0])])
++ AC_SUBST([HAVE_BLUETOOTH],[0])
++ AC_MSG_RESULT([no])])
++], [AC_DEFINE([HAVE_BLUETOOTH],[0])
++ AC_SUBST([HAVE_BLUETOOTH],[0])
++ AC_MSG_RESULT([no])])
+
+ PKG_CHECK_MODULES(CALENDAR_SERVER, libecal-1.2 >= $LIBECAL_MIN_VERSION libedataserver-1.2 >= $LIBEDATASERVER_MIN_VERSION gio-2.0)
+ AC_SUBST(CALENDAR_SERVER_CFLAGS)
+--
+1.9.0
+
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.14.0-bluetooth-gold.patch b/gnome-base/gnome-shell/files/gnome-shell-3.14.0-bluetooth-gold.patch
new file mode 100644
index 000000000000..cc2b2e6584df
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.14.0-bluetooth-gold.patch
@@ -0,0 +1,31 @@
+From 6b43368c9b10ba112e4272f66c507a0da9cf7e13 Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Sat, 15 Mar 2014 17:48:41 -0400
+Subject: [PATCH 3/3] build: Add BLUETOOTH_LIBS to libgnome-shell's libadd for
+ ld.gold
+
+For ld.gold, adding BLUETOOTH_LIBS to gnome_shell_LDADD has no effect:
+the libgnome-bluetooth-applet must be linked to the binary that actually
+uses a function from libgnome-bluetooth-applet, i.e. to libgnome-shell.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=726435
+---
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index a73eaae..c8fd46f 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -315,7 +315,7 @@ libgnome_shell_base_la_LIBADD = $(libgnome_shell_libadd)
+ libgnome_shell_base_la_CPPFLAGS = $(gnome_shell_cflags)
+
+ libgnome_shell_la_LDFLAGS = $(libgnome_shell_ldflags)
+-libgnome_shell_la_LIBADD = $(GNOME_SHELL_LIBS) $(MUTTER_LIBS) libgnome-shell-base.la
++libgnome_shell_la_LIBADD = $(GNOME_SHELL_LIBS) $(MUTTER_LIBS) $(BLUETOOTH_LIBS) libgnome-shell-base.la
+ libgnome_shell_la_CPPFLAGS = $(MUTTER_CFLAGS) $(gnome_shell_cflags)
+
+ ShellMenu-0.1.gir: libgnome-shell-menu.la
+--
+2.1.2
+
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.14.0-defaults.patch b/gnome-base/gnome-shell/files/gnome-shell-3.14.0-defaults.patch
new file mode 100644
index 000000000000..b60642253ddd
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.14.0-defaults.patch
@@ -0,0 +1,25 @@
+From 6b658660e822a550da55c735c826ec75b6c0efee Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Tue, 10 Dec 2013 23:33:51 +0100
+Subject: [PATCH 1/3] Alter list of default applications
+
+---
+ data/org.gnome.shell.gschema.xml.in.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/org.gnome.shell.gschema.xml.in.in b/data/org.gnome.shell.gschema.xml.in.in
+index 92cef3f..9e783bb 100644
+--- a/data/org.gnome.shell.gschema.xml.in.in
++++ b/data/org.gnome.shell.gschema.xml.in.in
+@@ -31,7 +31,7 @@
+ </_description>
+ </key>
+ <key name="favorite-apps" type="as">
+- <default>[ 'epiphany.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]</default>
++ <default>[ 'chromium-browser-chromium.desktop', 'firefox.desktop', 'firefox-bin.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]</default>
+ <_summary>List of desktop file IDs for favorite applications</_summary>
+ <_description>
+ The applications corresponding to these identifiers
+--
+2.1.2
+
diff --git a/gnome-base/gnome-shell/gnome-shell-3.14.4.ebuild b/gnome-base/gnome-shell/gnome-shell-3.14.4.ebuild
new file mode 100644
index 000000000000..3e366051f5a7
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.14.4.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +i18n +networkmanager -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc x86"
+
+# libXfixes-5.0 needed for pointer barriers
+# FIXME:
+# * gstreamer support is currently automagic
+COMMON_DEPEND="
+ >=app-accessibility/at-spi2-atk-2.5.3
+ >=dev-libs/atk-2[introspection]
+ >=app-crypt/gcr-3.7.5[introspection]
+ >=dev-libs/glib-2.39.1:2[dbus]
+ >=dev-libs/gjs-1.39
+ >=dev-libs/gobject-introspection-0.10.1:=
+ >=x11-libs/gtk+-3.13.2:3[introspection]
+ >=media-libs/clutter-1.15.90:1.0[introspection]
+ >=dev-libs/json-glib-0.13.2
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.14
+ >=gnome-base/gnome-keyring-3.3.90
+ gnome-base/libgnome-keyring
+ >=gnome-extra/evolution-data-server-3.5.3:=
+ >=media-libs/gstreamer-0.11.92:1.0
+ >=net-im/telepathy-logger-0.2.4[introspection]
+ >=net-libs/telepathy-glib-0.19[introspection]
+ >=sys-auth/polkit-0.100[introspection]
+ >=x11-libs/libXfixes-5.0
+ x11-libs/libXtst
+ >=x11-wm/mutter-3.14.4[introspection]
+ <x11-wm/mutter-3.15
+ >=x11-libs/startup-notification-0.11
+
+ ${PYTHON_DEPS}
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+
+ dev-libs/dbus-glib
+ dev-libs/libxml2:2
+ gnome-base/librsvg
+ media-libs/libcanberra[gtk3]
+ media-libs/mesa
+ >=media-sound/pulseaudio-2
+ >=net-libs/libsoup-2.40:2.4[introspection]
+ x11-libs/libX11
+ x11-libs/gdk-pixbuf:2[introspection]
+ x11-libs/pango[introspection]
+ x11-apps/mesa-progs
+
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+ networkmanager? (
+ app-crypt/libsecret
+ >=gnome-extra/nm-applet-0.9.8
+ >=net-misc/networkmanager-0.9.8[introspection] )
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Introspection deps generated using:
+# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq
+# Each block:
+# 1. Pull in polkit-0.101 for pretty authorization dialogs
+# 2. Introspection stuff needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. Systemd needed for suspending support
+# 6. xdg-utils needed for xdg-open, used by extension tool
+# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
+# 8. IBus is needed for i18n integration
+# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+RDEPEND="${COMMON_DEPEND}
+ >=sys-auth/polkit-0.101[introspection]
+
+ >=app-accessibility/caribou-0.4.8
+ media-libs/cogl[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ >=sys-power/upower-0.99[introspection]
+
+ >=gnome-base/gnome-session-2.91.91
+ >=gnome-base/gnome-settings-daemon-3.8.3
+
+ !openrc-force? ( >=sys-apps/systemd-31 )
+
+ x11-misc/xdg-utils
+
+ media-fonts/dejavu
+ x11-themes/gnome-icon-theme-symbolic
+
+ i18n? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+ >=gnome-base/gdm-3.5[introspection]
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?]
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ >=dev-util/gtk-doc-am-1.17
+ >=dev-util/intltool-0.40
+ gnome-base/gnome-common
+ virtual/pkgconfig
+ !!=dev-lang/spidermonkey-1.8.2*
+"
+# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
+# https://bugs.gentoo.org/show_bug.cgi?id=360413
+
+src_prepare() {
+ # Change favorites defaults, bug #479918
+ epatch "${FILESDIR}"/${PN}-3.14.0-defaults.patch
+
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ epatch "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
+
+ # Fix silent bluetooth linking failure with ld.gold, bug #503952
+ # https://bugzilla.gnome.org/show_bug.cgi?id=726435
+ epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
+
+ epatch_user
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-browser-plugin \
+ --enable-man \
+ $(use_enable !openrc-force systemd) \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
+}
+
+src_install() {
+ gnome2_src_install
+ python_replicate_script "${ED}/usr/bin/gnome-shell-extension-tool"
+ python_replicate_script "${ED}/usr/bin/gnome-shell-perf-tool"
+
+ # Required for gnome-shell on hardened/PaX, bug #398941
+ # Future-proof for >=spidermonkey-1.8.7 following polkit's example
+ if has_version '<dev-lang/spidermonkey-1.8.7'; then
+ pax-mark mr "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ # Required for gnome-shell on hardened/PaX #457146 and #457194
+ # PaX EMUTRAMP need to be on
+ elif has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
+ pax-mark E "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ else
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ fi
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+ ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+ ewarn "To make use of GNOME Shell's built-in screen recording utility,"
+ ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+ ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+ ewarn "apps.gnome-shell.recorder/pipeline to what you want to use."
+ fi
+
+ if ! has_version ">=x11-base/xorg-server-1.11"; then
+ ewarn "If you use multiple screens, it is highly recommended that you"
+ ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+ ewarn "pointer barriers which will make it easier to use hot corners."
+ fi
+
+ if has_version "<x11-drivers/ati-drivers-12"; then
+ ewarn "GNOME Shell has been reported to show graphical corruption under"
+ ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
+ ewarn "drivers."
+ fi
+
+ if has_version "media-libs/mesa[video_cards_radeon]" ||
+ has_version "media-libs/mesa[video_cards_r300]" ||
+ has_version "media-libs/mesa[video_cards_r600]"; then
+ elog "GNOME Shell is unstable under classic-mode r300/r600 mesa drivers."
+ elog "Make sure that gallium architecture for r300 and r600 drivers is"
+ elog "selected using 'eselect mesa'."
+ if ! has_version "media-libs/mesa[gallium]"; then
+ ewarn "You will need to emerge media-libs/mesa with USE=gallium."
+ fi
+ fi
+
+ if ! has_version "media-libs/mesa[llvm]"; then
+ elog "llvmpipe is used as fallback when no 3D acceleration"
+ elog "is available. You will need to enable llvm USE for"
+ elog "media-libs/mesa."
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "http://wiki.gentoo.org/wiki/Systemd"
+ fi
+
+ if use openrc-force; then
+ ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
+ ewarn "this can lead to unexpected problems and is not supported neither by"
+ ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
+ ewarn "you will need to disable this USE flag system wide and retest before"
+ ewarn "opening any bug report."
+ fi
+}
diff --git a/gnome-base/gnome-shell/gnome-shell-3.16.2.ebuild b/gnome-base/gnome-shell/gnome-shell-3.16.2.ebuild
new file mode 100644
index 000000000000..3b81db7931a7
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.16.2.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python{3_3,3_4} )
+
+inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +i18n +networkmanager -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# libXfixes-5.0 needed for pointer barriers
+# FIXME:
+# * gstreamer support is currently automagic
+COMMON_DEPEND="
+ >=app-accessibility/at-spi2-atk-2.5.3
+ >=dev-libs/atk-2[introspection]
+ >=app-crypt/gcr-3.7.5[introspection]
+ >=dev-libs/glib-2.39.1:2[dbus]
+ >=dev-libs/gjs-1.39
+ >=dev-libs/gobject-introspection-0.10.1:=
+ dev-libs/libical:=
+ >=x11-libs/gtk+-3.15.0:3[introspection]
+ >=media-libs/clutter-1.21.5:1.0[introspection]
+ >=dev-libs/json-glib-0.13.2
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.14
+ >=gnome-base/gnome-keyring-3.3.90
+ gnome-base/libgnome-keyring
+ >=gnome-extra/evolution-data-server-3.13.90:=
+ >=media-libs/gstreamer-0.11.92:1.0
+ >=net-im/telepathy-logger-0.2.4[introspection]
+ >=net-libs/telepathy-glib-0.19[introspection]
+ >=sys-auth/polkit-0.100[introspection]
+ >=x11-libs/libXfixes-5.0
+ x11-libs/libXtst
+ >=x11-wm/mutter-3.16.0[introspection]
+ >=x11-libs/startup-notification-0.11
+
+ ${PYTHON_DEPS}
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+
+ dev-libs/dbus-glib
+ dev-libs/libxml2:2
+ gnome-base/librsvg
+ media-libs/libcanberra[gtk3]
+ media-libs/mesa
+ >=media-sound/pulseaudio-2
+ >=net-libs/libsoup-2.40:2.4[introspection]
+ x11-libs/libX11
+ x11-libs/gdk-pixbuf:2[introspection]
+ x11-libs/pango[introspection]
+ x11-apps/mesa-progs
+
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+ networkmanager? (
+ app-crypt/libsecret
+ >=gnome-extra/nm-applet-0.9.8
+ >=net-misc/networkmanager-0.9.8[introspection] )
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Introspection deps generated using:
+# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq
+# Each block:
+# 1. Pull in polkit-0.101 for pretty authorization dialogs
+# 2. Introspection stuff needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. Systemd needed for suspending support
+# 6. xdg-utils needed for xdg-open, used by extension tool
+# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
+# 8. IBus is needed for i18n integration
+# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+RDEPEND="${COMMON_DEPEND}
+ >=sys-auth/polkit-0.101[introspection]
+
+ >=app-accessibility/caribou-0.4.8
+ media-libs/cogl[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ >=sys-power/upower-0.99[introspection]
+
+ >=gnome-base/gnome-session-2.91.91
+ >=gnome-base/gnome-settings-daemon-3.8.3
+
+ !openrc-force? ( >=sys-apps/systemd-31 )
+
+ x11-misc/xdg-utils
+
+ media-fonts/dejavu
+ x11-themes/gnome-icon-theme-symbolic
+
+ i18n? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+ >=gnome-base/gdm-3.5[introspection]
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?,networkmanager(+)?]
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ >=dev-util/gtk-doc-am-1.17
+ >=dev-util/intltool-0.40
+ gnome-base/gnome-common
+ virtual/pkgconfig
+ !!=dev-lang/spidermonkey-1.8.2*
+"
+# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
+# https://bugs.gentoo.org/show_bug.cgi?id=360413
+
+src_prepare() {
+ # Change favorites defaults, bug #479918
+ epatch "${FILESDIR}"/${PN}-3.14.0-defaults.patch
+
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ epatch "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
+
+ # Fix silent bluetooth linking failure with ld.gold, bug #503952
+ # https://bugzilla.gnome.org/show_bug.cgi?id=726435
+ epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
+
+ epatch_user
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-browser-plugin \
+ --enable-man \
+ $(use_enable !openrc-force systemd) \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
+}
+
+src_install() {
+ gnome2_src_install
+ python_replicate_script "${ED}/usr/bin/gnome-shell-extension-tool"
+ python_replicate_script "${ED}/usr/bin/gnome-shell-perf-tool"
+
+ # Required for gnome-shell on hardened/PaX, bug #398941
+ # Future-proof for >=spidermonkey-1.8.7 following polkit's example
+ if has_version '<dev-lang/spidermonkey-1.8.7'; then
+ pax-mark mr "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ # Required for gnome-shell on hardened/PaX #457146 and #457194
+ # PaX EMUTRAMP need to be on
+ elif has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
+ pax-mark E "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ else
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ fi
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+ ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+ ewarn "To make use of GNOME Shell's built-in screen recording utility,"
+ ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+ ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+ ewarn "apps.gnome-shell.recorder/pipeline to what you want to use."
+ fi
+
+ if ! has_version ">=x11-base/xorg-server-1.11"; then
+ ewarn "If you use multiple screens, it is highly recommended that you"
+ ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+ ewarn "pointer barriers which will make it easier to use hot corners."
+ fi
+
+ if has_version "<x11-drivers/ati-drivers-12"; then
+ ewarn "GNOME Shell has been reported to show graphical corruption under"
+ ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
+ ewarn "drivers."
+ fi
+
+ if ! has_version "media-libs/mesa[llvm]"; then
+ elog "llvmpipe is used as fallback when no 3D acceleration"
+ elog "is available. You will need to enable llvm USE for"
+ elog "media-libs/mesa."
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "http://wiki.gentoo.org/wiki/Systemd"
+ fi
+
+ if use openrc-force; then
+ ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
+ ewarn "this can lead to unexpected problems and is not supported neither by"
+ ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
+ ewarn "you will need to disable this USE flag system wide and retest before"
+ ewarn "opening any bug report."
+ fi
+}
diff --git a/gnome-base/gnome-shell/gnome-shell-3.16.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.16.3.ebuild
new file mode 100644
index 000000000000..3b81db7931a7
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.16.3.ebuild
@@ -0,0 +1,213 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python{3_3,3_4} )
+
+inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +i18n +networkmanager -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+# libXfixes-5.0 needed for pointer barriers
+# FIXME:
+# * gstreamer support is currently automagic
+COMMON_DEPEND="
+ >=app-accessibility/at-spi2-atk-2.5.3
+ >=dev-libs/atk-2[introspection]
+ >=app-crypt/gcr-3.7.5[introspection]
+ >=dev-libs/glib-2.39.1:2[dbus]
+ >=dev-libs/gjs-1.39
+ >=dev-libs/gobject-introspection-0.10.1:=
+ dev-libs/libical:=
+ >=x11-libs/gtk+-3.15.0:3[introspection]
+ >=media-libs/clutter-1.21.5:1.0[introspection]
+ >=dev-libs/json-glib-0.13.2
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.14
+ >=gnome-base/gnome-keyring-3.3.90
+ gnome-base/libgnome-keyring
+ >=gnome-extra/evolution-data-server-3.13.90:=
+ >=media-libs/gstreamer-0.11.92:1.0
+ >=net-im/telepathy-logger-0.2.4[introspection]
+ >=net-libs/telepathy-glib-0.19[introspection]
+ >=sys-auth/polkit-0.100[introspection]
+ >=x11-libs/libXfixes-5.0
+ x11-libs/libXtst
+ >=x11-wm/mutter-3.16.0[introspection]
+ >=x11-libs/startup-notification-0.11
+
+ ${PYTHON_DEPS}
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+
+ dev-libs/dbus-glib
+ dev-libs/libxml2:2
+ gnome-base/librsvg
+ media-libs/libcanberra[gtk3]
+ media-libs/mesa
+ >=media-sound/pulseaudio-2
+ >=net-libs/libsoup-2.40:2.4[introspection]
+ x11-libs/libX11
+ x11-libs/gdk-pixbuf:2[introspection]
+ x11-libs/pango[introspection]
+ x11-apps/mesa-progs
+
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+ networkmanager? (
+ app-crypt/libsecret
+ >=gnome-extra/nm-applet-0.9.8
+ >=net-misc/networkmanager-0.9.8[introspection] )
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Introspection deps generated using:
+# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq
+# Each block:
+# 1. Pull in polkit-0.101 for pretty authorization dialogs
+# 2. Introspection stuff needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. Systemd needed for suspending support
+# 6. xdg-utils needed for xdg-open, used by extension tool
+# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
+# 8. IBus is needed for i18n integration
+# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+RDEPEND="${COMMON_DEPEND}
+ >=sys-auth/polkit-0.101[introspection]
+
+ >=app-accessibility/caribou-0.4.8
+ media-libs/cogl[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ >=sys-power/upower-0.99[introspection]
+
+ >=gnome-base/gnome-session-2.91.91
+ >=gnome-base/gnome-settings-daemon-3.8.3
+
+ !openrc-force? ( >=sys-apps/systemd-31 )
+
+ x11-misc/xdg-utils
+
+ media-fonts/dejavu
+ x11-themes/gnome-icon-theme-symbolic
+
+ i18n? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+ >=gnome-base/gdm-3.5[introspection]
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?,networkmanager(+)?]
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ >=dev-util/gtk-doc-am-1.17
+ >=dev-util/intltool-0.40
+ gnome-base/gnome-common
+ virtual/pkgconfig
+ !!=dev-lang/spidermonkey-1.8.2*
+"
+# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time
+# https://bugs.gentoo.org/show_bug.cgi?id=360413
+
+src_prepare() {
+ # Change favorites defaults, bug #479918
+ epatch "${FILESDIR}"/${PN}-3.14.0-defaults.patch
+
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ epatch "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
+
+ # Fix silent bluetooth linking failure with ld.gold, bug #503952
+ # https://bugzilla.gnome.org/show_bug.cgi?id=726435
+ epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
+
+ epatch_user
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-browser-plugin \
+ --enable-man \
+ $(use_enable !openrc-force systemd) \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
+}
+
+src_install() {
+ gnome2_src_install
+ python_replicate_script "${ED}/usr/bin/gnome-shell-extension-tool"
+ python_replicate_script "${ED}/usr/bin/gnome-shell-perf-tool"
+
+ # Required for gnome-shell on hardened/PaX, bug #398941
+ # Future-proof for >=spidermonkey-1.8.7 following polkit's example
+ if has_version '<dev-lang/spidermonkey-1.8.7'; then
+ pax-mark mr "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ # Required for gnome-shell on hardened/PaX #457146 and #457194
+ # PaX EMUTRAMP need to be on
+ elif has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
+ pax-mark E "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ else
+ pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+ fi
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+ ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+ ewarn "To make use of GNOME Shell's built-in screen recording utility,"
+ ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+ ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+ ewarn "apps.gnome-shell.recorder/pipeline to what you want to use."
+ fi
+
+ if ! has_version ">=x11-base/xorg-server-1.11"; then
+ ewarn "If you use multiple screens, it is highly recommended that you"
+ ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+ ewarn "pointer barriers which will make it easier to use hot corners."
+ fi
+
+ if has_version "<x11-drivers/ati-drivers-12"; then
+ ewarn "GNOME Shell has been reported to show graphical corruption under"
+ ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
+ ewarn "drivers."
+ fi
+
+ if ! has_version "media-libs/mesa[llvm]"; then
+ elog "llvmpipe is used as fallback when no 3D acceleration"
+ elog "is available. You will need to enable llvm USE for"
+ elog "media-libs/mesa."
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "http://wiki.gentoo.org/wiki/Systemd"
+ fi
+
+ if use openrc-force; then
+ ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
+ ewarn "this can lead to unexpected problems and is not supported neither by"
+ ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
+ ewarn "you will need to disable this USE flag system wide and retest before"
+ ewarn "opening any bug report."
+ fi
+}
diff --git a/gnome-base/gnome-shell/metadata.xml b/gnome-base/gnome-shell/metadata.xml
new file mode 100644
index 000000000000..6a29f73453af
--- /dev/null
+++ b/gnome-base/gnome-shell/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>gnome</herd>
+<use>
+ <flag name="i18n">Enable support for enhanced input methods through
+ <pkg>app-i18n/ibus</pkg></flag>
+ <flag name="openrc-force">Skip systemd dependency (#480336),
+ enabling this flag will become your setup to be fully
+ unsupported by upstream and downstream Gnome team. Do not
+ try to enable it unless completely needed</flag>
+</use>
+</pkgmetadata>