summaryrefslogtreecommitdiff
path: root/gnome-base/gnome-shell
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /gnome-base/gnome-shell
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'gnome-base/gnome-shell')
-rw-r--r--gnome-base/gnome-shell/Manifest8
-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.22.0-defaults.patch26
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch28
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.22.3.ebuild205
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild195
-rw-r--r--gnome-base/gnome-shell/metadata.xml18
7 files changed, 530 insertions, 0 deletions
diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
new file mode 100644
index 000000000000..ecf16323e3ae
--- /dev/null
+++ b/gnome-base/gnome-shell/Manifest
@@ -0,0 +1,8 @@
+AUX gnome-shell-3.12-bluetooth-flag.patch 1894 BLAKE2B a53360d103faf25aa605cd5c73eeb892ce667f57313fbd90bdcf176151158b1389ba49becd4421d825e5d63d4dcb0a2e99618f3558de87f0afe2b46851a353f0 SHA512 dc18e16e2de667bef09d66acd68fbe0f4d8c0fd1725b352b0f9f4032e43481f2655b1812ffa6f8ae8441b215a372c27f5e1035b7eceeeb22ee18b1a256e79f80
+AUX gnome-shell-3.22.0-defaults.patch 1228 BLAKE2B 9bb49d830c2bbc36123ca8fdddc02d4b750a5ffd174fa653ead26a75dc9478be4b5a39c31a004a3897655aae097c23f511d6bb494b0aede51fea74294be3fcf6 SHA512 f350324af68de8f7ae9dab609fdb81e272f9d545a125f3da85d9f06e4a0de09f857517d6c7a585ff1ea3b56f4d51b049cbeb62c39472d61d45026331104c5af5
+AUX gnome-shell-3.22.0-gir-build-fix.patch 882 BLAKE2B 62a816accf06abd182d1381326ad2059a59b3ff9579475b160d9c6fa715acfcf0f3d9d3544bc435b13fcdd45cf420b761ea6681718e540a39533f615b7aa0214 SHA512 b534134cc76dce49c78621d9245e9c457f4eefc3ac89dc09f036a178524b0ad3608683f43a0920fdb1d36410aebbfdecd701725217b6239f4549ef4ba82b7213
+DIST gnome-shell-3.22.3.tar.xz 1952576 BLAKE2B 26d974bc45b93342db3d23f9a999734b571c6819c1fdddc20e019e282bcfbdf6d9f40850667756046187e0e3a52a57ba60962cc49b7b4b49909ec5f992e518e6 SHA512 47d67910b321a182d3ecd41f20cd923ec433cc93ab04b0b31351ca0229505ecbf343b1307585e557ee757845dc09b2371b0c2197717ed532b71878c186337ee9
+DIST gnome-shell-3.24.3.tar.xz 1982088 BLAKE2B 608b3e73d546dea543a23c31a64b03c32f35d118cd79fd0371a9e392377b4dd03bc16413443d643ed604a2fa81c2838939d92ef4c89a54469a8bd83dc9661f8f SHA512 369ed80b975369b79d4ac9b3f1fbd469fdde331e9079d09eeac6398a9b3c349b09f7570dfce1ed6e1cdfaf514b4b40c6038f34b6c3c7928470b2cd65b702ff15
+EBUILD gnome-shell-3.22.3.ebuild 6847 BLAKE2B edb25faf602ece895a316042dd62896d84755f17f26f51a217c748b653e3ca729aae959c8a2fb39d51da654ee9f961855f69f43d15ad9777d1b6b0d22c10b212 SHA512 b0cb683473ec3a3dcffb1dd9fee56a6b9ec4dfe6f311a523c3920cbb690a69d5e4e73643bde1c6eb3faf4f4a6bb8337640d42ce92b2b8fd08b26e39666449ad3
+EBUILD gnome-shell-3.24.3.ebuild 6605 BLAKE2B 4122c4a9ac2bd12ee622393b0d82910de449ffc854c8e3c20c49e512543bc61821cc0f813a868a2f1732165d19b8767fd37ecbf68834227851264a4375d8386a SHA512 7c025fcdecdc2e77888a20b827448f5abaa3335a84d0c04d88bc77dccade30fcd30693a3c8b0c3e377f197a5a85ce52fa07c8b60e58341b4166f794a54813bc1
+MISC metadata.xml 738 BLAKE2B f379ab17d70d0241fffcef221940031cf797d3393c903fcc75c847e4bd985242c124b598e61ae50bce7e58ababe8595533bf3fb52fea47d75712eaa2af291492 SHA512 02db87e2ac6c43ed104ae911de8caf78632b861c4efd3bbf5b0cf7dfab1d4d79e023b724b140ca86e72961c06454479f4d814ad1ae5dfd481bfbc7a45af0c18b
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.22.0-defaults.patch b/gnome-base/gnome-shell/files/gnome-shell-3.22.0-defaults.patch
new file mode 100644
index 000000000000..b80dbc3a0dce
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.22.0-defaults.patch
@@ -0,0 +1,26 @@
+From 7a671f99b7ef2d5f38be67668aac762764b32a42 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/2] Alter list of default applications
+
+Signed-off-by: Gilles Dartiguelongue <eva@gentoo.org>
+---
+ data/org.gnome.shell.gschema.xml.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/org.gnome.shell.gschema.xml.in b/data/org.gnome.shell.gschema.xml.in
+index c1e6b21..368c654 100644
+--- a/data/org.gnome.shell.gschema.xml.in
++++ b/data/org.gnome.shell.gschema.xml.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.10.1
+
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch b/gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch
new file mode 100644
index 000000000000..b0c5fb769e8f
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch
@@ -0,0 +1,28 @@
+From 395bede20811b0cf2bcecb0b4e5bcbc2c2fa35f4 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Sat, 12 Nov 2016 00:21:25 +0100
+Subject: [PATCH] Add missing rpath to point to mutter specific libraries
+
+Reported-By: AlphatPC@gmail.com
+X-Gentoo-Bug: 597842
+X-Gentoo-Url: https://bugs.gentoo.org/show_bug.cgi?id=597842
+---
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index e9aacfe..fd98ba5 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -311,7 +311,7 @@ shell-enum-types.c: $(srcdir)/shell-enum-types.c.in stamp-shell-enum-types.h
+ rm -f $(@F).tmp
+ EXTRA_DIST += shell-enum-types.c.in
+
+-libgnome_shell_ldflags = -avoid-version
++libgnome_shell_ldflags = -avoid-version -Wl,-rpath,$(MUTTER_TYPELIB_DIR)
+ libgnome_shell_libadd = \
+ -lm \
+ $(GNOME_SHELL_LIBS) \
+--
+2.10.1
+
diff --git a/gnome-base/gnome-shell/gnome-shell-3.22.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.22.3.ebuild
new file mode 100644
index 000000000000..9d87933477f9
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.22.3.ebuild
@@ -0,0 +1,205 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python{3_4,3_5} )
+
+inherit autotools 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 +ibus +networkmanager nsplugin -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+KEYWORDS="~alpha ~arm"
+
+# 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.45.3:2[dbus]
+ >=dev-libs/gjs-1.39
+ >=dev-libs/gobject-introspection-1.49.1:=
+ dev-libs/libical:=
+ >=x11-libs/gtk+-3.15.0:3[introspection]
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.21.3
+ >=gnome-extra/evolution-data-server-3.17.2:=
+ >=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.22.1[introspection]
+ >=x11-libs/startup-notification-0.11
+
+ ${PYTHON_DEPS}
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+
+ dev-libs/dbus-glib
+ dev-libs/libxml2:2
+ 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-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] )
+ nsplugin? ( >=dev-libs/json-glib-0.13.2 )
+"
+# 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. Introspection stuff needed via imports.gi.*
+# 2. gnome-session is needed for gnome-session-quit
+# 3. Control shell settings
+# 4. Systemd needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme and dejavu font neeed for various icons & arrows
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+# 8. IBus is needed for nls integration
+RDEPEND="${COMMON_DEPEND}
+ app-accessibility/at-spi2-core:2[introspection]
+ >=app-accessibility/caribou-0.4.8
+ dev-libs/libgweather:2[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ >=sys-power/upower-0.99:=[introspection]
+ x11-libs/pango[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/adwaita-icon-theme-3.19.90
+
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+ ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+"
+# 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/gdbus-codegen-2.45.3
+ >=dev-util/gtk-doc-am-1.17
+ gnome-base/gnome-common
+ >=sys-devel/gettext-0.19.6
+ 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
+ eapply "${FILESDIR}"/${PN}-3.22.0-defaults.patch
+
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ eapply "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
+
+ # Add missing path to libmutter-clutter when building .gir, bug #597842
+ eapply "${FILESDIR}"/${PN}-3.22.0-gir-build-fix.patch
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-man \
+ $(use_enable !openrc-force systemd) \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ $(use_enable nsplugin browser-plugin) \
+ 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-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
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=563084
+ if has_version "x11-drivers/nvidia-drivers[-kms]"; then
+ ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers,"
+ ewarn "otherwise Gnome will fail to start"
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "https://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.24.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild
new file mode 100644
index 000000000000..7dff8d524124
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+GNOME2_EAUTORECONF="yes"
+PYTHON_COMPAT=( python3_{4,5,6} )
+
+inherit 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 +browser-extension +ibus +networkmanager nsplugin -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+KEYWORDS="amd64 ~ia64 ~ppc ~ppc64 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.45.3:2[dbus]
+ >=dev-libs/gjs-1.47.0
+ >=dev-libs/gobject-introspection-1.49.1:=
+ dev-libs/libical:=
+ >=x11-libs/gtk+-3.15.0:3[introspection]
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.21.3
+ >=gnome-extra/evolution-data-server-3.17.2:=
+ >=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.24.0:0/0[introspection]
+ >=x11-libs/startup-notification-0.11
+
+ ${PYTHON_DEPS}
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+
+ dev-libs/dbus-glib
+ dev-libs/libxml2:2
+ 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-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] )
+ nsplugin? ( >=dev-libs/json-glib-0.13.2 )
+"
+# 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. Introspection stuff needed via imports.gi.*
+# 2. gnome-session is needed for gnome-session-quit
+# 3. Control shell settings
+# 4. Systemd needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme and dejavu font neeed for various icons & arrows
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+# 8. IBus is needed for nls integration
+RDEPEND="${COMMON_DEPEND}
+ app-accessibility/at-spi2-core:2[introspection]
+ >=app-accessibility/caribou-0.4.8
+ dev-libs/libgweather:2[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ >=sys-power/upower-0.99:=[introspection]
+ x11-libs/pango[introspection]
+ gnome-base/librsvg:2[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/adwaita-icon-theme-3.19.90
+
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+ ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+ >=gnome-base/gdm-3.5[introspection]
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?,networkmanager(+)?]
+ browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxslt
+ >=dev-util/gdbus-codegen-2.45.3
+ >=dev-util/gtk-doc-am-1.17
+ gnome-base/gnome-common
+ sys-devel/autoconf-archive
+ >=sys-devel/gettext-0.19.6
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ # Change favorites defaults, bug #479918
+ "${FILESDIR}"/${PN}-3.22.0-defaults.patch
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ "${FILESDIR}"/${PN}-3.12-bluetooth-flag.patch
+ # Add missing path to libmutter-clutter when building .gir, bug #597842
+ "${FILESDIR}"/${PN}-3.22.0-gir-build-fix.patch
+)
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-man \
+ $(use_enable !openrc-force systemd) \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ $(use_enable nsplugin browser-plugin) \
+ 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 "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 if you do not have hardware 3D setup."
+ fi
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=563084
+ if has_version "x11-drivers/nvidia-drivers[-kms]"; then
+ ewarn "You will need to enable kms support in x11-drivers/nvidia-drivers,"
+ ewarn "otherwise Gnome will fail to start"
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "https://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..3d91d2b59fe4
--- /dev/null
+++ b/gnome-base/gnome-shell/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+<use>
+ <flag name="browser-extension">Ensure the presence of extensions.gnome.org
+ native connector <pkg>gnome-extra/chrome-gnome-shell</pkg></flag>
+ <flag name="ibus">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>