public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2016-03-14 23:16 Ole Reifschneider
  0 siblings, 0 replies; 14+ messages in thread
From: Ole Reifschneider @ 2016-03-14 23:16 UTC (permalink / raw
  To: gentoo-commits

commit:     8c96273f1f532fbcdeb59bc85f402cee178301ba
Author:     Ole Reifschneider <tranquility <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 14 23:15:12 2016 +0000
Commit:     Ole Reifschneider <tranquility <AT> gentoo <DOT> org>
CommitDate: Mon Mar 14 23:16:10 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c96273f

gnome-base/gnome-shell: Fix crash after enabling vpn

Upstream fixed it in 3.19.x but did did not push the
fix to the stable branch so we need to patch it ourselves.

Package-Manager: portage-2.2.27

 .../files/gnome-shell-3.18-fix-crash.patch         |  29 +++
 .../gnome-shell/gnome-shell-3.18.4-r1.ebuild       | 224 +++++++++++++++++++++
 2 files changed, 253 insertions(+)

diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.18-fix-crash.patch b/gnome-base/gnome-shell/files/gnome-shell-3.18-fix-crash.patch
new file mode 100644
index 0000000..d19049c
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.18-fix-crash.patch
@@ -0,0 +1,29 @@
+From 021cecbce289f1d9c68a156d5b8dd204a73bc715 Mon Sep 17 00:00:00 2001
+From: Christophe Fergeau <cfergeau@redhat.com>
+Date: Sun, 20 Dec 2015 20:51:52 +0100
+Subject: [PATCH] NetworkAgent: Fix double-unref in get_secrets_keyring_cb()
+
+In get_secrets_keyring_cb, we own a ref on the 'attributes' hash table
+from secret_item_get_attributes), and a ref on the 'secret' object (from
+secret_item_get_secret(), but in the SHELL_KEYRING_SK_TAG case, we unref
+these once before breaking out of the loop, and the second time after
+breaking out of the loop.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=759708
+---
+ src/shell-network-agent.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/src/shell-network-agent.c b/src/shell-network-agent.c
+index 5d99167..da0f7e5 100644
+--- a/src/shell-network-agent.c
++++ b/src/shell-network-agent.c
+@@ -314,8 +314,6 @@ get_secrets_keyring_cb (GObject            *source,
+ 
+               secrets_found = TRUE;
+ 
+-              g_hash_table_unref (attributes);
+-              secret_value_unref (secret);
+               break;
+             }
+         }

diff --git a/gnome-base/gnome-shell/gnome-shell-3.18.4-r1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.18.4-r1.ebuild
new file mode 100644
index 0000000..776bb9d
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.18.4-r1.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2016 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,3_5} )
+
+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 +networkmanager +nls -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.45.3:2[dbus]
+	>=dev-libs/gjs-1.39
+	>=dev-libs/gobject-introspection-1.45.4:=
+	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.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.18.1[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 nls 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
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	nls? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,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/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
+
+	# Fix crash after selecting vpn
+	# Only needed in 3.18.x because the fix is in 3.19.x
+	# https://bugzilla.gnome.org/show_bug.cgi?id=760924
+	epatch "${FILESDIR}"/${PN}-3.18-fix-crash.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
+
+	# 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
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2016-11-12  0:37 Gilles Dartiguelongue
  0 siblings, 0 replies; 14+ messages in thread
From: Gilles Dartiguelongue @ 2016-11-12  0:37 UTC (permalink / raw
  To: gentoo-commits

commit:     b0c1e6aee2c4028333d1afbfddef567f11d9bbd2
Author:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 11 23:58:44 2016 +0000
Commit:     Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
CommitDate: Sat Nov 12 00:33:54 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0c1e6ae

gnome-base/gnome-shell: cleanup old revisions

Package-Manager: portage-2.3.2

 gnome-base/gnome-shell/Manifest                    |   3 -
 .../files/gnome-shell-3.14.0-bluetooth-gold.patch  |  31 ---
 .../files/gnome-shell-3.20.2-st-nvidia.patch       | 121 -----------
 gnome-base/gnome-shell/gnome-shell-3.18.5.ebuild   | 219 --------------------
 .../gnome-shell/gnome-shell-3.20.2-r1.ebuild       | 221 ---------------------
 gnome-base/gnome-shell/gnome-shell-3.20.3.ebuild   | 218 --------------------
 6 files changed, 813 deletions(-)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index 34d028f..deb334e 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -1,5 +1,2 @@
-DIST gnome-shell-3.18.5.tar.xz 1591860 SHA256 6fc9cd8b43b1ca0669e1c5a9de092a67eea648e38585f0cdb960f08a16c6cb20 SHA512 0539e60afc5070b5ccc5f987411147f7dfd5a0be06cf63876259ae6a90762888d55304158fd888fd94fd2837aac6995aa0c8573391139b129b35393b19aecaa9 WHIRLPOOL 7a8dce9fa110bd6cf3400adc8a1b30e1ab50e7d46676ccf0f84ac72cba0c6a6eb1e01a3a531e1f524afdeeb2b9e035ba0fa52197b9c66c018feed71b5e8502e2
-DIST gnome-shell-3.20.2.tar.xz 1607440 SHA256 eaff6b177cc5bab16b252c45393a6c9305ad3837a288e738388c7b4d4bae13cd SHA512 9e5bb79cd646b10d1acbd3ab92d57c76bb8efd4df2be9103a19af0db58e9fc9e101d3e1f17d0110c62e036163a7a63621492c3c6eb5d74ca99efa27bfff00b35 WHIRLPOOL 7872976c985d24dd310e01da5cae3281ee9128293cd879456b87850c1e73922856ceaea8decf07bd467415ff744761aa16ea410ebad97644e8816280d5220157
-DIST gnome-shell-3.20.3.tar.xz 1607512 SHA256 b23fd558623bfdc726066be3f47bb5fb8ed9c0ad980a95d6afc6397b6d41171e SHA512 6ad5ede00b475db1951ef354df2515f482850f724f15a02dc0d16f0d6ba57302bb5d38ba10d7d1853581e44ca19c2e047fc9822f0909614ea5aedab05ac2df52 WHIRLPOOL baa77a9fdc64205c424e69716edc11b353906a449dcb024deffe3eced34638fb4e41d6db394d8cc64827e2c53f5d103892f1c1d0be15c4f63635dc9c321b1dca
 DIST gnome-shell-3.20.4.tar.xz 1662400 SHA256 0c13eba5ecd3b516538815ab33765ae04bd6faf1549407e81f3bf17b08f2a94d SHA512 40622be949b7d331073982f70ff8ae9b80005e1bf9f5251f0afcd10e564dd48c1d79ae2d874015794c7f99411befd4fc4f586d87a752148aa6097825b1bf931f WHIRLPOOL 226fb3adca9d4aef97bee50d6678c360cf74727a47c9018a16cfbe0f5d6ec32d2282a7965332021643392c1fbcb415a715a41a761d5998f82268d318c40b1942
 DIST gnome-shell-3.22.1.tar.xz 1947140 SHA256 ca9492fae6c647e6bf98624a7cef6e4776894e4888f54b63e60b672b754fb217 SHA512 7ed363f1019affce18b94eb3faee56ade1a570e43f2601305bdee2587733597a770fb239c65fa4d584e5f1839c2eda697101b3d5109f94b484d3fc78d42653fb WHIRLPOOL 51394bec90b7027b2037b9411515ff1748e9bd81d17b0664ee1411055ce3422899449ab4fe349fd5e93eab99838eb9b232d63910788f6e1e01ba6b83cc3d4f85

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
deleted file mode 100644
index cc2b2e6..00000000
--- a/gnome-base/gnome-shell/files/gnome-shell-3.14.0-bluetooth-gold.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-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.20.2-st-nvidia.patch b/gnome-base/gnome-shell/files/gnome-shell-3.20.2-st-nvidia.patch
deleted file mode 100644
index 63df248..00000000
--- a/gnome-base/gnome-shell/files/gnome-shell-3.20.2-st-nvidia.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From 35cc224240ec4fc8159fc689fe3e093a81f97dc9 Mon Sep 17 00:00:00 2001
-From: Martin Szulecki <martin.szulecki@libimobiledevice.org>
-Date: Tue, 17 May 2016 15:00:04 +0200
-Subject: [PATCH] st: Init framebuffer early to fix gnome-shell crash on NVIDIA
- drivers
-
-Checking offscreen for COGL_INVALID_HANDLE is not sufficient,
-as cogl_offscreen_new_with_texture doesn't initialize framebuffer
-objects but lets Cogl solve this the lazy way.
-cogl_offscreen_new_with_texture will never return COGL_INVALID_HANDLE
-anyways.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=764898
----
- src/st/st-theme-node-drawing.c    | 18 ++++++++++++------
- src/st/st-theme-node-transition.c | 25 ++++++++++++++++++++-----
- 2 files changed, 32 insertions(+), 11 deletions(-)
-
-diff --git a/src/st/st-theme-node-drawing.c b/src/st/st-theme-node-drawing.c
-index 85feb20..8942966 100644
---- a/src/st/st-theme-node-drawing.c
-+++ b/src/st/st-theme-node-drawing.c
-@@ -2224,6 +2224,7 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
-   int max_borders[4];
-   int center_radius, corner_id;
-   CoglHandle buffer, offscreen = COGL_INVALID_HANDLE;
-+  CoglError *error = NULL;
- 
-   /* Get infos from the node */
-   if (state->alloc_width < node->box_shadow_min_width ||
-@@ -2264,10 +2265,12 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
-                                        state->box_shadow_height,
-                                        COGL_TEXTURE_NO_SLICING,
-                                        COGL_PIXEL_FORMAT_ANY);
--  if (buffer != COGL_INVALID_HANDLE)
--    offscreen = cogl_offscreen_new_with_texture (buffer);
-+  if (buffer == NULL)
-+    return;
- 
--  if (offscreen != COGL_INVALID_HANDLE)
-+  offscreen = cogl_offscreen_new_with_texture (buffer);
-+
-+  if (cogl_framebuffer_allocate (COGL_FRAMEBUFFER (offscreen), &error))
-     {
-       ClutterActorBox box = { 0, 0, state->box_shadow_width, state->box_shadow_height};
- 
-@@ -2277,14 +2280,17 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state)
-       cogl_framebuffer_clear4f (offscreen, COGL_BUFFER_BIT_COLOR, 0, 0, 0, 0);
- 
-       st_theme_node_paint_borders (state, offscreen, &box, 0xFF);
--      cogl_handle_unref (offscreen);
- 
-       state->box_shadow_pipeline = _st_create_shadow_pipeline (st_theme_node_get_box_shadow (node),
-                                                                buffer);
-     }
-+  else
-+    {
-+      cogl_error_free (error);
-+    }
- 
--  if (buffer != COGL_INVALID_HANDLE)
--    cogl_handle_unref (buffer);
-+  cogl_handle_unref (offscreen);
-+  cogl_handle_unref (buffer);
- }
- 
- static void
-diff --git a/src/st/st-theme-node-transition.c b/src/st/st-theme-node-transition.c
-index 1eef17b..afde977 100644
---- a/src/st/st-theme-node-transition.c
-+++ b/src/st/st-theme-node-transition.c
-@@ -241,6 +241,7 @@ setup_framebuffers (StThemeNodeTransition *transition,
- {
-   StThemeNodeTransitionPrivate *priv = transition->priv;
-   guint width, height;
-+  CoglError *catch_error = NULL;
- 
-   /* template material to avoid unnecessary shader compilation */
-   static CoglHandle material_template = COGL_INVALID_HANDLE;
-@@ -263,19 +264,33 @@ setup_framebuffers (StThemeNodeTransition *transition,
-                                                   COGL_TEXTURE_NO_SLICING,
-                                                   COGL_PIXEL_FORMAT_ANY);
- 
--  g_return_val_if_fail (priv->old_texture != COGL_INVALID_HANDLE, FALSE);
--  g_return_val_if_fail (priv->new_texture != COGL_INVALID_HANDLE, FALSE);
-+  if (priv->old_texture == COGL_INVALID_HANDLE)
-+    return FALSE;
-+
-+  if (priv->new_texture == COGL_INVALID_HANDLE)
-+    return FALSE;
- 
-   if (priv->old_offscreen)
-     cogl_handle_unref (priv->old_offscreen);
-   priv->old_offscreen = cogl_offscreen_new_with_texture (priv->old_texture);
-+  if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (priv->old_offscreen), &catch_error))
-+    {
-+      cogl_object_unref (priv->old_offscreen);
-+      cogl_error_free (catch_error);
-+      priv->old_offscreen = COGL_INVALID_HANDLE;
-+      return FALSE;
-+    }
- 
-   if (priv->new_offscreen)
-     cogl_handle_unref (priv->new_offscreen);
-   priv->new_offscreen = cogl_offscreen_new_with_texture (priv->new_texture);
--
--  g_return_val_if_fail (priv->old_offscreen != COGL_INVALID_HANDLE, FALSE);
--  g_return_val_if_fail (priv->new_offscreen != COGL_INVALID_HANDLE, FALSE);
-+  if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (priv->new_offscreen), &catch_error))
-+    {
-+      cogl_object_unref (priv->new_offscreen);
-+      cogl_error_free (catch_error);
-+      priv->new_offscreen = COGL_INVALID_HANDLE;
-+      return FALSE;
-+    }
- 
-   if (priv->material == NULL)
-     {
--- 
-2.9.0
-

diff --git a/gnome-base/gnome-shell/gnome-shell-3.18.5.ebuild b/gnome-base/gnome-shell/gnome-shell-3.18.5.ebuild
deleted file mode 100644
index acac425..00000000
--- a/gnome-base/gnome-shell/gnome-shell-3.18.5.ebuild
+++ /dev/null
@@ -1,219 +0,0 @@
-# Copyright 1999-2016 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_4,3_5} )
-
-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 +networkmanager +nls -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.45.3:2[dbus]
-	>=dev-libs/gjs-1.39
-	>=dev-libs/gobject-introspection-1.45.4:=
-	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.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.18.1[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 nls 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
-
-	networkmanager? (
-		net-misc/mobile-broadband-provider-info
-		sys-libs/timezone-data )
-	nls? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,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/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
-
-	# 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.20.2-r1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.20.2-r1.ebuild
deleted file mode 100644
index db3b02f..00000000
--- a/gnome-base/gnome-shell/gnome-shell-3.20.2-r1.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python{3_4,3_5} )
-
-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 +networkmanager +nls -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.45.3:2[dbus]
-	>=dev-libs/gjs-1.39
-	>=dev-libs/gobject-introspection-1.45.4:=
-	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.19.2
-	>=gnome-base/gnome-keyring-3.3.90
-	gnome-base/libgnome-keyring
-	>=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.20.2[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 nls 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/adwaita-icon-theme-3.19.90
-
-	networkmanager? (
-		net-misc/mobile-broadband-provider-info
-		sys-libs/timezone-data )
-	nls? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,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/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
-	eapply "${FILESDIR}"/${PN}-3.14.0-defaults.patch
-
-	# Fix automagic gnome-bluetooth dep, bug #398145
-	eapply "${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
-	# This shouldn't be needed per upstream
-#	epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
-
-	# Crash and visual corruption with nvidia-drivers, fixed in 3.20.3
-	eapply "${FILESDIR}/${P}-st-nvidia.patch"
-
-	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
-
-	# 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.20.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.20.3.ebuild
deleted file mode 100644
index b45b86d..00000000
--- a/gnome-base/gnome-shell/gnome-shell-3.20.3.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-PYTHON_COMPAT=( python{3_4,3_5} )
-
-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 +networkmanager +nls -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.45.3:2[dbus]
-	>=dev-libs/gjs-1.39
-	>=dev-libs/gobject-introspection-1.45.4:=
-	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.19.2
-	>=gnome-base/gnome-keyring-3.3.90
-	gnome-base/libgnome-keyring
-	>=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.20.2[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 nls 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/adwaita-icon-theme-3.19.90
-
-	networkmanager? (
-		net-misc/mobile-broadband-provider-info
-		sys-libs/timezone-data )
-	nls? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,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/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
-	eapply "${FILESDIR}"/${PN}-3.14.0-defaults.patch
-
-	# Fix automagic gnome-bluetooth dep, bug #398145
-	eapply "${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
-	# This shouldn't be needed per upstream
-#	epatch "${FILESDIR}"/${PN}-3.14.0-bluetooth-gold.patch
-
-	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
-
-	# 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
-}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2017-04-29 17:51 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2017-04-29 17:51 UTC (permalink / raw
  To: gentoo-commits

commit:     fb7831fd8eb23dd60054c6d564631d4b2549b5bf
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 29 17:47:42 2017 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat Apr 29 17:50:41 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fb7831fd

gnome-base/gnome-shell: fix bug triggered by version validation ignoring setting toggling

This has a CVE-2017-8288 assigned for some reason.

Gentoo-bug: 616698

 .../gnome-shell/files/3.22.3-CVE-2017-8288.patch   |  45 +++++
 .../gnome-shell/gnome-shell-3.22.3-r2.ebuild       | 195 +++++++++++++++++++++
 2 files changed, 240 insertions(+)

diff --git a/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch b/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch
new file mode 100644
index 00000000000..f9c74d62fdd
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch
@@ -0,0 +1,45 @@
+From 560e976ee9c59d75907b5ef6ed2bc336719e37d3 Mon Sep 17 00:00:00 2001
+From: Emilio Pozuelo Monfort <pochu27@gmail.com>
+Date: Tue, 25 Apr 2017 17:27:42 +0200
+Subject: [PATCH] extensionSystem: handle reloading broken extensions
+
+Some extensions out there may fail to reload. When that happens,
+we need to catch any exceptions so that we don't leave things in
+a broken state that could lead to leaving extensions enabled in
+the screen shield.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=781728
+---
+ js/ui/extensionSystem.js | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js
+index ba33222..1feaa2f 100644
+--- a/js/ui/extensionSystem.js
++++ b/js/ui/extensionSystem.js
+@@ -276,12 +276,20 @@ function _onVersionValidationChanged() {
+     // temporarily disable them all
+     enabledExtensions = [];
+     for (let uuid in ExtensionUtils.extensions)
+-        reloadExtension(ExtensionUtils.extensions[uuid]);
++        try {
++            reloadExtension(ExtensionUtils.extensions[uuid]);
++        } catch(e) {
++            logExtensionError(uuid, e);
++        }
+     enabledExtensions = getEnabledExtensions();
+ 
+     if (Main.sessionMode.allowExtensions) {
+         enabledExtensions.forEach(function(uuid) {
+-            enableExtension(uuid);
++            try {
++                enableExtension(uuid);
++            } catch(e) {
++                logExtensionError(uuid, e);
++            }
+         });
+     }
+ }
+-- 
+2.10.1
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild b/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild
new file mode 100644
index 00000000000..f32132e97ef
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+GNOME2_EAUTORECONF="yes"
+PYTHON_COMPAT=( python{3_4,3_5} )
+
+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 ~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.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(+),gtk3,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/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
+	# Little bug when user has toggled version validation in the session, bug #616698
+	"${FILESDIR}"/${PV}-CVE-2017-8288.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."
+	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
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2018-02-03 20:56 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2018-02-03 20:56 UTC (permalink / raw
  To: gentoo-commits

commit:     84e00ceb0272cbc8da051a00a00b9cf531b6a10e
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Feb  3 20:19:16 2018 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat Feb  3 20:55:16 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84e00ceb

gnome-base/gnome-shell: remove old

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 .../gnome-shell/files/3.22.3-CVE-2017-8288.patch   |  45 -----
 .../gnome-shell/gnome-shell-3.22.3-r2.ebuild       | 196 ---------------------
 2 files changed, 241 deletions(-)

diff --git a/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch b/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch
deleted file mode 100644
index f9c74d62fdd..00000000000
--- a/gnome-base/gnome-shell/files/3.22.3-CVE-2017-8288.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 560e976ee9c59d75907b5ef6ed2bc336719e37d3 Mon Sep 17 00:00:00 2001
-From: Emilio Pozuelo Monfort <pochu27@gmail.com>
-Date: Tue, 25 Apr 2017 17:27:42 +0200
-Subject: [PATCH] extensionSystem: handle reloading broken extensions
-
-Some extensions out there may fail to reload. When that happens,
-we need to catch any exceptions so that we don't leave things in
-a broken state that could lead to leaving extensions enabled in
-the screen shield.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=781728
----
- js/ui/extensionSystem.js | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
-diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js
-index ba33222..1feaa2f 100644
---- a/js/ui/extensionSystem.js
-+++ b/js/ui/extensionSystem.js
-@@ -276,12 +276,20 @@ function _onVersionValidationChanged() {
-     // temporarily disable them all
-     enabledExtensions = [];
-     for (let uuid in ExtensionUtils.extensions)
--        reloadExtension(ExtensionUtils.extensions[uuid]);
-+        try {
-+            reloadExtension(ExtensionUtils.extensions[uuid]);
-+        } catch(e) {
-+            logExtensionError(uuid, e);
-+        }
-     enabledExtensions = getEnabledExtensions();
- 
-     if (Main.sessionMode.allowExtensions) {
-         enabledExtensions.forEach(function(uuid) {
--            enableExtension(uuid);
-+            try {
-+                enableExtension(uuid);
-+            } catch(e) {
-+                logExtensionError(uuid, e);
-+            }
-         });
-     }
- }
--- 
-2.10.1
-

diff --git a/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild b/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild
deleted file mode 100644
index 66d73e5efc0..00000000000
--- a/gnome-base/gnome-shell/gnome-shell-3.22.3-r2.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-GNOME2_EAUTORECONF="yes"
-PYTHON_COMPAT=( python{3_4,3_5} )
-
-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 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.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(+)?]
-	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
-	# Little bug when user has toggled version validation in the session, bug #616698
-	"${FILESDIR}"/${PV}-CVE-2017-8288.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."
-	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
-}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2018-09-28 13:51 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2018-09-28 13:51 UTC (permalink / raw
  To: gentoo-commits

commit:     4f874177a1bcee5a10fde56cd58ab5860a7a07b8
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Thu Sep 27 21:36:24 2018 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Fri Sep 28 13:49:13 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4f874177

gnome-base/gnome-shell: bump to 3.26.2, support elogind, many tweaks

* Port ebuild to use meson (no autotools upstream anymore)
* Support elogind and get rid of unnecessary openrc-force hacks;
  gnome-shell systemd code only handles journald integration - logging
  structured data to it itself, instead of plain g_prints and telling
  it about launched apps, so they get to log under their own identifier
  instead of gnome-session. The -Denable-systemd option only deals with
  that, so we can safely just not pass it on non-systemd systems. The
  suspend support is handled purely via logind dbus interfaces and is
  build unconditionally - at runtime it is conditional on
  /run/systemd/seats existing and being accessible, which should be the
  case with newer elogind (with relevant bugs fixed) by my quick
  research, but I have not tested personally. Don't make a big deal
  about lacking suspend and seat inhibition support and just pull in
  a logind interface provider (techically this is runtime only, but
  not bothering with a separate DEPEND-free RDEPEND block for elogind).
  The alternative (to require logind) would be to require one of the
  systemd or elogind USE flags instead of at-most-one-of, but this is
  runtime optional anyways, so don't block it - user could just build
  with systemd and boot with something else, for example, and similarly
  not have this work at runtime). Also remove some ewarns appropriately.
* Build-time depend on systemd with USE=systemd for the aforementioned
  journald integration, which needs systemd present at build time already.
* More appropriately use python-single-r1 instead of python-r1 for the two
  small python utilities. Hack meson to update to the correct shebang.
* Make telepathy optional - it was made runtime optional in 3.24 already,
  and with empathy being in the state it's in, the chat integration is
  rather unused on a desktop system.
* Remove questionable glib USE=dbus requirement - if dconf is required,
  it should be depended upon directly; but as this is just your typical
  GSettings memory vs dconf backend scenario, I don't see why that'd be.
* Remove unnecessary libXtst depend - I can't find any usage of it in
  current version (only mentions of caribou using it, which has its own
  dep and is optional on-screen keyboard support, gone in newer versions).
* Move dbus-glib depend inside USE=networkmanager, as this legacy thing
  is for some reason (instead of GDbus) still used only in a NM specific
  source file that doesn't get compiled with USE=-networkmanager afaics.
* Require introspection on nm-applet with USE=networkmanager, as NMGtk
  GIR is used.
* Remove bogus mesa-progs depend - no glxinfo/glxgears usages here.
* Add glib-utils build depend.
* Drop dejavu font depend - I don't think we should be pulling in a
  specific font these days for some glyphs; and if we should, then it
  probably should be cantarell.
* Require USE=glib on pulseaudio, as libpulse-mainloop-glib is linked to
  in a subproject, not just libpulse.
* Simplify the pax-mark logic, as we don't use so old spidermonkey for so
  long, and pax-mark stuff is not tested by us. But the old complicated
  conditionals don't apply in many cases, so simplify it to just the common
  case. Additionally newer spidermonkey (60) will lose jit USE flag and
  have that unconditional on arches where it's supported, so these
  conditionals will then result in wrong code paths being taken. Therefore
  just simplify it to the basics and hope it works and rely on any incoming
  bugs about it to modernize this.

Closes: https://bugs.gentoo.org/655426
Closes: https://bugs.gentoo.org/553966
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
Package-Manager: Portage-2.3.49, Repoman-2.3.11

 gnome-base/gnome-shell/Manifest                    |   2 +
 .../files/3.26-optional-bluetooth.patch            |  73 ++++++++
 .../gnome-shell/gnome-shell-3.26.2-r4.ebuild       | 186 +++++++++++++++++++++
 gnome-base/gnome-shell/metadata.xml                |   3 +
 4 files changed, 264 insertions(+)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index 0547ae48f8e..5ade3713a46 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -1,2 +1,4 @@
 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
+DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b81508c94c9224f77a5a503f45dfda20105e9c305f8cae6ae5e420e597cea9f98899933bb19efd8cf0e9811dc35d0844a3c2920143 SHA512 93a730082e84807c23f4b7e390c2d0fb02d3666fc32241de02b3534cc271b160bd9a6a6a2e908ed5bdde91cef383c1e400b0f7cbf04ac104f7f9758218e635ed
+DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a

diff --git a/gnome-base/gnome-shell/files/3.26-optional-bluetooth.patch b/gnome-base/gnome-shell/files/3.26-optional-bluetooth.patch
new file mode 100644
index 00000000000..9f7e5aea4da
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.26-optional-bluetooth.patch
@@ -0,0 +1,73 @@
+From 7ca3e1a9d18e6f6154b4479bcd94d420bc69798c Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Mon, 10 Sep 2018 13:17:39 +0200
+Subject: [PATCH] Make bluetooth support optional
+
+https://bugs.gentoo.org/show_bug.cgi?id=398145
+leio: Fixed enable_bluetooth get_option string
+---
+ js/misc/meson.build |  2 +-
+ meson.build         | 15 ++++++++++++++-
+ meson_options.txt   |  7 +++++++
+ 3 files changed, 22 insertions(+), 2 deletions(-)
+
+diff --git a/js/misc/meson.build b/js/misc/meson.build
+index 20489496c..3071f9dfb 100644
+--- a/js/misc/meson.build
++++ b/js/misc/meson.build
+@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
+ jsconf.set('PACKAGE_VERSION', meson.project_version())
+ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
+ jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
+-jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
++jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
+ jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+ jsconf.set('datadir', datadir)
+ jsconf.set('libexecdir', libexecdir)
+diff --git a/meson.build b/meson.build
+index b82c41398..7d342ff61 100644
+--- a/meson.build
++++ b/meson.build
+@@ -91,7 +91,20 @@ startup_dep = dependency('libstartup-notification-1.0', version: startup_req)
+ x11_dep = dependency('x11')
+ schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
+ 
+-bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
++bt_dep = []
++enable_bluetooth = get_option('enable-bluetooth')
++if enable_bluetooth != 'no'
++  want_bluetooth = enable_bluetooth == 'yes'
++  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: want_bluetooth)
++  have_bluetooth = bt_dep.found()
++
++  if not have_bluetooth
++    bt_dep = []
++  endif
++else
++  have_bluetooth = false
++endif
++
+ gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
+ gst_base_dep = dependency('gstreamer-base-1.0', required: false)
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 18899ffdb..9191f8c0e 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -16,6 +16,13 @@ option('enable-man',
+   description: 'Generate man pages'
+ )
+ 
++option('enable-bluetooth',
++  type: 'combo',
++  choices: ['yes', 'no', 'auto'],
++  value: 'auto',
++  description: 'Enable bluetooth support'
++)
++
+ option('enable-networkmanager',
+   type: 'combo',
+   choices: ['yes', 'no', 'auto'],
+-- 
+2.18.0
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.26.2-r4.ebuild b/gnome-base/gnome-shell/gnome-shell-3.26.2-r4.ebuild
new file mode 100644
index 00000000000..e8bb212e6a8
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.26.2-r4.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python3_{4,5,6} )
+
+inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +browser-extension elogind +ibus +networkmanager nsplugin systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer support is currently automagic
+COMMON_DEPEND="
+	>=dev-libs/libcroco-0.6.8:0.6
+	>=gnome-extra/evolution-data-server-3.17.2:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+	>=dev-libs/glib-2.53.0:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.47.0
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	nsplugin? ( >=dev-libs/json-glib-0.13.2 )
+	>=x11-wm/mutter-3.24.0:0/1[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.21.3
+	>=x11-libs/startup-notification-0.11
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	networkmanager? (
+		>=gnome-extra/nm-applet-0.9.8[introspection]
+		>=net-misc/networkmanager-0.9.8:=[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-31 )
+	elogind? ( >=sys-auth/elogind-237 )
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	media-libs/libcanberra[gtk3]
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	>=net-libs/libsoup-2.40:2.4[introspection]
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	${PYTHON_DEPS}
+	dev-python/pygobject:3[${PYTHON_USEDEP}]
+	media-libs/mesa
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${COMMON_DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	>=app-accessibility/caribou-0.4.8
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+DEPEND="${COMMON_DEPEND}
+	dev-libs/libxslt
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	>=sys-devel/gettext-0.19.6
+	virtual/pkgconfig
+" #gtk-doc? ( >=dev-util/gtk-doc-1.17 )
+
+PATCHES=(
+	# Patches from gnome-3-26 branch on top of 3.26.2
+	"${WORKDIR}"/patches/
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/${PN}-3.22.0-defaults.patch
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/3.26-optional-bluetooth.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# We want nsplugins in /usr/$(get_libdir)/nsbrowser/plugins not .../mozilla/plugins
+	sed -e 's/mozilla/nsbrowser/' -i meson.build || die
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use nsplugin enable-browser-plugin)
+		#$(meson_use gtk-doc enable-documentation) # fails in gtkdoc-scangobj call with gtk-doc-1.25 (perl regex parenthesis issue); probably needs newer python-based gtk-doc to work
+		-Denable-man=true
+		-Denable-bluetooth=$(usex bluetooth yes no)
+		-Denable-networkmanager=$(usex networkmanager yes no)
+		-Denable-systemd=$(usex systemd yes no) # this controls journald integration only as of 3.26.2 (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
+	pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}

diff --git a/gnome-base/gnome-shell/metadata.xml b/gnome-base/gnome-shell/metadata.xml
index 72552c21f40..301d00be45c 100644
--- a/gnome-base/gnome-shell/metadata.xml
+++ b/gnome-base/gnome-shell/metadata.xml
@@ -15,11 +15,14 @@
 <use>
 	<flag name="browser-extension">Ensure the presence of extensions.gnome.org
 		native connector <pkg>gnome-extra/chrome-gnome-shell</pkg></flag>
+	<flag name="elogind">Use <pkg>sys-auth/elogind</pkg> for session tracking
+		and suspend support.</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>
+	<flag name="telepathy">Ensure presence of telepathy chat integration</flag>
 </use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2019-02-27 23:57 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2019-02-27 23:57 UTC (permalink / raw
  To: gentoo-commits

commit:     d96bf40be72f7829efb4c7c4d96d7ab91a2de3f3
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 27 23:32:08 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Wed Feb 27 23:57:24 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d96bf40b

gnome-base/gnome-shell: bump to 3.28.3

Includes a huge patchset from upstream gnome-3-28 branch.
Now provides its own onscreen keyboard instead of using caribou.
Requires sassc at build time for CSS generation.
Doesn't need deprecated networkmanager libraries from nm-applet
anymore.

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   2 +
 gnome-base/gnome-shell/files/3.28.3-defaults.patch |  28 +++
 .../files/3.28.3-optional-bluetooth.patch          |  59 +++++++
 gnome-base/gnome-shell/gnome-shell-3.28.3.ebuild   | 187 +++++++++++++++++++++
 4 files changed, 276 insertions(+)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index 9dae1ae196c..553301215dd 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -1,3 +1,5 @@
 DIST gnome-shell-3.24.3.tar.xz 1982088 BLAKE2B 608b3e73d546dea543a23c31a64b03c32f35d118cd79fd0371a9e392377b4dd03bc16413443d643ed604a2fa81c2838939d92ef4c89a54469a8bd83dc9661f8f SHA512 369ed80b975369b79d4ac9b3f1fbd469fdde331e9079d09eeac6398a9b3c349b09f7570dfce1ed6e1cdfaf514b4b40c6038f34b6c3c7928470b2cd65b702ff15
 DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b81508c94c9224f77a5a503f45dfda20105e9c305f8cae6ae5e420e597cea9f98899933bb19efd8cf0e9811dc35d0844a3c2920143 SHA512 93a730082e84807c23f4b7e390c2d0fb02d3666fc32241de02b3534cc271b160bd9a6a6a2e908ed5bdde91cef383c1e400b0f7cbf04ac104f7f9758218e635ed
 DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a
+DIST gnome-shell-3.28.3-patchset.tar.xz 30820 BLAKE2B 3402a1c455a5e9d028f6c15ea40db94afb84576643b9bfe9e973a7f375d9f0a22003eab3ccabec0b4b31c31f70ef02ca055c0f62a5c0392529fc375f6cef7029 SHA512 a1da84374dd97bff2546d6ddc5656bade69711d05b4b4f4283df66ebbac566767a509dcbd6db52c28a1915cf873c99b81029128cb2a2b63c325dc3e3340fffb4
+DIST gnome-shell-3.28.3.tar.xz 1433388 BLAKE2B 656e2edabef363d779fd339b7158ad3461a05452a2fdad611889d19f272cd98dfbbb39871d10631326b83108678f8a7245c349583eb257e9d7e4827078134ade SHA512 3550a9e59101a96cf04e4a4bc183ac9a447baa72d74e57c3f438764741b4365f8848895c1eb2c4d0af5c7936e38eb8971ef578bbee315e78b9fdcbbe49fdc1e8

diff --git a/gnome-base/gnome-shell/files/3.28.3-defaults.patch b/gnome-base/gnome-shell/files/3.28.3-defaults.patch
new file mode 100644
index 00000000000..a6f583144fc
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.28.3-defaults.patch
@@ -0,0 +1,28 @@
+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>
+[Updated to include desktop file renames to reverse DNS]
+Signed-off-by: Mart Raudsepp <leio@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', 'org.gnome.Evolution.desktop', 'evolution.desktop', 'rhythmbox.desktop', 'org.gnome.Shotwell', '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/3.28.3-optional-bluetooth.patch b/gnome-base/gnome-shell/files/3.28.3-optional-bluetooth.patch
new file mode 100644
index 00000000000..3138c6d2b73
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.28.3-optional-bluetooth.patch
@@ -0,0 +1,59 @@
+From 26dbbd15fabd3c35135105720dc821edccb128fa Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Thu, 28 Feb 2019 00:50:19 +0200
+Subject: [PATCH] build: Make bluetooth support optional
+
+---
+ js/misc/meson.build | 2 +-
+ meson.build         | 7 ++++++-
+ meson_options.txt   | 6 ++++++
+ 3 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/js/misc/meson.build b/js/misc/meson.build
+index 5a4871762..3c5e02368 100644
+--- a/js/misc/meson.build
++++ b/js/misc/meson.build
+@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
+ jsconf.set('PACKAGE_VERSION', meson.project_version())
+ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
+ jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
+-jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
++jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
+ jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+ jsconf.set('datadir', datadir)
+ jsconf.set('libexecdir', libexecdir)
+diff --git a/meson.build b/meson.build
+index f38798caf..e1bcd1892 100644
+--- a/meson.build
++++ b/meson.build
+@@ -92,7 +92,12 @@ ibus_dep = dependency('ibus-1.0', version: ibus_req)
+ x11_dep = dependency('x11')
+ schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
+ 
+-bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
++if get_option('bluetooth')
++  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req)
++  have_bluetooth = true
++else
++  have_bluetooth = false
++endif
+ gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
+ gst_base_dep = dependency('gstreamer-base-1.0', required: false)
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 65188c7ff..b6d49dfb5 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,9 @@
++option('bluetooth',
++  type: 'boolean',
++  value: true,
++  description: 'Enable bluetooth support'
++)
++
+ option('browser_plugin',
+   type: 'boolean',
+   value: true,
+-- 
+2.17.0
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.28.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.28.3.ebuild
new file mode 100644
index 00000000000..d49823e4bdf
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.28.3.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python3_{4,5,6} )
+
+inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +browser-extension elogind +ibus +networkmanager nsplugin systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64 ~arm ~x86"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer support is currently automagic
+COMMON_DEPEND="
+	>=dev-libs/libcroco-0.6.8:0.6
+	>=gnome-extra/evolution-data-server-3.17.2:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+	>=dev-libs/glib-2.56.0:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.47.0
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	nsplugin? ( >=dev-libs/json-glib-0.13.2 )
+	>=x11-wm/mutter-3.28.0:0/2[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.21.3
+	>=x11-libs/startup-notification-0.11
+	>=app-i18n/ibus-1.5.2
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	networkmanager? (
+		>=net-misc/networkmanager-0.9.8:=[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-31 )
+	elogind? ( >=sys-auth/elogind-237 )
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	media-libs/libcanberra[gtk3]
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	>=net-libs/libsoup-2.40:2.4[introspection]
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	${PYTHON_DEPS}
+	dev-python/pygobject:3[${PYTHON_USEDEP}]
+	media-libs/mesa
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${COMMON_DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+DEPEND="${COMMON_DEPEND}
+	dev-lang/sassc
+	dev-libs/libxslt
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+" #gtk-doc? ( >=dev-util/gtk-doc-1.17 )
+
+PATCHES=(
+	# Patches from gnome-3-26 branch on top of 3.26.2
+	"${WORKDIR}"/patches/
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/${PV}-defaults.patch
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/${PV}-optional-bluetooth.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# We want nsplugins in /usr/$(get_libdir)/nsbrowser/plugins not .../mozilla/plugins
+	sed -e 's/mozilla/nsbrowser/' -i meson.build || die
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use bluetooth)
+		$(meson_use nsplugin browser_plugin)
+		#$(meson_use gtk-doc gtk_doc) # fails in gtkdoc-scangobj call with gtk-doc-1.25 (perl regex parenthesis issue); probably needs newer python-based gtk-doc to work
+		-Dman=true
+		$(meson_use networkmanager)
+		$(meson_use systemd) # this controls journald integration only as of 3.26.2 (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
+	pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2019-05-05 11:55 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2019-05-05 11:55 UTC (permalink / raw
  To: gentoo-commits

commit:     07f0ffba86c1293e37852864be2f4f65bfc6597c
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun May  5 11:48:16 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun May  5 11:54:00 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07f0ffba

gnome-base/gnome-shell: remove old

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   1 -
 .../files/3.28.3-optional-bluetooth.patch          |  59 -------
 gnome-base/gnome-shell/gnome-shell-3.30.2.ebuild   | 189 ---------------------
 3 files changed, 249 deletions(-)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index d640ce135a8..320563d499f 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -2,6 +2,5 @@ DIST gnome-shell-3.24.3.tar.xz 1982088 BLAKE2B 608b3e73d546dea543a23c31a64b03c32
 DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b81508c94c9224f77a5a503f45dfda20105e9c305f8cae6ae5e420e597cea9f98899933bb19efd8cf0e9811dc35d0844a3c2920143 SHA512 93a730082e84807c23f4b7e390c2d0fb02d3666fc32241de02b3534cc271b160bd9a6a6a2e908ed5bdde91cef383c1e400b0f7cbf04ac104f7f9758218e635ed
 DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a
 DIST gnome-shell-3.30.2-patchset-r1.tar.xz 41324 BLAKE2B 4d051a327d106e8431c7b75d56932137dd3af2694c313656bf4751a385a86ef43dd635f31902be0426899746c63f1cd1aa782e9c0827f750fe61683512fbd43c SHA512 3761688e86694be00d81eac2bcd8774d8fdff62f44cdcd26c29b9e7513d2db0edc0ba097e0fea474a232496e3f9b8797e6215a040915a0832517235b26cbc265
-DIST gnome-shell-3.30.2-patchset.tar.xz 39864 BLAKE2B 61c02e5ae87ab24f30d28865f4444f20e32fef63eefbfc1134bf0582eb25933700902aad08176fd2011781262552385bcb3ffaf35fc2d7a060c09ba0d27cb9a8 SHA512 8ad976c05488a6b7447d29105a566d0bb975c8e0798be18c1dc07295c51a27578274e611da4979397fc6c4da538f6d9f48072e043829a63faf87a781518ee531
 DIST gnome-shell-3.30.2-r2-patchset.tar.xz 41852 BLAKE2B f854a42b0ba0be8019487edfc1a0e73d11d406537ffe288d1a5d81e9a512b8fb02e6af466fbe4d0d0e8644aa6f57cad1d381b5e873223749c88d1dccdae72b9e SHA512 c0c935206048c961e70f319b67133dcf0f5253c2283aefd6283db910950f8cd645888f6a6b7bbbfc620a023e0b5ae85394e5f5ce0fb2ff120b18ab7640f9859e
 DIST gnome-shell-3.30.2.tar.xz 1439556 BLAKE2B 547ccf5571ea431d15c6430619640bd497a381191cad56bbf1a5c9992c5df47eb48527cc2749ea4d417cbe5fd7cc2acb44915ee35d3d89cd386541f19d743877 SHA512 5cdf2b9a4dc9dbcc75d76020a01b953ae3922d5820b692d1bc1cf62daf1f00d04b95d6ec076920563f555115c4f4ad11a019e4523a353ef4dd2189a5240239c6

diff --git a/gnome-base/gnome-shell/files/3.28.3-optional-bluetooth.patch b/gnome-base/gnome-shell/files/3.28.3-optional-bluetooth.patch
deleted file mode 100644
index 3138c6d2b73..00000000000
--- a/gnome-base/gnome-shell/files/3.28.3-optional-bluetooth.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 26dbbd15fabd3c35135105720dc821edccb128fa Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Thu, 28 Feb 2019 00:50:19 +0200
-Subject: [PATCH] build: Make bluetooth support optional
-
----
- js/misc/meson.build | 2 +-
- meson.build         | 7 ++++++-
- meson_options.txt   | 6 ++++++
- 3 files changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/js/misc/meson.build b/js/misc/meson.build
-index 5a4871762..3c5e02368 100644
---- a/js/misc/meson.build
-+++ b/js/misc/meson.build
-@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
- jsconf.set('PACKAGE_VERSION', meson.project_version())
- jsconf.set('GETTEXT_PACKAGE', meson.project_name())
- jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
--jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
-+jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
- jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
- jsconf.set('datadir', datadir)
- jsconf.set('libexecdir', libexecdir)
-diff --git a/meson.build b/meson.build
-index f38798caf..e1bcd1892 100644
---- a/meson.build
-+++ b/meson.build
-@@ -92,7 +92,12 @@ ibus_dep = dependency('ibus-1.0', version: ibus_req)
- x11_dep = dependency('x11')
- schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
- 
--bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
-+if get_option('bluetooth')
-+  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req)
-+  have_bluetooth = true
-+else
-+  have_bluetooth = false
-+endif
- gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
- gst_base_dep = dependency('gstreamer-base-1.0', required: false)
- 
-diff --git a/meson_options.txt b/meson_options.txt
-index 65188c7ff..b6d49dfb5 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -1,3 +1,9 @@
-+option('bluetooth',
-+  type: 'boolean',
-+  value: true,
-+  description: 'Enable bluetooth support'
-+)
-+
- option('browser_plugin',
-   type: 'boolean',
-   value: true,
--- 
-2.17.0
-

diff --git a/gnome-base/gnome-shell/gnome-shell-3.30.2.ebuild b/gnome-base/gnome-shell/gnome-shell-3.30.2.ebuild
deleted file mode 100644
index b76502772cb..00000000000
--- a/gnome-base/gnome-shell/gnome-shell-3.30.2.ebuild
+++ /dev/null
@@ -1,189 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python3_{5,6} )
-
-inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
-
-DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
-HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
-SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
-
-LICENSE="GPL-2+ LGPL-2+"
-SLOT="0"
-IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager nsplugin systemd telepathy"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	?? ( elogind systemd )"
-
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-
-# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
-# FIXME:
-#  * gstreamer support is currently automagic
-COMMON_DEPEND="
-	>=dev-libs/libcroco-0.6.8:0.6
-	>=gnome-extra/evolution-data-server-3.17.2:=
-	>=app-crypt/gcr-3.7.5[introspection]
-	>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
-	>=dev-libs/glib-2.57.2:2
-	>=dev-libs/gobject-introspection-1.49.1:=
-	>=dev-libs/gjs-1.54.0
-	>=x11-libs/gtk+-3.15.0:3[introspection]
-	nsplugin? ( >=dev-libs/json-glib-0.13.2 )
-	>=x11-wm/mutter-3.30.1:0/3[introspection]
-	>=sys-auth/polkit-0.100[introspection]
-	>=gnome-base/gsettings-desktop-schemas-3.27.90
-	>=x11-libs/startup-notification-0.11
-	>=app-i18n/ibus-1.5.2
-	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
-	>=media-libs/gstreamer-0.11.92:1.0
-	networkmanager? (
-		>=net-misc/networkmanager-1.10.4:=[introspection]
-		>=app-crypt/libsecret-0.18
-		dev-libs/dbus-glib )
-	systemd? ( >=sys-apps/systemd-31 )
-	elogind? ( >=sys-auth/elogind-237 )
-
-	>=app-accessibility/at-spi2-atk-2.5.3
-	media-libs/libcanberra[gtk3]
-	x11-libs/gdk-pixbuf:2[introspection]
-	dev-libs/libxml2:2
-	x11-libs/libX11
-
-	>=media-sound/pulseaudio-2[glib]
-	>=dev-libs/atk-2[introspection]
-	dev-libs/libical:=
-	>=x11-libs/libXfixes-5.0
-
-	${PYTHON_DEPS}
-	dev-python/pygobject:3[${PYTHON_USEDEP}]
-	media-libs/mesa
-"
-# 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 needed for shutdown/reboot/inhibitors/etc
-# 3. Control shell settings
-# 4. logind interface needed for suspending support
-# 5. xdg-utils needed for xdg-open, used by extension tool
-# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
-# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
-# 8. IBus is needed for nls integration
-# 9. Optional telepathy chat integration
-# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
-# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
-RDEPEND="${COMMON_DEPEND}
-	>=sys-apps/accountsservice-0.6.14[introspection]
-	app-accessibility/at-spi2-core:2[introspection]
-	app-misc/geoclue[introspection]
-	>=dev-libs/libgweather-3.26:2[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
-
-	x11-misc/xdg-utils
-
-	>=x11-themes/adwaita-icon-theme-3.26
-
-	networkmanager? (
-		net-misc/mobile-broadband-provider-info
-		sys-libs/timezone-data )
-	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
-	telepathy? (
-		>=net-im/telepathy-logger-0.2.4[introspection]
-		>=net-libs/telepathy-glib-0.19[introspection] )
-	media-fonts/cantarell
-"
-# avoid circular dependency, see bug #546134
-PDEPEND="
-	>=gnome-base/gdm-3.5[introspection]
-	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
-	browser-extension? ( gnome-extra/chrome-gnome-shell )
-"
-DEPEND="${COMMON_DEPEND}
-	dev-lang/sassc
-	dev-libs/libxslt
-	>=dev-util/gdbus-codegen-2.45.3
-	dev-util/glib-utils
-	gtk-doc? ( >=dev-util/gtk-doc-1.17 )
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-"
-
-PATCHES=(
-	# Patches from gnome-3-28 branch on top of 3.30.2
-	"${WORKDIR}"/patches/
-	# Change favorites defaults, bug #479918
-	"${FILESDIR}"/3.28.3-defaults.patch
-	# Fix automagic gnome-bluetooth dep, bug #398145
-	"${FILESDIR}"/3.28.3-optional-bluetooth.patch
-)
-
-src_prepare() {
-	xdg_src_prepare
-	# We want nsplugins in /usr/$(get_libdir)/nsbrowser/plugins not .../mozilla/plugins
-	sed -e 's/mozilla/nsbrowser/' -i meson.build || die
-	# Hack in correct python shebang
-	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
-}
-
-src_configure() {
-	local emesonargs=(
-		$(meson_use bluetooth)
-		$(meson_use nsplugin browser_plugin)
-		$(meson_use gtk-doc gtk_doc)
-		-Dman=true
-		$(meson_use networkmanager)
-		$(meson_use systemd) # this controls journald integration only as of 3.26.2 (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
-		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
-	pax-mark m "${ED}usr/bin/gnome-shell"{,-extension-prefs}
-}
-
-src_test() {
-	virtx meson_src_test
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_schemas_update
-
-	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
-	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
-	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
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-	gnome2_schemas_update
-}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2019-05-18 20:46 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2019-05-18 20:46 UTC (permalink / raw
  To: gentoo-commits

commit:     74a254ca0c299858fc518d5af4b64f9ad0b4c150
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat May 18 20:32:09 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat May 18 20:44:24 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=74a254ca

gnome-base/gnome-shell: remove old

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   2 -
 .../files/gnome-shell-3.12-bluetooth-flag.patch    |  50 ------
 .../files/gnome-shell-3.22.0-gir-build-fix.patch   |  28 ---
 gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild   | 196 ---------------------
 .../gnome-shell/gnome-shell-3.30.2-r1.ebuild       | 188 --------------------
 gnome-base/gnome-shell/metadata.xml                |   4 -
 6 files changed, 468 deletions(-)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index 320563d499f..5e960bacb1a 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -1,6 +1,4 @@
-DIST gnome-shell-3.24.3.tar.xz 1982088 BLAKE2B 608b3e73d546dea543a23c31a64b03c32f35d118cd79fd0371a9e392377b4dd03bc16413443d643ed604a2fa81c2838939d92ef4c89a54469a8bd83dc9661f8f SHA512 369ed80b975369b79d4ac9b3f1fbd469fdde331e9079d09eeac6398a9b3c349b09f7570dfce1ed6e1cdfaf514b4b40c6038f34b6c3c7928470b2cd65b702ff15
 DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b81508c94c9224f77a5a503f45dfda20105e9c305f8cae6ae5e420e597cea9f98899933bb19efd8cf0e9811dc35d0844a3c2920143 SHA512 93a730082e84807c23f4b7e390c2d0fb02d3666fc32241de02b3534cc271b160bd9a6a6a2e908ed5bdde91cef383c1e400b0f7cbf04ac104f7f9758218e635ed
 DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a
-DIST gnome-shell-3.30.2-patchset-r1.tar.xz 41324 BLAKE2B 4d051a327d106e8431c7b75d56932137dd3af2694c313656bf4751a385a86ef43dd635f31902be0426899746c63f1cd1aa782e9c0827f750fe61683512fbd43c SHA512 3761688e86694be00d81eac2bcd8774d8fdff62f44cdcd26c29b9e7513d2db0edc0ba097e0fea474a232496e3f9b8797e6215a040915a0832517235b26cbc265
 DIST gnome-shell-3.30.2-r2-patchset.tar.xz 41852 BLAKE2B f854a42b0ba0be8019487edfc1a0e73d11d406537ffe288d1a5d81e9a512b8fb02e6af466fbe4d0d0e8644aa6f57cad1d381b5e873223749c88d1dccdae72b9e SHA512 c0c935206048c961e70f319b67133dcf0f5253c2283aefd6283db910950f8cd645888f6a6b7bbbfc620a023e0b5ae85394e5f5ce0fb2ff120b18ab7640f9859e
 DIST gnome-shell-3.30.2.tar.xz 1439556 BLAKE2B 547ccf5571ea431d15c6430619640bd497a381191cad56bbf1a5c9992c5df47eb48527cc2749ea4d417cbe5fd7cc2acb44915ee35d3d89cd386541f19d743877 SHA512 5cdf2b9a4dc9dbcc75d76020a01b953ae3922d5820b692d1bc1cf62daf1f00d04b95d6ec076920563f555115c4f4ad11a019e4523a353ef4dd2189a5240239c6

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
deleted file mode 100644
index 2fa93af25cd..00000000000
--- a/gnome-base/gnome-shell/files/gnome-shell-3.12-bluetooth-flag.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-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-gir-build-fix.patch b/gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch
deleted file mode 100644
index b0c5fb769e8..00000000000
--- a/gnome-base/gnome-shell/files/gnome-shell-3.22.0-gir-build-fix.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-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.24.3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild
deleted file mode 100644
index de96ae77552..00000000000
--- a/gnome-base/gnome-shell/gnome-shell-3.24.3.ebuild
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-GNOME2_LA_PUNT="yes"
-GNOME2_EAUTORECONF="yes"
-PYTHON_COMPAT=( python3_{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="~alpha 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/gjs-1.53
-	>=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/gnome-shell-3.30.2-r1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.30.2-r1.ebuild
deleted file mode 100644
index d659f15c970..00000000000
--- a/gnome-base/gnome-shell/gnome-shell-3.30.2-r1.ebuild
+++ /dev/null
@@ -1,188 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{5,6,7} )
-
-inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
-
-DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
-HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
-SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset-r1.tar.xz"
-
-LICENSE="GPL-2+ LGPL-2+"
-SLOT="0"
-IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager nsplugin systemd telepathy"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
-	?? ( elogind systemd )"
-
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
-
-# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
-# FIXME:
-#  * gstreamer support is currently automagic
-DEPEND="
-	>=dev-libs/libcroco-0.6.8:0.6
-	>=gnome-extra/evolution-data-server-3.17.2:=
-	>=app-crypt/gcr-3.7.5[introspection]
-	>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
-	>=dev-libs/glib-2.57.2:2
-	>=dev-libs/gobject-introspection-1.49.1:=
-	>=dev-libs/gjs-1.54.0
-	>=x11-libs/gtk+-3.15.0:3[introspection]
-	nsplugin? ( >=dev-libs/json-glib-0.13.2 )
-	>=x11-wm/mutter-3.30.1:0/3[introspection]
-	>=sys-auth/polkit-0.100[introspection]
-	>=gnome-base/gsettings-desktop-schemas-3.27.90
-	>=x11-libs/startup-notification-0.11
-	>=app-i18n/ibus-1.5.2
-	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
-	>=media-libs/gstreamer-0.11.92:1.0
-	networkmanager? (
-		>=net-misc/networkmanager-1.10.4:=[introspection]
-		>=app-crypt/libsecret-0.18
-		dev-libs/dbus-glib )
-	systemd? ( >=sys-apps/systemd-31 )
-	elogind? ( >=sys-auth/elogind-237 )
-
-	>=app-accessibility/at-spi2-atk-2.5.3
-	media-libs/libcanberra[gtk3]
-	x11-libs/gdk-pixbuf:2[introspection]
-	dev-libs/libxml2:2
-	x11-libs/libX11
-
-	>=media-sound/pulseaudio-2[glib]
-	>=dev-libs/atk-2[introspection]
-	dev-libs/libical:=
-	>=x11-libs/libXfixes-5.0
-
-	${PYTHON_DEPS}
-	dev-python/pygobject:3[${PYTHON_USEDEP}]
-	media-libs/mesa
-"
-# 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 needed for shutdown/reboot/inhibitors/etc
-# 3. Control shell settings
-# 4. logind interface needed for suspending support
-# 5. xdg-utils needed for xdg-open, used by extension tool
-# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
-# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
-# 8. IBus is needed for nls integration
-# 9. Optional telepathy chat integration
-# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
-# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
-RDEPEND="${DEPEND}
-	>=sys-apps/accountsservice-0.6.14[introspection]
-	app-accessibility/at-spi2-core:2[introspection]
-	app-misc/geoclue[introspection]
-	>=dev-libs/libgweather-3.26:2[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
-
-	x11-misc/xdg-utils
-
-	>=x11-themes/adwaita-icon-theme-3.26
-
-	networkmanager? (
-		net-misc/mobile-broadband-provider-info
-		sys-libs/timezone-data )
-	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
-	telepathy? (
-		>=net-im/telepathy-logger-0.2.4[introspection]
-		>=net-libs/telepathy-glib-0.19[introspection] )
-	media-fonts/cantarell
-"
-# avoid circular dependency, see bug #546134
-PDEPEND="
-	>=gnome-base/gdm-3.5[introspection]
-	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
-	browser-extension? ( gnome-extra/chrome-gnome-shell )
-"
-BDEPEND="
-	dev-lang/sassc
-	dev-libs/libxslt
-	>=dev-util/gdbus-codegen-2.45.3
-	dev-util/glib-utils
-	gtk-doc? ( >=dev-util/gtk-doc-1.17 )
-	>=sys-devel/gettext-0.19.8
-	virtual/pkgconfig
-"
-
-PATCHES=(
-	# Patches from gnome-3-30 branch on top of 3.30.2
-	# Fix automagic gnome-bluetooth dep, bug #398145
-	"${WORKDIR}"/patches/
-	# Change favorites defaults, bug #479918
-	"${FILESDIR}"/3.28.3-defaults.patch
-)
-
-src_prepare() {
-	xdg_src_prepare
-	# We want nsplugins in /usr/$(get_libdir)/nsbrowser/plugins not .../mozilla/plugins
-	sed -e 's/mozilla/nsbrowser/' -i meson.build || die
-	# Hack in correct python shebang
-	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
-}
-
-src_configure() {
-	local emesonargs=(
-		$(meson_use bluetooth)
-		$(meson_use nsplugin browser_plugin)
-		$(meson_use gtk-doc gtk_doc)
-		-Dman=true
-		$(meson_use networkmanager)
-		$(meson_use systemd) # this controls journald integration only as of 3.26.2 (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
-		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
-	)
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
-	pax-mark m "${ED}/usr/bin/gnome-shell"{,-extension-prefs}
-}
-
-src_test() {
-	virtx meson_src_test
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	gnome2_schemas_update
-
-	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
-	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
-	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
-}
-
-pkg_postrm() {
-	xdg_pkg_postrm
-	gnome2_schemas_update
-}

diff --git a/gnome-base/gnome-shell/metadata.xml b/gnome-base/gnome-shell/metadata.xml
index 301d00be45c..6f32c6fd4b6 100644
--- a/gnome-base/gnome-shell/metadata.xml
+++ b/gnome-base/gnome-shell/metadata.xml
@@ -19,10 +19,6 @@
 		and suspend support.</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>
 	<flag name="telepathy">Ensure presence of telepathy chat integration</flag>
 </use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2019-09-06 21:47 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2019-09-06 21:47 UTC (permalink / raw
  To: gentoo-commits

commit:     be15a38f86d63f4e03f8a182aa78732563e70b9a
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  6 21:06:57 2019 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Fri Sep  6 21:44:43 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be15a38f

gnome-base/gnome-shell: bump to 3.32.2

Package-Manager: Portage-2.3.69, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   2 +
 .../files/3.32-optional-bluetooth.patch            |  59 +++++++
 gnome-base/gnome-shell/gnome-shell-3.32.2.ebuild   | 186 +++++++++++++++++++++
 3 files changed, 247 insertions(+)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index 5e960bacb1a..8382daefe5c 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -2,3 +2,5 @@ DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b815
 DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a
 DIST gnome-shell-3.30.2-r2-patchset.tar.xz 41852 BLAKE2B f854a42b0ba0be8019487edfc1a0e73d11d406537ffe288d1a5d81e9a512b8fb02e6af466fbe4d0d0e8644aa6f57cad1d381b5e873223749c88d1dccdae72b9e SHA512 c0c935206048c961e70f319b67133dcf0f5253c2283aefd6283db910950f8cd645888f6a6b7bbbfc620a023e0b5ae85394e5f5ce0fb2ff120b18ab7640f9859e
 DIST gnome-shell-3.30.2.tar.xz 1439556 BLAKE2B 547ccf5571ea431d15c6430619640bd497a381191cad56bbf1a5c9992c5df47eb48527cc2749ea4d417cbe5fd7cc2acb44915ee35d3d89cd386541f19d743877 SHA512 5cdf2b9a4dc9dbcc75d76020a01b953ae3922d5820b692d1bc1cf62daf1f00d04b95d6ec076920563f555115c4f4ad11a019e4523a353ef4dd2189a5240239c6
+DIST gnome-shell-3.32.2-patchset.tar.xz 23540 BLAKE2B 363989a630faa7538ccbf9765a1ccc5995fb4584b00a603ef11e48fee970a6d9791ed1fa92e2344e56cd8c282c9a22779cb8e50e7ec6637e0efda1ccc36579a4 SHA512 e854ba9fd864101009528d94cb310be10495db225380c353b76cd61b082a88f1f89035a0708cd386d1738001cf9949b4a8b8b8d7b1d2675068e01fecb35738c7
+DIST gnome-shell-3.32.2.tar.xz 1454372 BLAKE2B 9da7e17d4e47e187fa2285c6cf942cc8dc955e388179d2ad1fe8036c2908e217fc47d8b1515fc3cf6973e2083de8c350b55912782b9adbcf1b6cc37c7a3a9ae2 SHA512 7d8b25aa75149f096033a8b44d7f6f8d17ddadfcd8f5bb1915652423fe9d9db14902e674508f16fe5c6e7cbe956cde8349ec779c24c46f32b0a346755876bc46

diff --git a/gnome-base/gnome-shell/files/3.32-optional-bluetooth.patch b/gnome-base/gnome-shell/files/3.32-optional-bluetooth.patch
new file mode 100644
index 00000000000..c7637046c01
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.32-optional-bluetooth.patch
@@ -0,0 +1,59 @@
+From 77518c23dd1ce3d000d5667b4d903af095939f7c Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Thu, 28 Feb 2019 00:50:19 +0200
+Subject: [PATCH] build: Make bluetooth support optional
+
+---
+ js/misc/meson.build | 2 +-
+ meson.build         | 7 ++++++-
+ meson_options.txt   | 6 ++++++
+ 3 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/js/misc/meson.build b/js/misc/meson.build
+index 5a4871762..3c5e02368 100644
+--- a/js/misc/meson.build
++++ b/js/misc/meson.build
+@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
+ jsconf.set('PACKAGE_VERSION', meson.project_version())
+ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
+ jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
+-jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
++jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
+ jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+ jsconf.set('datadir', datadir)
+ jsconf.set('libexecdir', libexecdir)
+diff --git a/meson.build b/meson.build
+index 21a80bcc8..c76afaa9c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -95,7 +95,12 @@ ibus_dep = dependency('ibus-1.0', version: ibus_req)
+ x11_dep = dependency('x11')
+ schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
+ 
+-bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
++if get_option('bluetooth')
++  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req)
++  have_bluetooth = true
++else
++  have_bluetooth = false
++endif
+ gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
+ gst_base_dep = dependency('gstreamer-base-1.0', required: false)
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 853ca98dc..33f76379b 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,9 @@
++option('bluetooth',
++  type: 'boolean',
++  value: true,
++  description: 'Enable bluetooth support'
++)
++
+ option('gtk_doc',
+   type: 'boolean',
+   value: false,
+-- 
+2.20.1
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.32.2.ebuild b/gnome-base/gnome-shell/gnome-shell-3.32.2.ebuild
new file mode 100644
index 00000000000..52c198b7fd6
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.32.2.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${PF}-patchset.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer support is currently automagic
+DEPEND="
+	>=dev-libs/libcroco-0.6.8:0.6
+	>=gnome-extra/evolution-data-server-3.17.2:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+	>=dev-libs/glib-2.57.2:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.54.0
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	>=x11-wm/mutter-3.32.0:0/4[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.27.90
+	>=x11-libs/startup-notification-0.11
+	>=app-i18n/ibus-1.5.2
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	media-libs/gst-plugins-base:1.0
+	networkmanager? (
+		>=net-misc/networkmanager-1.10.4:=[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-31 )
+	elogind? ( >=sys-auth/elogind-237 )
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	${PYTHON_DEPS}
+	dev-python/pygobject:3[${PYTHON_USEDEP}]
+	media-libs/mesa[X(+)]
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
+# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+	media-fonts/cantarell
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+BDEPEND="
+	dev-lang/sassc
+	dev-libs/libxslt
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	gtk-doc? ( >=dev-util/gtk-doc-1.17
+		app-text/docbook-xml-dtd:4.3 )
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Patches from gnome-3-32 branch on top of 3.32.2
+	"${WORKDIR}"/patches/
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/3.32-optional-bluetooth.patch
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/3.28.3-defaults.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use bluetooth)
+		$(meson_use gtk-doc gtk_doc)
+		-Dman=true
+		$(meson_use networkmanager)
+		$(meson_use systemd) # this controls journald integration only as of 3.26.2 (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
+	pax-mark m "${ED}/usr/bin/gnome-shell"{,-extension-prefs}
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2020-03-01 16:18 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2020-03-01 16:18 UTC (permalink / raw
  To: gentoo-commits

commit:     1f08e2de459342e98fadc04fd21dca40ce319d06
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Mar  1 13:01:27 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Mar  1 16:17:39 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f08e2de

gnome-base/gnome-shell: bump to 3.34.4

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   2 +
 .../files/3.34-optional-bluetooth.patch            |  59 +++++++
 gnome-base/gnome-shell/gnome-shell-3.34.4.ebuild   | 194 +++++++++++++++++++++
 3 files changed, 255 insertions(+)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index e16d526404a..6200e4fd2fb 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -2,3 +2,5 @@ DIST gnome-shell-3.26.2-patchset.tar.xz 55492 BLAKE2B 745b8549f7480b004f4df9b815
 DIST gnome-shell-3.26.2.tar.xz 1405580 BLAKE2B ccbb8ad374931335fdc6e752a7feedcba4fe2b61112404b62bc9711b1736216d46fd6e85c6f06439cae50af86a174359d7df0e111e8db6ffed567e91b4292b14 SHA512 0e13bc7abff2367d24ea748cd69a1879ff14a6755ef27d17cf20cef61bc6d15bf6e9d18362142a2d6462689f64eada833f9bba21ebaac3a33765a5be0ae48d3a
 DIST gnome-shell-3.32.2-patchset.tar.xz 23540 BLAKE2B 363989a630faa7538ccbf9765a1ccc5995fb4584b00a603ef11e48fee970a6d9791ed1fa92e2344e56cd8c282c9a22779cb8e50e7ec6637e0efda1ccc36579a4 SHA512 e854ba9fd864101009528d94cb310be10495db225380c353b76cd61b082a88f1f89035a0708cd386d1738001cf9949b4a8b8b8d7b1d2675068e01fecb35738c7
 DIST gnome-shell-3.32.2.tar.xz 1454372 BLAKE2B 9da7e17d4e47e187fa2285c6cf942cc8dc955e388179d2ad1fe8036c2908e217fc47d8b1515fc3cf6973e2083de8c350b55912782b9adbcf1b6cc37c7a3a9ae2 SHA512 7d8b25aa75149f096033a8b44d7f6f8d17ddadfcd8f5bb1915652423fe9d9db14902e674508f16fe5c6e7cbe956cde8349ec779c24c46f32b0a346755876bc46
+DIST gnome-shell-3.34.4-patchset.tar.xz 3284 BLAKE2B c161f4422c8964b61ec0d5bc3267c1c9c69e632767ab5f0fde232c6055e34d1f1c8e4d1f92e3a636f67d08452061512ebc9cfec003a9e4e250f7f213203df0a1 SHA512 d8147d59a379eea5d90c441dd4ed8599243477e6325a579c5c10e825d68c21bf92b95c6f1b414d66bea8c2a7c3b181cf848fb6a79f9f06c713471c75543bae55
+DIST gnome-shell-3.34.4.tar.xz 1545568 BLAKE2B a197235ece72e047d2c22b38aa20a4935c78d88b88fc66f881e788ee3659d89318632d2bbb2fc61448d13633d2a3c0b63e9ce5d1f8060aa5f4d63c2a986fce79 SHA512 17832780bcd91f9aedfd642881f4b17f52fe6844e7cc144a6ecac4e3e13ff889779ef24cf52e7f58e61bffc3fa3a3ef75d23c92ed3833ad42d00c49382284b89

diff --git a/gnome-base/gnome-shell/files/3.34-optional-bluetooth.patch b/gnome-base/gnome-shell/files/3.34-optional-bluetooth.patch
new file mode 100644
index 00000000000..01e28192d36
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.34-optional-bluetooth.patch
@@ -0,0 +1,59 @@
+From 23b1b1184a3a882febb104652f5ac2e6ffd3fed0 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Thu, 28 Feb 2019 00:50:19 +0200
+Subject: [PATCH] build: Make bluetooth support optional
+
+---
+ js/misc/meson.build | 2 +-
+ meson.build         | 7 ++++++-
+ meson_options.txt   | 6 ++++++
+ 3 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/js/misc/meson.build b/js/misc/meson.build
+index 5a4871762..3c5e02368 100644
+--- a/js/misc/meson.build
++++ b/js/misc/meson.build
+@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
+ jsconf.set('PACKAGE_VERSION', meson.project_version())
+ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
+ jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
+-jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
++jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
+ jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+ jsconf.set('datadir', datadir)
+ jsconf.set('libexecdir', libexecdir)
+diff --git a/meson.build b/meson.build
+index 97de19758..77646793f 100644
+--- a/meson.build
++++ b/meson.build
+@@ -100,7 +100,12 @@ x11_dep = dependency('x11')
+ schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
+ gnome_desktop_dep = dependency('gnome-desktop-3.0', version: gnome_desktop_req)
+ 
+-bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
++if get_option('bluetooth')
++  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req)
++  have_bluetooth = true
++else
++  have_bluetooth = false
++endif
+ gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
+ gst_base_dep = dependency('gstreamer-base-1.0', required: false)
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 2c5539012..8e8d9eee6 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,9 @@
++option('bluetooth',
++  type: 'boolean',
++  value: true,
++  description: 'Enable bluetooth support'
++)
++
+ option('extensions_tool',
+   type: 'boolean',
+   value: true,
+-- 
+2.20.1
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.34.4.ebuild b/gnome-base/gnome-shell/gnome-shell-3.34.4.ebuild
new file mode 100644
index 00000000000..556c9a167ed
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.34.4.ebuild
@@ -0,0 +1,194 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer support is currently automagic
+DEPEND="
+	>=dev-libs/libcroco-0.6.8:0.6
+	>=gnome-extra/evolution-data-server-3.33.1:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=dev-libs/glib-2.57.2:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.57.3
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	>=x11-wm/mutter-3.34.0:0/5[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.33.1
+	>=x11-libs/startup-notification-0.11
+	>=app-i18n/ibus-1.5.2
+	>=gnome-base/gnome-desktop-3.32:3=[introspection]
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	media-libs/gst-plugins-base:1.0
+	networkmanager? (
+		>=net-misc/networkmanager-1.10.4:=[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-31
+		>=gnome-base/gnome-desktop-3.34.2:3=[systemd] )
+	elogind? ( >=sys-auth/elogind-237 )
+	app-arch/gnome-autoar
+	dev-libs/json-glib
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+	')
+	media-libs/mesa[X(+)]
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
+# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+	media-fonts/cantarell
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+BDEPEND="
+	dev-lang/sassc
+	dev-libs/libxslt
+	app-text/asciidoc
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	gtk-doc? ( >=dev-util/gtk-doc-1.17
+		app-text/docbook-xml-dtd:4.3 )
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Patches from gnome-3-34 branch on top of 3.34.4
+	"${WORKDIR}"/patches/
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/3.34-optional-bluetooth.patch
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/3.28.3-defaults.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use bluetooth)
+		-Dextensions_tool=true
+		$(meson_use gtk-doc gtk_doc)
+		-Dman=true
+		$(meson_use networkmanager)
+		$(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4
+		# (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
+	pax-mark m "${ED}/usr/bin/gnome-shell"{,-extension-prefs}
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2020-03-15 17:38 Mart Raudsepp
  0 siblings, 0 replies; 14+ messages in thread
From: Mart Raudsepp @ 2020-03-15 17:38 UTC (permalink / raw
  To: gentoo-commits

commit:     2f782bc97d7e168365c1421f20e6ef711286b2b6
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 15 17:22:52 2020 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sun Mar 15 17:37:45 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f782bc9

gnome-base/gnome-shell: try to fix a custom_stylesheet crasher

Seems to happen to me when upgrading some package that installs desktop files;
probably the desktop database update triggers an update in gnome-shell which
stumbles on this crash. This upstream pending patch seems to solve this for me,
so try it out in a revbump more widespread in ~arch for now.

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>

 .../files/3.34.4-custom_stylesheet_crash.patch     | 524 +++++++++++++++++++++
 .../gnome-shell/gnome-shell-3.34.4-r1.ebuild       | 198 ++++++++
 2 files changed, 722 insertions(+)

diff --git a/gnome-base/gnome-shell/files/3.34.4-custom_stylesheet_crash.patch b/gnome-base/gnome-shell/files/3.34.4-custom_stylesheet_crash.patch
new file mode 100644
index 00000000000..186939b9147
--- /dev/null
+++ b/gnome-base/gnome-shell/files/3.34.4-custom_stylesheet_crash.patch
@@ -0,0 +1,524 @@
+From 87afb02e50c7a636a508cf619beb68a46168e54b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Mon, 6 May 2019 18:28:40 -0500
+Subject: [PATCH 1/5] st-theme: Use CRStyleSheet app_data instead of hash map
+
+Use the CRStyleSheet field to save stylesheet details instead of using an extra
+hash table. In this way we can access to the stylesheet file faster without
+having to lookup it. Define a destroy function so that we can automatically
+remove the data when the container hash table is destroyed.
+
+Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/1265
+
+https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+---
+ src/st/st-theme.c | 91 +++++++++++++++++++++++++++++++----------------
+ 1 file changed, 60 insertions(+), 31 deletions(-)
+
+diff --git a/src/st/st-theme.c b/src/st/st-theme.c
+index b567f7e5e3..208f536c5b 100644
+--- a/src/st/st-theme.c
++++ b/src/st/st-theme.c
+@@ -66,11 +66,16 @@ struct _StTheme
+   GSList *custom_stylesheets;
+ 
+   GHashTable *stylesheets_by_file;
+-  GHashTable *files_by_stylesheet;
+ 
+   CRCascade *cascade;
+ };
+ 
++typedef struct _StyleSheetData
++{
++  GFile *file;
++  gboolean extension_stylesheet;
++} StyleSheetData;
++
+ enum
+ {
+   PROP_0,
+@@ -106,12 +111,25 @@ file_equal0 (GFile *file1,
+   return g_file_equal (file1, file2);
+ }
+ 
++static void
++stylesheet_destroy (CRStyleSheet *stylesheet)
++{
++  if (stylesheet->app_data)
++    {
++      g_slice_free (StyleSheetData, stylesheet->app_data);
++      stylesheet->app_data = NULL;
++    }
++
++  cr_stylesheet_unref (stylesheet);
++}
++
+ static void
+ st_theme_init (StTheme *theme)
+ {
+-  theme->stylesheets_by_file = g_hash_table_new_full (g_file_hash, (GEqualFunc) g_file_equal,
+-                                                      (GDestroyNotify)g_object_unref, (GDestroyNotify)cr_stylesheet_unref);
+-  theme->files_by_stylesheet = g_hash_table_new (g_direct_hash, g_direct_equal);
++  theme->stylesheets_by_file =
++    g_hash_table_new_full (g_file_hash, (GEqualFunc) g_file_equal,
++                           (GDestroyNotify) g_object_unref,
++                           (GDestroyNotify) stylesheet_destroy);
+ }
+ 
+ static void
+@@ -205,9 +223,6 @@ parse_stylesheet (GFile   *file,
+       return NULL;
+     }
+ 
+-  /* Extension stylesheet */
+-  stylesheet->app_data = GUINT_TO_POINTER (FALSE);
+-
+   return stylesheet;
+ }
+ 
+@@ -234,19 +249,30 @@ parse_stylesheet_nofail (GFile *file)
+   return result;
+ }
+ 
+-static void
++static gboolean
+ insert_stylesheet (StTheme      *theme,
+                    GFile        *file,
+                    CRStyleSheet *stylesheet)
+ {
++  StyleSheetData *stylesheet_data;
++
+   if (stylesheet == NULL)
+-    return;
++    return FALSE;
+ 
+-  g_object_ref (file);
+-  cr_stylesheet_ref (stylesheet);
++  if (g_hash_table_contains (theme->stylesheets_by_file, file))
++    {
++      cr_stylesheet_unref (stylesheet);
++      return FALSE;
++    }
+ 
+-  g_hash_table_insert (theme->stylesheets_by_file, file, stylesheet);
+-  g_hash_table_insert (theme->files_by_stylesheet, stylesheet, file);
++  stylesheet_data = g_slice_new0 (StyleSheetData);
++  stylesheet_data->file = file;
++  stylesheet->app_data = stylesheet_data;
++
++  cr_stylesheet_ref (stylesheet);
++  g_hash_table_insert (theme->stylesheets_by_file,
++                       g_object_ref (file), stylesheet);
++  return TRUE;
+ }
+ 
+ gboolean
+@@ -255,14 +281,15 @@ st_theme_load_stylesheet (StTheme    *theme,
+                           GError    **error)
+ {
+   CRStyleSheet *stylesheet;
++  StyleSheetData *stylesheet_data;
+ 
+   stylesheet = parse_stylesheet (file, error);
+-  if (!stylesheet)
++  if (!insert_stylesheet (theme, file, stylesheet))
+     return FALSE;
+ 
+-  stylesheet->app_data = GUINT_TO_POINTER (TRUE);
++  stylesheet_data = stylesheet->app_data;
++  stylesheet_data->extension_stylesheet = TRUE;
+ 
+-  insert_stylesheet (theme, file, stylesheet);
+   cr_stylesheet_ref (stylesheet);
+   theme->custom_stylesheets = g_slist_prepend (theme->custom_stylesheets, stylesheet);
+   g_signal_emit (theme, signals[STYLESHEETS_CHANGED], 0);
+@@ -283,9 +310,8 @@ st_theme_unload_stylesheet (StTheme    *theme,
+   if (!g_slist_find (theme->custom_stylesheets, stylesheet))
+     return;
+ 
+-  theme->custom_stylesheets = g_slist_remove (theme->custom_stylesheets, stylesheet);
+   g_hash_table_remove (theme->stylesheets_by_file, file);
+-  g_hash_table_remove (theme->files_by_stylesheet, stylesheet);
++  theme->custom_stylesheets = g_slist_remove (theme->custom_stylesheets, stylesheet);
+   cr_stylesheet_unref (stylesheet);
+   g_signal_emit (theme, signals[STYLESHEETS_CHANGED], 0);
+ }
+@@ -306,9 +332,10 @@ st_theme_get_custom_stylesheets (StTheme *theme)
+   for (iter = theme->custom_stylesheets; iter; iter = iter->next)
+     {
+       CRStyleSheet *stylesheet = iter->data;
+-      GFile *file = g_hash_table_lookup (theme->files_by_stylesheet, stylesheet);
++      StyleSheetData *stylesheet_data = stylesheet->app_data;
+ 
+-      result = g_slist_prepend (result, g_object_ref (file));
++      if (stylesheet_data && stylesheet_data->file)
++        result = g_slist_prepend (result, g_object_ref (stylesheet_data->file));
+     }
+ 
+   return result;
+@@ -350,7 +377,6 @@ st_theme_finalize (GObject * object)
+   theme->custom_stylesheets = NULL;
+ 
+   g_hash_table_destroy (theme->stylesheets_by_file);
+-  g_hash_table_destroy (theme->files_by_stylesheet);
+ 
+   g_clear_object (&theme->application_stylesheet);
+   g_clear_object (&theme->theme_stylesheet);
+@@ -877,18 +903,20 @@ add_matched_properties (StTheme      *a_this,
+ 
+                 if (import_rule->url->stryng && import_rule->url->stryng->str)
+                   {
++                    CRStyleSheet *sheet;
+                     file = _st_theme_resolve_url (a_this,
+                                                   a_nodesheet,
+                                                   import_rule->url->stryng->str);
+-                    import_rule->sheet = parse_stylesheet (file, NULL);
+-                  }
++                    sheet = parse_stylesheet (file, NULL);
+ 
+-                if (import_rule->sheet)
+-                  {
+-                    insert_stylesheet (a_this, file, import_rule->sheet);
+-                    /* refcount of stylesheets starts off at zero, so we don't need to unref! */
++                    if (insert_stylesheet (a_this, file, sheet))
++                      import_rule->sheet = sheet;
++
++                    /* refcount of stylesheets starts off at zero, so we don't
++                     * need to unref! */
+                   }
+-                else
++
++                if (!import_rule->sheet)
+                   {
+                     /* Set a marker to avoid repeatedly trying to parse a non-existent or
+                      * broken stylesheet
+@@ -962,12 +990,12 @@ static inline int
+ get_origin (const CRDeclaration * decl)
+ {
+   enum CRStyleOrigin origin = decl->parent_statement->parent_sheet->origin;
+-  gboolean is_extension_sheet = GPOINTER_TO_UINT (decl->parent_statement->parent_sheet->app_data);
++  StyleSheetData *sheet_data = decl->parent_statement->parent_sheet->app_data;
+ 
+   if (decl->important)
+     origin += ORIGIN_OFFSET_IMPORTANT;
+ 
+-  if (is_extension_sheet)
++  if (sheet_data && sheet_data->extension_stylesheet)
+     origin += ORIGIN_OFFSET_EXTENSION;
+ 
+   return origin;
+@@ -1046,8 +1074,9 @@ _st_theme_resolve_url (StTheme      *theme,
+   else if (base_stylesheet != NULL)
+     {
+       GFile *base_file = NULL, *parent;
++      StyleSheetData *stylesheet_data = base_stylesheet->app_data;
+ 
+-      base_file = g_hash_table_lookup (theme->files_by_stylesheet, base_stylesheet);
++      base_file = stylesheet_data->file;
+ 
+       /* This is an internal function, if we get here with
+          a bad @base_stylesheet we have a problem. */
+-- 
+2.24.1
+
+
+From 0974a3290aa2951ada3c9f2adceb2c65c2321849 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Mon, 6 May 2019 18:33:36 -0500
+Subject: [PATCH 2/5] st-theme: Use newer functions to finalize objects
+
+Use g_slist_free_full on custom stylesheets list and clear the hashtable and
+its pointer using g_clear_pointer and g_hash_table_destroy.
+
+https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+---
+ src/st/st-theme.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/st/st-theme.c b/src/st/st-theme.c
+index 208f536c5b..2d51420a20 100644
+--- a/src/st/st-theme.c
++++ b/src/st/st-theme.c
+@@ -372,11 +372,11 @@ st_theme_finalize (GObject * object)
+ {
+   StTheme *theme = ST_THEME (object);
+ 
+-  g_slist_foreach (theme->custom_stylesheets, (GFunc) cr_stylesheet_unref, NULL);
+-  g_slist_free (theme->custom_stylesheets);
+-  theme->custom_stylesheets = NULL;
++  g_clear_pointer (&theme->stylesheets_by_file, g_hash_table_destroy);
+ 
+-  g_hash_table_destroy (theme->stylesheets_by_file);
++  g_slist_free_full (theme->custom_stylesheets,
++                     (GDestroyNotify) cr_stylesheet_unref);
++  theme->custom_stylesheets = NULL;
+ 
+   g_clear_object (&theme->application_stylesheet);
+   g_clear_object (&theme->theme_stylesheet);
+-- 
+2.24.1
+
+
+From 801fd1884af2011ec6981e4d7844aac6f8dbecf0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Tue, 7 May 2019 01:59:11 -0500
+Subject: [PATCH 3/5] st-theme: Remove custom stylesheets list
+
+Since we already mark the stylesheet laded by extensions in the data, we don't
+need to use another list to go trough these as we can just iterate over the
+hash table with a minimum overhead, as this will normally contain just one
+default stylesheet and all the extension stylesheets anyways.
+
+https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+---
+ src/st/st-theme.c | 37 +++++++++++++++++++------------------
+ 1 file changed, 19 insertions(+), 18 deletions(-)
+
+diff --git a/src/st/st-theme.c b/src/st/st-theme.c
+index 2d51420a20..9f6b2f6e35 100644
+--- a/src/st/st-theme.c
++++ b/src/st/st-theme.c
+@@ -63,7 +63,6 @@ struct _StTheme
+   GFile *application_stylesheet;
+   GFile *default_stylesheet;
+   GFile *theme_stylesheet;
+-  GSList *custom_stylesheets;
+ 
+   GHashTable *stylesheets_by_file;
+ 
+@@ -290,8 +289,6 @@ st_theme_load_stylesheet (StTheme    *theme,
+   stylesheet_data = stylesheet->app_data;
+   stylesheet_data->extension_stylesheet = TRUE;
+ 
+-  cr_stylesheet_ref (stylesheet);
+-  theme->custom_stylesheets = g_slist_prepend (theme->custom_stylesheets, stylesheet);
+   g_signal_emit (theme, signals[STYLESHEETS_CHANGED], 0);
+ 
+   return TRUE;
+@@ -302,17 +299,17 @@ st_theme_unload_stylesheet (StTheme    *theme,
+                             GFile      *file)
+ {
+   CRStyleSheet *stylesheet;
++  StyleSheetData *stylesheet_data;
+ 
+   stylesheet = g_hash_table_lookup (theme->stylesheets_by_file, file);
+-  if (!stylesheet)
++  if (!stylesheet || !stylesheet->app_data)
+     return;
+ 
+-  if (!g_slist_find (theme->custom_stylesheets, stylesheet))
++  stylesheet_data = stylesheet->app_data;
++  if (!stylesheet_data->extension_stylesheet)
+     return;
+ 
+   g_hash_table_remove (theme->stylesheets_by_file, file);
+-  theme->custom_stylesheets = g_slist_remove (theme->custom_stylesheets, stylesheet);
+-  cr_stylesheet_unref (stylesheet);
+   g_signal_emit (theme, signals[STYLESHEETS_CHANGED], 0);
+ }
+ 
+@@ -327,14 +324,17 @@ GSList*
+ st_theme_get_custom_stylesheets (StTheme *theme)
+ {
+   GSList *result = NULL;
+-  GSList *iter;
++  GHashTableIter iter;
++  gpointer value;
+ 
+-  for (iter = theme->custom_stylesheets; iter; iter = iter->next)
++  g_hash_table_iter_init (&iter, theme->stylesheets_by_file);
++
++  while (g_hash_table_iter_next (&iter, NULL, &value))
+     {
+-      CRStyleSheet *stylesheet = iter->data;
++      CRStyleSheet *stylesheet = value;
+       StyleSheetData *stylesheet_data = stylesheet->app_data;
+ 
+-      if (stylesheet_data && stylesheet_data->file)
++      if (stylesheet_data && stylesheet_data->extension_stylesheet)
+         result = g_slist_prepend (result, g_object_ref (stylesheet_data->file));
+     }
+ 
+@@ -374,10 +374,6 @@ st_theme_finalize (GObject * object)
+ 
+   g_clear_pointer (&theme->stylesheets_by_file, g_hash_table_destroy);
+ 
+-  g_slist_free_full (theme->custom_stylesheets,
+-                     (GDestroyNotify) cr_stylesheet_unref);
+-  theme->custom_stylesheets = NULL;
+-
+   g_clear_object (&theme->application_stylesheet);
+   g_clear_object (&theme->theme_stylesheet);
+   g_clear_object (&theme->default_stylesheet);
+@@ -1030,7 +1026,7 @@ _st_theme_get_matched_properties (StTheme        *theme,
+   enum CRStyleOrigin origin = 0;
+   CRStyleSheet *sheet = NULL;
+   GPtrArray *props = g_ptr_array_new ();
+-  GSList *iter;
++  GHashTableIter iter;
+ 
+   g_return_val_if_fail (ST_IS_THEME (theme), NULL);
+   g_return_val_if_fail (ST_IS_THEME_NODE (node), NULL);
+@@ -1044,8 +1040,13 @@ _st_theme_get_matched_properties (StTheme        *theme,
+       add_matched_properties (theme, sheet, node, props);
+     }
+ 
+-  for (iter = theme->custom_stylesheets; iter; iter = iter->next)
+-    add_matched_properties (theme, iter->data, node, props);
++  g_hash_table_iter_init (&iter, theme->stylesheets_by_file);
++  while (g_hash_table_iter_next (&iter, NULL, (gpointer) &sheet))
++    {
++      if (sheet->app_data &&
++          ((StyleSheetData *) sheet->app_data)->extension_stylesheet)
++        add_matched_properties (theme, sheet, node, props);
++    }
+ 
+   /* We count on a stable sort here so that later declarations come
+    * after earlier declarations */
+-- 
+2.24.1
+
+
+From 5b66ecb1019f3ba32aa05562a8b58ebd95702669 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Mon, 6 May 2019 18:56:49 -0500
+Subject: [PATCH 4/5] st-theme: Ref stylesheet using facility function
+
+Define stylesheet_ref as a wrapper of cr_stylesheet_ref that returns the
+ref'ed instance so that we can use this on the caller function to make clear
+what we're passing.
+
+https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+---
+ src/st/st-theme.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/st/st-theme.c b/src/st/st-theme.c
+index 9f6b2f6e35..30733b6fd5 100644
+--- a/src/st/st-theme.c
++++ b/src/st/st-theme.c
+@@ -110,6 +110,13 @@ file_equal0 (GFile *file1,
+   return g_file_equal (file1, file2);
+ }
+ 
++static inline CRStyleSheet *
++stylesheet_ref (CRStyleSheet *stylesheet)
++{
++  cr_stylesheet_ref (stylesheet);
++  return stylesheet;
++}
++
+ static void
+ stylesheet_destroy (CRStyleSheet *stylesheet)
+ {
+@@ -268,9 +275,8 @@ insert_stylesheet (StTheme      *theme,
+   stylesheet_data->file = file;
+   stylesheet->app_data = stylesheet_data;
+ 
+-  cr_stylesheet_ref (stylesheet);
+   g_hash_table_insert (theme->stylesheets_by_file,
+-                       g_object_ref (file), stylesheet);
++                       g_object_ref (file), stylesheet_ref (stylesheet));
+   return TRUE;
+ }
+ 
+-- 
+2.24.1
+
+
+From bf5ea4dc4fbcf09c77a830ae9a227660e1c72d7d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
+Date: Mon, 6 May 2019 18:40:13 -0500
+Subject: [PATCH 5/5] st-theme: Use glib auto free/ptr features
+
+Use g_autofree and g_autoptr for managing memory in a smarter way.
+
+https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+---
+ src/st/st-theme.c | 21 ++++++---------------
+ 1 file changed, 6 insertions(+), 15 deletions(-)
+
+diff --git a/src/st/st-theme.c b/src/st/st-theme.c
+index 30733b6fd5..4c8730a4ce 100644
+--- a/src/st/st-theme.c
++++ b/src/st/st-theme.c
+@@ -205,7 +205,7 @@ parse_stylesheet (GFile   *file,
+ {
+   enum CRStatus status;
+   CRStyleSheet *stylesheet;
+-  char *contents;
++  g_autofree char *contents = NULL;
+   gsize length;
+ 
+   if (file == NULL)
+@@ -218,14 +218,11 @@ parse_stylesheet (GFile   *file,
+                                           length,
+                                           CR_UTF_8,
+                                           &stylesheet);
+-  g_free (contents);
+-
+   if (status != CR_OK)
+     {
+-      char *uri = g_file_get_uri (file);
++      g_autofree char *uri = g_file_get_uri (file);
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+                    "Error parsing stylesheet '%s'; errcode:%d", uri, status);
+-      g_free (uri);
+       return NULL;
+     }
+ 
+@@ -901,7 +898,7 @@ add_matched_properties (StTheme      *a_this,
+ 
+             if (import_rule->sheet == NULL)
+               {
+-                GFile *file = NULL;
++                g_autoptr (GFile) file = NULL;
+ 
+                 if (import_rule->url->stryng && import_rule->url->stryng->str)
+                   {
+@@ -925,9 +922,6 @@ add_matched_properties (StTheme      *a_this,
+                      */
+                     import_rule->sheet = (CRStyleSheet *) - 1;
+                   }
+-
+-                if (file)
+-                  g_object_unref (file);
+               }
+ 
+             if (import_rule->sheet != (CRStyleSheet *) - 1)
+@@ -1070,20 +1064,19 @@ _st_theme_resolve_url (StTheme      *theme,
+                        CRStyleSheet *base_stylesheet,
+                        const char   *url)
+ {
+-  char *scheme;
++  g_autofree char *scheme = NULL;
+   GFile *resource;
+ 
+   if ((scheme = g_uri_parse_scheme (url)))
+     {
+-      g_free (scheme);
+       resource = g_file_new_for_uri (url);
+     }
+   else if (base_stylesheet != NULL)
+     {
+-      GFile *base_file = NULL, *parent;
+       StyleSheetData *stylesheet_data = base_stylesheet->app_data;
++      GFile *base_file = stylesheet_data->file;
++      g_autoptr (GFile) parent = NULL;
+ 
+-      base_file = stylesheet_data->file;
+ 
+       /* This is an internal function, if we get here with
+          a bad @base_stylesheet we have a problem. */
+@@ -1091,8 +1084,6 @@ _st_theme_resolve_url (StTheme      *theme,
+ 
+       parent = g_file_get_parent (base_file);
+       resource = g_file_resolve_relative_path (parent, url);
+-
+-      g_object_unref (parent);
+     }
+   else
+     {
+-- 
+2.24.1
+

diff --git a/gnome-base/gnome-shell/gnome-shell-3.34.4-r1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.34.4-r1.ebuild
new file mode 100644
index 00000000000..2e737d33e72
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.34.4-r1.ebuild
@@ -0,0 +1,198 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit gnome.org gnome2-utils meson pax-utils python-single-r1 virtualx xdg
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="https://wiki.gnome.org/Projects/GnomeShell"
+SRC_URI+=" https://dev.gentoo.org/~leio/distfiles/${P}-patchset.tar.xz"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +browser-extension elogind gtk-doc +ibus +networkmanager systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer support is currently automagic
+DEPEND="
+	>=dev-libs/libcroco-0.6.8:0.6
+	>=gnome-extra/evolution-data-server-3.33.1:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=dev-libs/glib-2.57.2:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.57.3
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	>=x11-wm/mutter-3.34.0:0/5[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.33.1
+	>=x11-libs/startup-notification-0.11
+	>=app-i18n/ibus-1.5.2
+	>=gnome-base/gnome-desktop-3.32:3=[introspection]
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	media-libs/gst-plugins-base:1.0
+	networkmanager? (
+		>=net-misc/networkmanager-1.10.4:=[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-31
+		>=gnome-base/gnome-desktop-3.34.2:3=[systemd] )
+	elogind? ( >=sys-auth/elogind-237 )
+	app-arch/gnome-autoar
+	dev-libs/json-glib
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+	')
+	media-libs/mesa[X(+)]
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
+# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+	media-fonts/cantarell
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+BDEPEND="
+	dev-lang/sassc
+	dev-libs/libxslt
+	app-text/asciidoc
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	gtk-doc? ( >=dev-util/gtk-doc-1.17
+		app-text/docbook-xml-dtd:4.3 )
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Patches from gnome-3-34 branch on top of 3.34.4
+	"${WORKDIR}"/patches/
+	# Try to fix crashes related to custom stylesheet; triggered often by package installs (probably desktop database update)
+	# https://gitlab.gnome.org/GNOME/gnome-shell/issues/1265
+	# https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/536
+	"${FILESDIR}"/${PV}-custom_stylesheet_crash.patch
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/3.34-optional-bluetooth.patch
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/3.28.3-defaults.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use bluetooth)
+		-Dextensions_tool=true
+		$(meson_use gtk-doc gtk_doc)
+		-Dman=true
+		$(meson_use networkmanager)
+		$(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4
+		# (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# Required for gnome-shell on hardened/PaX, bug #398941; FIXME: Is this still relevant?
+	pax-mark m "${ED}/usr/bin/gnome-shell"{,-extension-prefs}
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2021-04-05 16:54 Matt Turner
  0 siblings, 0 replies; 14+ messages in thread
From: Matt Turner @ 2021-04-05 16:54 UTC (permalink / raw
  To: gentoo-commits

commit:     cfa743af9b07598da84b1c6dbb081b89e1eefe8b
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 21 22:54:15 2021 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Apr  5 16:54:20 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cfa743af

gnome-base/gnome-shell: Version bump to 40.0

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 gnome-base/gnome-shell/Manifest                    |   1 +
 gnome-base/gnome-shell/files/40.0-defaults.patch   |  28 +++
 .../files/40.0-optional-bluetooth.patch            |  59 +++++++
 gnome-base/gnome-shell/gnome-shell-40.0.ebuild     | 189 +++++++++++++++++++++
 4 files changed, 277 insertions(+)

diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
index d90dff532de..8d90cb95a5f 100644
--- a/gnome-base/gnome-shell/Manifest
+++ b/gnome-base/gnome-shell/Manifest
@@ -3,3 +3,4 @@ DIST gnome-shell-3.36.7.tar.xz 1777236 BLAKE2B 4dd3b98e8a2ffa711bffe0b3b78708c85
 DIST gnome-shell-3.38.2.tar.xz 1814152 BLAKE2B 765f584ad8f71ac185e9dc6683f1866308c126d8ce8ba9330068e324ea9586b57315cf7feade62eb4142bb3a4effd80c7e6e0d7b36b6c5fb7d547e3bff9c2ab2 SHA512 ac37549039a11f4f1b2cdd8b0f8cab72093efca74a5909ad187121565cce737c6a6f296c7241ac5f2174fdfcf11070f7584e713e244fafc911fe039d8fd05f04
 DIST gnome-shell-3.38.3.tar.xz 1815204 BLAKE2B 1df05f0a3709d851d9bb01c8d8f82b3e36aa1da68256198afe7f5663bbf3dc3b88148220b4f90a1ab3eb3d2a14e370dc038e9afd73c57133f9535423b074ac27 SHA512 695446a934b3e5f8512084cb4eaba3e27aec0e03041890fb2a7a9eb4d91d3a9f2f5ca94a8616ce4e7303a2073fda7878425ba31bf590c448132f379fa7138d47
 DIST gnome-shell-3.38.4.tar.xz 1815880 BLAKE2B 888786ca1c7ac4a84c4b4b9ccc1035de80021efe0bf54521494eb90008ad11d5ef693158fd2c30a44532ef30911e6940b81c9c2eb426465aeae5ce3f1d9dbf5d SHA512 f59d7347587ecbde7790d466ee7c81d1e0ce0ff9f92bfe9cb3efc4049231bc164c0f61b761f42dfab1eb35619736d9a55fdae2b808e12f7671900d89e529fea8
+DIST gnome-shell-40.0.tar.xz 1863432 BLAKE2B 698995328575e7e879eb0459e4f0087d0e11624952ac2786fec6c431da83eff25351d909b05a7d347f10b4eaf0d384c065e1f5255c1230433c839bed515ecf40 SHA512 fc4ca3fbd3dafd4a81f97a765e53b74fa4902018721e25a767c0d353d127b0cdc69c64171188272e3f5b48f11d6ad52064cc237e35210f5e09dfcd763ceb00c4

diff --git a/gnome-base/gnome-shell/files/40.0-defaults.patch b/gnome-base/gnome-shell/files/40.0-defaults.patch
new file mode 100644
index 00000000000..012514100e0
--- /dev/null
+++ b/gnome-base/gnome-shell/files/40.0-defaults.patch
@@ -0,0 +1,28 @@
+From 1179f970e4b165ac6daf22d0e3b61df4879f3438 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>
+[Updated to include desktop file renames to reverse DNS and 3.36 changes]
+Signed-off-by: Mart Raudsepp <leio@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 cd6a2356d..6200df11c 100644
+--- a/data/org.gnome.shell.gschema.xml.in
++++ b/data/org.gnome.shell.gschema.xml.in
+@@ -50,7 +50,7 @@
+       </description>
+     </key>
+     <key name="favorite-apps" type="as">
+-      <default>[ 'org.gnome.Epiphany.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]</default>
++      <default>[ 'chromium-browser-chromium.desktop', 'firefox.desktop', 'firefox-bin.desktop', 'org.gnome.Evolution.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.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.26.2
+

diff --git a/gnome-base/gnome-shell/files/40.0-optional-bluetooth.patch b/gnome-base/gnome-shell/files/40.0-optional-bluetooth.patch
new file mode 100644
index 00000000000..dba20fe8c09
--- /dev/null
+++ b/gnome-base/gnome-shell/files/40.0-optional-bluetooth.patch
@@ -0,0 +1,59 @@
+From 1ef0033f8148466256b403c9d8c79b9fed1dd343 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Thu, 28 Feb 2019 00:50:19 +0200
+Subject: [PATCH 2/2] build: Make bluetooth support optional
+
+---
+ js/misc/meson.build | 2 +-
+ meson.build         | 7 ++++++-
+ meson_options.txt   | 6 ++++++
+ 3 files changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/js/misc/meson.build b/js/misc/meson.build
+index 2702c3dbc..7a6c831b9 100644
+--- a/js/misc/meson.build
++++ b/js/misc/meson.build
+@@ -3,7 +3,7 @@ jsconf.set('PACKAGE_NAME', meson.project_name())
+ jsconf.set('PACKAGE_VERSION', meson.project_version())
+ jsconf.set('GETTEXT_PACKAGE', meson.project_name())
+ jsconf.set('LIBMUTTER_API_VERSION', mutter_api_version)
+-jsconf.set10('HAVE_BLUETOOTH', bt_dep.found())
++jsconf.set10('HAVE_BLUETOOTH', have_bluetooth)
+ jsconf.set10('HAVE_NETWORKMANAGER', have_networkmanager)
+ jsconf.set('datadir', datadir)
+ jsconf.set('libexecdir', libexecdir)
+diff --git a/meson.build b/meson.build
+index 14b75c1c9..8b1c7a380 100644
+--- a/meson.build
++++ b/meson.build
+@@ -94,7 +94,12 @@ x11_dep = dependency('x11')
+ schemas_dep = dependency('gsettings-desktop-schemas', version: schemas_req)
+ gnome_desktop_dep = dependency('gnome-desktop-3.0', version: gnome_desktop_req)
+ 
+-bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req, required: false)
++if get_option('bluetooth')
++  bt_dep = dependency('gnome-bluetooth-1.0', version: bt_req)
++  have_bluetooth = true
++else
++  have_bluetooth = false
++endif
+ gst_dep = dependency('gstreamer-1.0', version: gst_req, required: false)
+ gst_base_dep = dependency('gstreamer-base-1.0', required: false)
+ pipewire_dep = dependency('libpipewire-0.3', required: false)
+diff --git a/meson_options.txt b/meson_options.txt
+index ef76b73c3..41cc0ff9d 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -1,3 +1,9 @@
++option('bluetooth',
++  type: 'boolean',
++  value: true,
++  description: 'Enable bluetooth support'
++)
++
+ option('extensions_tool',
+   type: 'boolean',
+   value: true,
+-- 
+2.26.2
+

diff --git a/gnome-base/gnome-shell/gnome-shell-40.0.ebuild b/gnome-base/gnome-shell/gnome-shell-40.0.ebuild
new file mode 100644
index 00000000000..c4847329fbd
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-40.0.ebuild
@@ -0,0 +1,189 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit gnome.org gnome2-utils meson python-single-r1 virtualx xdg
+
+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 elogind gtk-doc +ibus +networkmanager systemd telepathy"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+	?? ( elogind systemd )"
+
+KEYWORDS="~amd64"
+
+# libXfixes-5.0 needed for pointer barriers and #include <X11/extensions/Xfixes.h>
+# FIXME:
+#  * gstreamer/pipewire support is currently automagic
+DEPEND="
+	>=gnome-extra/evolution-data-server-3.33.1:=
+	>=app-crypt/gcr-3.7.5[introspection]
+	>=dev-libs/glib-2.57.2:2
+	>=dev-libs/gobject-introspection-1.49.1:=
+	>=dev-libs/gjs-1.65.1
+	>=x11-libs/gtk+-3.15.0:3[introspection]
+	>=x11-wm/mutter-40.0:0/8[introspection]
+	>=sys-auth/polkit-0.100[introspection]
+	>=gnome-base/gsettings-desktop-schemas-3.33.1
+	>=x11-libs/startup-notification-0.11
+	>=app-i18n/ibus-1.5.2
+	>=gnome-base/gnome-desktop-3.35.90:3=[introspection]
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+	>=media-libs/gstreamer-0.11.92:1.0
+	media-libs/gst-plugins-base:1.0
+	>=media-video/pipewire-0.3.0:0/0.3
+	networkmanager? (
+		>=net-misc/networkmanager-1.10.4:=[introspection]
+		net-libs/libnma[introspection]
+		>=app-crypt/libsecret-0.18
+		dev-libs/dbus-glib )
+	systemd? ( >=sys-apps/systemd-242
+		>=gnome-base/gnome-desktop-3.34.2:3=[systemd] )
+	elogind? ( >=sys-auth/elogind-237 )
+
+	app-arch/gnome-autoar
+	dev-libs/json-glib
+
+	>=app-accessibility/at-spi2-atk-2.5.3
+	x11-libs/gdk-pixbuf:2[introspection]
+	dev-libs/libxml2:2
+	x11-libs/libX11
+
+	>=media-sound/pulseaudio-2[glib]
+	>=dev-libs/atk-2[introspection]
+	dev-libs/libical:=
+	>=x11-libs/libXfixes-5.0
+
+	gui-libs/gtk:4[introspection]
+
+	${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+	')
+	media-libs/mesa[X(+)]
+"
+# 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 needed for shutdown/reboot/inhibitors/etc
+# 3. Control shell settings
+# 4. logind interface needed for suspending support
+# 5. xdg-utils needed for xdg-open, used by extension tool
+# 6. adwaita-icon-theme needed for various icons & arrows (3.26 for new video-joined-displays-symbolic and co icons; review for 3.28+)
+# 7. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c  # TODO: Review
+# 8. IBus is needed for nls integration
+# 9. Optional telepathy chat integration
+# 10. Cantarell font used in gnome-shell global CSS (if removing this for some reason, make sure it's pulled in somehow for non-meta users still too)
+# 11. TODO: semi-optional webkit-gtk[introspection] for captive portal helper
+RDEPEND="${DEPEND}
+	>=sys-apps/accountsservice-0.6.14[introspection]
+	app-accessibility/at-spi2-core:2[introspection]
+	app-misc/geoclue[introspection]
+	>=dev-libs/libgweather-3.26:2[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
+
+	x11-misc/xdg-utils
+
+	>=x11-themes/adwaita-icon-theme-3.26
+
+	networkmanager? (
+		net-misc/mobile-broadband-provider-info
+		sys-libs/timezone-data )
+	ibus? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk,introspection] )
+	telepathy? (
+		>=net-im/telepathy-logger-0.2.4[introspection]
+		>=net-libs/telepathy-glib-0.19[introspection] )
+	media-fonts/cantarell
+"
+# avoid circular dependency, see bug #546134
+PDEPEND="
+	>=gnome-base/gdm-3.5[introspection]
+	>=gnome-base/gnome-control-center-3.26[bluetooth(+)?,networkmanager(+)?]
+	browser-extension? ( gnome-extra/chrome-gnome-shell )
+"
+BDEPEND="
+	dev-lang/sassc
+	dev-libs/libxslt
+	app-text/asciidoc
+	>=dev-util/gdbus-codegen-2.45.3
+	dev-util/glib-utils
+	gtk-doc? ( >=dev-util/gtk-doc-1.17
+		app-text/docbook-xml-dtd:4.3 )
+	>=sys-devel/gettext-0.19.8
+	virtual/pkgconfig
+"
+
+PATCHES=(
+	# Fix automagic gnome-bluetooth dep, bug #398145
+	"${FILESDIR}"/40.0-optional-bluetooth.patch
+	# Change favorites defaults, bug #479918
+	"${FILESDIR}"/40.0-defaults.patch
+)
+
+src_prepare() {
+	xdg_src_prepare
+	# Hack in correct python shebang
+	sed -e "s:python\.path():'/usr/bin/env ${EPYTHON}':" -i src/meson.build || die
+}
+
+src_configure() {
+	local emesonargs=(
+		$(meson_use bluetooth)
+		-Dextensions_tool=true
+		-Dextensions_app=true
+		$(meson_use gtk-doc gtk_doc)
+		-Dman=true
+		$(meson_use networkmanager)
+		$(meson_use systemd) # this controls journald integration and desktop file user services related property only as of 3.34.4
+		# (structured logging and having gnome-shell launched apps use its own identifier instead of gnome-session)
+		# suspend support is runtime optional via /run/systemd/seats presence and org.freedesktop.login1.Manager dbus interface; elogind should provide what's necessary
+	)
+	meson_src_configure
+}
+
+src_test() {
+	virtx meson_src_test
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	gnome2_schemas_update
+
+	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
+	# TODO: Is this still the case after various fixed in 3.28 for detecting non-working KMS for wayland (to fall back to X)?
+	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
+}
+
+pkg_postrm() {
+	xdg_pkg_postrm
+	gnome2_schemas_update
+}


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2024-07-08  3:19 Eli Schwartz
  0 siblings, 0 replies; 14+ messages in thread
From: Eli Schwartz @ 2024-07-08  3:19 UTC (permalink / raw
  To: gentoo-commits

commit:     13e7cc29573344822488e3bb78f798b99ef97688
Author:     Eli Schwartz <eschwartz <AT> gentoo <DOT> org>
AuthorDate: Sun Jul  7 22:41:13 2024 +0000
Commit:     Eli Schwartz <eschwartz <AT> gentoo <DOT> org>
CommitDate: Mon Jul  8 03:18:39 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=13e7cc29

gnome-base/gnome-shell: backport fix for strict-aliasing with USE=pipewire

Closes: https://bugs.gentoo.org/919853
Signed-off-by: Eli Schwartz <eschwartz <AT> gentoo.org>

 .../37e49e8a22c223b030297f9607bdb748c219e060.patch | 42 ++++++++++++++++++++++
 ...hell-45.6.ebuild => gnome-shell-45.6-r1.ebuild} |  2 ++
 2 files changed, 44 insertions(+)

diff --git a/gnome-base/gnome-shell/files/37e49e8a22c223b030297f9607bdb748c219e060.patch b/gnome-base/gnome-shell/files/37e49e8a22c223b030297f9607bdb748c219e060.patch
new file mode 100644
index 000000000000..d56db89bbacd
--- /dev/null
+++ b/gnome-base/gnome-shell/files/37e49e8a22c223b030297f9607bdb748c219e060.patch
@@ -0,0 +1,42 @@
+From 37e49e8a22c223b030297f9607bdb748c219e060 Mon Sep 17 00:00:00 2001
+From: Philip Withnall <pwithnall@gnome.org>
+Date: Tue, 28 May 2024 18:08:27 +0100
+Subject: [PATCH] shell-camera-monitor: Fix warning about strict aliasing
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Changing type when casting a double pointer is not strictly allowed in
+C. In order to fix compilation with `-fstrict-aliasing`, don’t use
+`g_clear_pointer()` for clearing this pointer where the type expected by
+the destroy notify function does not match the type stored in the
+`ShellCameraMonitor` struct.
+
+This introduces no functional changes.
+
+Signed-off-by: Philip Withnall <pwithnall@gnome.org>
+Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3351>
+---
+ src/shell-camera-monitor.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/shell-camera-monitor.c b/src/shell-camera-monitor.c
+index 1e2e0f14569..b2e6e0b2af2 100644
+--- a/src/shell-camera-monitor.c
++++ b/src/shell-camera-monitor.c
+@@ -298,7 +298,11 @@ shell_camera_monitor_disconnect_core (ShellCameraMonitor *monitor)
+   g_clear_handle_id (&monitor->delayed_disable_id, g_source_remove);
+ 
+   spa_hook_remove (&monitor->registry_listener);
+-  g_clear_pointer ((struct pw_proxy**) &monitor->registry, pw_proxy_destroy);
++  if (monitor->registry != NULL)
++    {
++      pw_proxy_destroy ((struct pw_proxy *) monitor->registry);
++      monitor->registry = NULL;
++    }
+   spa_hook_remove (&monitor->core_listener);
+   g_clear_pointer (&monitor->core, pw_core_disconnect);
+ }
+-- 
+GitLab
+

diff --git a/gnome-base/gnome-shell/gnome-shell-45.6.ebuild b/gnome-base/gnome-shell/gnome-shell-45.6-r1.ebuild
similarity index 98%
rename from gnome-base/gnome-shell/gnome-shell-45.6.ebuild
rename to gnome-base/gnome-shell/gnome-shell-45.6-r1.ebuild
index 92b6670d0970..c9c3acd73caa 100644
--- a/gnome-base/gnome-shell/gnome-shell-45.6.ebuild
+++ b/gnome-base/gnome-shell/gnome-shell-45.6-r1.ebuild
@@ -134,6 +134,8 @@ BDEPEND="
 PATCHES=(
 	# Change favorites defaults, bug #479918
 	"${FILESDIR}"/40.0-defaults.patch
+	# backport fix for strict-aliasing violation with USE=pipewire
+	"${FILESDIR}"/37e49e8a22c223b030297f9607bdb748c219e060.patch
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/
@ 2024-08-09 12:04 Pacho Ramos
  0 siblings, 0 replies; 14+ messages in thread
From: Pacho Ramos @ 2024-08-09 12:04 UTC (permalink / raw
  To: gentoo-commits

commit:     8a4beb082e5d95b3057325962f413500ea4a3033
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Fri Aug  9 11:40:27 2024 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Fri Aug  9 12:04:09 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a4beb08

gnome-base/gnome-shell: Rebase favorites patch

Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 gnome-base/gnome-shell/files/46.4-defaults.patch | 11 +++++++++++
 gnome-base/gnome-shell/gnome-shell-46.4.ebuild   |  5 +++++
 2 files changed, 16 insertions(+)

diff --git a/gnome-base/gnome-shell/files/46.4-defaults.patch b/gnome-base/gnome-shell/files/46.4-defaults.patch
new file mode 100644
index 000000000000..797bd5bd8911
--- /dev/null
+++ b/gnome-base/gnome-shell/files/46.4-defaults.patch
@@ -0,0 +1,11 @@
+--- a/data/org.gnome.shell.gschema.xml.in~	2024-08-03 20:13:53.000000000 +0200
++++ b/data/org.gnome.shell.gschema.xml.in	2024-08-09 13:38:24.886239853 +0200
+@@ -61,7 +61,7 @@
+       </description>
+     </key>
+     <key name="favorite-apps" type="as">
+-      <default>[ 'org.gnome.Epiphany.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop', 'org.gnome.TextEditor.desktop']</default>
++      <default>[ 'chromium-browser-chromium.desktop', 'firefox.desktop', 'firefox-bin.desktop', 'org.gnome.Evolution.desktop', 'org.gnome.Epiphany.desktop', 'org.gnome.Calendar.desktop', 'org.gnome.Music.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop', 'org.gnome.TextEditor.desktop']</default>
+       <summary>List of desktop file IDs for favorite applications</summary>
+       <description>
+         The applications corresponding to these identifiers

diff --git a/gnome-base/gnome-shell/gnome-shell-46.4.ebuild b/gnome-base/gnome-shell/gnome-shell-46.4.ebuild
index 23b0f05ea7a1..f3600035d8ff 100644
--- a/gnome-base/gnome-shell/gnome-shell-46.4.ebuild
+++ b/gnome-base/gnome-shell/gnome-shell-46.4.ebuild
@@ -131,6 +131,11 @@ BDEPEND="
 # dev-lang/sassc
 # app-text/asciidoc
 
+PATCHES=(
+        # Change favorites defaults, bug #479918
+        "${FILESDIR}"/46.4-defaults.patch
+)
+
 src_prepare() {
 	default
 	xdg_environment_reset


^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-08-09 12:04 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-27 23:57 [gentoo-commits] repo/gentoo:master commit in: gnome-base/gnome-shell/files/, gnome-base/gnome-shell/ Mart Raudsepp
  -- strict thread matches above, loose matches on Subject: below --
2024-08-09 12:04 Pacho Ramos
2024-07-08  3:19 Eli Schwartz
2021-04-05 16:54 Matt Turner
2020-03-15 17:38 Mart Raudsepp
2020-03-01 16:18 Mart Raudsepp
2019-09-06 21:47 Mart Raudsepp
2019-05-18 20:46 Mart Raudsepp
2019-05-05 11:55 Mart Raudsepp
2018-09-28 13:51 Mart Raudsepp
2018-02-03 20:56 Mart Raudsepp
2017-04-29 17:51 Mart Raudsepp
2016-11-12  0:37 Gilles Dartiguelongue
2016-03-14 23:16 Ole Reifschneider

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox