summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dartiguelongue <eva@gentoo.org>2013-12-03 00:56:46 +0100
committerGilles Dartiguelongue <eva@gentoo.org>2013-12-11 00:30:33 +0100
commit87f1430f36606631d915cccccb2ef6cff34edf03 (patch)
tree971d4ce58748761348a4b77543881b99dfcf4b37 /gnome-base/gnome-shell
parentx11-wm/mutter: 3.8.4 → 3.10.2 (diff)
downloadgnome-87f1430f36606631d915cccccb2ef6cff34edf03.tar.gz
gnome-87f1430f36606631d915cccccb2ef6cff34edf03.tar.bz2
gnome-87f1430f36606631d915cccccb2ef6cff34edf03.zip
gnome-base/gnome-shell: 3.8.4-r1 → 3.10.2.1
Diffstat (limited to 'gnome-base/gnome-shell')
-rw-r--r--gnome-base/gnome-shell/Manifest11
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.10-bluetooth-flag.patch (renamed from gnome-base/gnome-shell/files/gnome-shell-3.5.x-bluetooth-flag.patch)30
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.10-networkmanager-flag.patch228
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-3.6.0-networkmanager-flag.patch222
-rw-r--r--gnome-base/gnome-shell/files/gnome-shell-defaults.patch25
-rw-r--r--gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild221
-rw-r--r--gnome-base/gnome-shell/gnome-shell-9999.ebuild133
-rw-r--r--gnome-base/gnome-shell/metadata.xml8
8 files changed, 584 insertions, 294 deletions
diff --git a/gnome-base/gnome-shell/Manifest b/gnome-base/gnome-shell/Manifest
new file mode 100644
index 00000000..15549445
--- /dev/null
+++ b/gnome-base/gnome-shell/Manifest
@@ -0,0 +1,11 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+DIST gnome-shell-3.10.2.1.tar.xz 1518504 SHA256 d28cedc4f7dbcbd979ef2a0b80f722ff507989fce193fe59351b1d048d17c44c SHA512 1440675fd7935d8173318420abd1986eac0d0d3da522a28d99aaf7c32df3fbd0be0356a6b9153ba3132ce15087513c96573cf27a72b34fd3a1af35fbb3792f2c WHIRLPOOL 64f564acc24e70c5691f1816f0a2f860a868782a7b8bb41ff09a3d7e41b6d563fb04cf998dee70583f12c800398836dc930685cede4a0aa32485e7c75178c8a8
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.21 (GNU/Linux)
+
+iEYEAREKAAYFAlKdHj4ACgkQ1fmVwcYIWAYHxwCgjGaLj1i6V1naHynrQ9xPpP/T
+FF8AoLrESGHuUgwKiTF+Ydph1cOOyltk
+=tVbA
+-----END PGP SIGNATURE-----
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.5.x-bluetooth-flag.patch b/gnome-base/gnome-shell/files/gnome-shell-3.10-bluetooth-flag.patch
index b5717548..e74e18f6 100644
--- a/gnome-base/gnome-shell/files/gnome-shell-3.5.x-bluetooth-flag.patch
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.10-bluetooth-flag.patch
@@ -1,7 +1,7 @@
-From fbc509635dd60d548945636bb4f1cfec5dc7fb49 Mon Sep 17 00:00:00 2001
-From: root <admin@catmur.co.uk>
-Date: Sun, 8 Jan 2012 13:55:05 +0000
-Subject: [PATCH 1/2] Fix automagic gnome-bluetooth dependency
+From d15e9df8903c05fa0e355b3b1b133171c706d3ac 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
@@ -13,23 +13,25 @@ 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 | 5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
+ configure.ac | 7 +++++++
+ 1 file changed, 7 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 7ab5c59..f3dbdcc 100644
+index 334323a..e749ca6 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -123,6 +123,8 @@ PKG_CHECK_MODULES(GVC, libpulse libpulse-mainloop-glib gobject-2.0)
- PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.5.4)
+@@ -116,6 +116,10 @@ PKG_CHECK_MODULES(DESKTOP_SCHEMAS, gsettings-desktop-schemas >= 3.7.4)
+ PKG_CHECK_MODULES(CARIBOU, caribou-1.0 >= 0.4.8)
AC_MSG_CHECKING([for bluetooth support])
-+AC_ARG_WITH([bluetooth], AS_HELP_STRING([--without-bluetooth], [Build without gnome-bluetooth library (default: auto)]))
++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_EXISTS([gnome-bluetooth-1.0 >= 3.1.0],
+ PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.9.0],
[BLUETOOTH_DIR=`$PKG_CONFIG --variable=applet_libdir gnome-bluetooth-1.0`
BLUETOOTH_LIBS=`$PKG_CONFIG --variable=applet_libs gnome-bluetooth-1.0`
-@@ -135,6 +137,9 @@ PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.1.0],
+@@ -128,6 +132,9 @@ PKG_CHECK_EXISTS([gnome-bluetooth-1.0 >= 3.9.0],
[AC_DEFINE([HAVE_BLUETOOTH],[0])
AC_SUBST([HAVE_BLUETOOTH],[0])
AC_MSG_RESULT([no])])
@@ -37,8 +39,8 @@ index 7ab5c59..f3dbdcc 100644
+ 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 libedataserverui-3.0 >= $LIBEDATASERVERUI_MIN_VERSION gio-2.0)
+ 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.7.8.6
+1.8.5.1
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.10-networkmanager-flag.patch b/gnome-base/gnome-shell/files/gnome-shell-3.10-networkmanager-flag.patch
new file mode 100644
index 00000000..4e28835f
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-3.10-networkmanager-flag.patch
@@ -0,0 +1,228 @@
+From 2ca59eb6e8ca9ba76757ede04e734c743aa21769 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Tue, 10 Dec 2013 23:37:08 +0100
+Subject: [PATCH 3/3] Make networkmanager support optional
+
+ * use config.js (and AC_SUBST HAVE_NETWORKMANAGER appropriately);
+ * take care to not import ui.status.network if nm is disabled;
+ * do not try to reassign to const variables;
+ * no point really in fiddling with the list of installed js
+ * files;
+ * don't build shell-mobile-providers if nm is disabled;
+ * use "networkmanager" instead of "network_manager" because THE
+ BIKESHED SHOULD BE BLUE, also because the upstream package name is
+ NetworkManager, not Network_Manager.
+---
+ configure.ac | 46 ++++++++++++++++++++++++++++++++++++++++++++--
+ js/Makefile.am | 1 +
+ js/misc/config.js.in | 2 ++
+ js/ui/panel.js | 15 ++++++++++++---
+ js/ui/sessionMode.js | 7 ++++++-
+ src/Makefile.am | 12 +++++++++---
+ 6 files changed, 74 insertions(+), 9 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e749ca6..5044302 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -91,8 +91,6 @@ SHARED_PCS="gio-unix-2.0 >= $GIO_MIN_VERSION
+ libcanberra libcanberra-gtk3
+ telepathy-glib >= $TELEPATHY_GLIB_MIN_VERSION
+ polkit-agent-1 >= $POLKIT_MIN_VERSION
+- libnm-glib libnm-util >= $NETWORKMANAGER_MIN_VERSION
+- libnm-gtk >= $NETWORKMANAGER_MIN_VERSION
+ libsecret-unstable gcr-base-3 >= $GCR_MIN_VERSION"
+
+ PKG_CHECK_MODULES(GNOME_SHELL, $SHARED_PCS)
+@@ -169,6 +167,38 @@ if test "$langinfo_ok" = "yes"; then
+ [Define if _NL_TIME_FIRST_WEEKDAY is available])
+ fi
+
++AC_ARG_ENABLE(networkmanager,
++ AS_HELP_STRING([--disable-networkmanager],
++ [disable NetworkManager support @<:@default=auto@:>@]),,
++ [enable_networkmanager=auto])
++
++if test "x$enable_networkmanager" != "xno"; then
++ PKG_CHECK_MODULES(NETWORKMANAGER,
++ [libnm-glib
++ libnm-util >= $NETWORKMANAGER_MIN_VERSION
++ libnm-gtk >= $NETWORKMANAGER_MIN_VERSION
++ gnome-keyring-1],
++ [have_networkmanager=yes],
++ [have_networkmanager=no])
++
++ GNOME_SHELL_CFLAGS="$GNOME_SHELL_CFLAGS $NETWORKMANAGER_CFLAGS"
++ GNOME_SHELL_LIBS="$GNOME_SHELL_LIBS $NETWORKMANAGER_LIBS"
++else
++ have_networkmanager="no (disabled)"
++fi
++
++if test "x$have_networkmanager" = "xyes"; then
++ AC_DEFINE(HAVE_NETWORKMANAGER, [1], [Define if we have NetworkManager])
++ AC_SUBST([HAVE_NETWORKMANAGER], [1])
++else
++ if test "x$enable_networkmanager" = "xyes"; then
++ AC_MSG_ERROR([Couldn't find NetworkManager.])
++ fi
++ AC_SUBST([HAVE_NETWORKMANAGER], [0])
++fi
++
++AM_CONDITIONAL(HAVE_NETWORKMANAGER, test "$have_networkmanager" = "yes")
++
+ # Sets GLIB_GENMARSHAL and GLIB_MKENUMS
+ AM_PATH_GLIB_2_0()
+
+@@ -210,3 +240,15 @@ AC_CONFIG_FILES([
+ man/Makefile
+ ])
+ AC_OUTPUT
++
++echo "
++Build configuration:
++
++ Prefix: ${prefix}
++ Source code location: ${srcdir}
++ Compiler: ${CC}
++ Compiler Warnings: $enable_compile_warnings
++
++ Support for NetworkManager: $have_networkmanager
++ Support for GStreamer recording: $build_recorder
++"
+diff --git a/js/Makefile.am b/js/Makefile.am
+index d614f4f..88a3887 100644
+--- a/js/Makefile.am
++++ b/js/Makefile.am
+@@ -8,6 +8,7 @@ misc/config.js: misc/config.js.in Makefile
+ sed -e "s|[@]PACKAGE_NAME@|$(PACKAGE_NAME)|g" \
+ -e "s|[@]PACKAGE_VERSION@|$(PACKAGE_VERSION)|g" \
+ -e "s|[@]HAVE_BLUETOOTH@|$(HAVE_BLUETOOTH)|g" \
++ -e "s|[@]HAVE_NETWORKMANAGER@|$(HAVE_NETWORKMANAGER)|g" \
+ -e "s|[@]GETTEXT_PACKAGE@|$(GETTEXT_PACKAGE)|g" \
+ -e "s|[@]datadir@|$(datadir)|g" \
+ -e "s|[@]libexecdir@|$(libexecdir)|g" \
+diff --git a/js/misc/config.js.in b/js/misc/config.js.in
+index 9769104..9c4795d 100644
+--- a/js/misc/config.js.in
++++ b/js/misc/config.js.in
+@@ -6,6 +6,8 @@ const PACKAGE_NAME = '@PACKAGE_NAME@';
+ const PACKAGE_VERSION = '@PACKAGE_VERSION@';
+ /* 1 if gnome-bluetooth is available, 0 otherwise */
+ const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
++/* 1 if networkmanager is available, 0 otherwise */
++const HAVE_NETWORKMANAGER = @HAVE_NETWORKMANAGER@;
+ /* gettext package */
+ const GETTEXT_PACKAGE = '@GETTEXT_PACKAGE@';
+ /* locale dir */
+diff --git a/js/ui/panel.js b/js/ui/panel.js
+index 2337a63..17e4f10 100644
+--- a/js/ui/panel.js
++++ b/js/ui/panel.js
+@@ -809,7 +809,12 @@ const AggregateMenu = new Lang.Class({
+ this._indicators = new St.BoxLayout({ style_class: 'panel-status-indicators-box' });
+ this.actor.add_child(this._indicators);
+
+- this._network = new imports.ui.status.network.NMApplet();
++ if (Config.HAVE_NETWORKMANAGER) {
++ this._network = new imports.ui.status.network.NMApplet();
++ } else {
++ this._network = null;
++ }
++
+ if (Config.HAVE_BLUETOOTH) {
+ this._bluetooth = new imports.ui.status.bluetooth.Indicator();
+ } else {
+@@ -824,7 +829,9 @@ const AggregateMenu = new Lang.Class({
+ this._screencast = new imports.ui.status.screencast.Indicator();
+
+ this._indicators.add_child(this._screencast.indicators);
+- this._indicators.add_child(this._network.indicators);
++ if (this._network) {
++ this._indicators.add_child(this._network.indicators);
++ }
+ if (this._bluetooth) {
+ this._indicators.add_child(this._bluetooth.indicators);
+ }
+@@ -836,7 +843,9 @@ const AggregateMenu = new Lang.Class({
+ this.menu.addMenuItem(this._volume.menu);
+ this.menu.addMenuItem(this._brightness.menu);
+ this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
+- this.menu.addMenuItem(this._network.menu);
++ if (this._network) {
++ this.menu.addMenuItem(this._network.menu);
++ }
+ if (this._bluetooth) {
+ this.menu.addMenuItem(this._bluetooth.menu);
+ }
+diff --git a/js/ui/sessionMode.js b/js/ui/sessionMode.js
+index eb04c62..b882364 100644
+--- a/js/ui/sessionMode.js
++++ b/js/ui/sessionMode.js
+@@ -10,6 +10,8 @@ const FileUtils = imports.misc.fileUtils;
+ const Main = imports.ui.main;
+ const Params = imports.misc.params;
+
++const Config = imports.misc.config;
++
+ const DEFAULT_MODE = 'restrictive';
+
+ const _modes = {
+@@ -92,7 +94,10 @@ const _modes = {
+ isLocked: false,
+ isPrimary: true,
+ unlockDialog: imports.ui.unlockDialog.UnlockDialog,
+- components: ['networkAgent', 'polkitAgent', 'telepathyClient',
++ components: Config.HAVE_NETWORKMANAGER ?
++ ['networkAgent', 'polkitAgent', 'telepathyClient',
++ 'keyring', 'autorunManager', 'automountManager'] :
++ ['polkitAgent', 'telepathyClient',
+ 'keyring', 'autorunManager', 'automountManager'],
+ panel: {
+ left: ['activities', 'appMenu'],
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 8041052..b5da6aa 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -103,7 +103,6 @@ shell_public_headers_h = \
+ shell-invert-lightness-effect.h \
+ shell-keybinding-modes.h \
+ shell-mount-operation.h \
+- shell-network-agent.h \
+ shell-perf-log.h \
+ shell-screenshot.h \
+ shell-slicer.h \
+@@ -140,7 +139,6 @@ libgnome_shell_base_la_SOURCES = \
+ shell-menu-tracker.c \
+ shell-menu-tracker.h \
+ shell-mount-operation.c \
+- shell-network-agent.c \
+ shell-perf-log.c \
+ shell-polkit-authentication-agent.h \
+ shell-polkit-authentication-agent.c \
+@@ -175,6 +173,11 @@ libgnome_shell_sources = \
+
+ libgnome_shell_la_SOURCES = $(libgnome_shell_sources)
+
++if HAVE_NETWORKMANAGER
++libgnome_shell_la_SOURCES += shell-network-agent.c
++shell_public_headers_h += shell-network-agent.h
++endif
++
+ libgnome_shell_la_gir_sources = \
+ $(filter-out %-private.h $(shell_private_sources), $(shell_public_headers_h) $(libgnome_shell_base_la_SOURCES) $(libgnome_shell_sources))
+
+@@ -331,7 +334,10 @@ INTROSPECTION_GIRS += ShellMenu-0.1.gir
+ CLEANFILES += ShellMenu-0.1.gir
+
+ Shell-0.1.gir: gnome-shell St-1.0.gir ShellMenu-0.1.gir
+-Shell_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-3.0 TelepathyGLib-0.12 Soup-2.4 GMenu-3.0 NetworkManager-1.0 NMClient-1.0
++Shell_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-3.0 TelepathyGLib-0.12 Soup-2.4 GMenu-3.0
++if HAVE_NETWORKMANAGER
++Shell_0_1_gir_INCLUDES += NetworkManager-1.0 NMClient-1.0
++endif HAVE_NETWORKMANAGER
+ Shell_0_1_gir_CFLAGS = $(libgnome_shell_la_CPPFLAGS) -I $(srcdir)
+ # Hack! we use PROGRAM instead of LIBS so that the soname is not included
+ # in the typelib. This way the symbols will be resolved with the libgnome-shell
+--
+1.8.5.1
+
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.6.0-networkmanager-flag.patch b/gnome-base/gnome-shell/files/gnome-shell-3.6.0-networkmanager-flag.patch
deleted file mode 100644
index c996cc00..00000000
--- a/gnome-base/gnome-shell/files/gnome-shell-3.6.0-networkmanager-flag.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-From da0912a522f80a72db5b73504dc82941067880b2 Mon Sep 17 00:00:00 2001
-From: Michael Biebl <biebl@debian.org>
-Date: Thu, 22 Dec 2011 22:04:12 +0100
-Subject: [PATCH] Make NM optional
-
-[ Alexandre Rostovtsev <tetromino@gentoo.org> :
- * use config.js (and AC_SUBST HAVE_NETWORKMANAGER appropriately);
- * take care to not import ui.status.network if nm is disabled;
- * do not try to reassign to const variables;
- * no point really in fiddling with the list of installed js files;
- * don't build shell-mobile-providers if nm is disabled;
- * use "networkmanager" instead of "network_manager" because THE
- BIKESHED SHOULD BE BLUE, also because the upstream package name is
- NetworkManager, not Network_Manager. ]
----
- configure.ac | 47 ++++++++++++++++++++++++++++++++++++++++++++++-
- js/Makefile.am | 1 +
- js/misc/config.js.in | 2 ++
- js/ui/panel.js | 12 +++++++-----
- js/ui/sessionMode.js | 7 ++++++-
- src/Makefile.am | 17 ++++++++++++-----
- 6 files changed, 74 insertions(+), 12 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index e6ac88c..3ff8777 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -96,10 +96,43 @@ PKG_CHECK_MODULES(GNOME_SHELL, gio-unix-2.0 >= $GIO_MIN_VERSION
- telepathy-glib >= $TELEPATHY_GLIB_MIN_VERSION
- telepathy-logger-0.2 >= $TELEPATHY_LOGGER_MIN_VERSION
- polkit-agent-1 >= $POLKIT_MIN_VERSION xfixes
-- libnm-glib libnm-util gnome-keyring-1
-+ gnome-keyring-1
- gcr-3 >= $GCR_MIN_VERSION
- gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
-
-+##########################
-+# Check for NetworkManager
-+##########################
-+NM_MIN_VERSION=0.9
-+AC_ARG_ENABLE(networkmanager,
-+ AS_HELP_STRING([--disable-networkmanager],
-+ [disable NetworkManager support @<:@default=auto@:>@]),,
-+ [enable_networkmanager=auto])
-+
-+if test "x$enable_networkmanager" != "xno"; then
-+ PKG_CHECK_MODULES(NETWORKMANAGER,
-+ [libnm-glib libnm-util gnome-keyring-1],
-+ [have_networkmanager=yes],
-+ [have_networkmanager=no])
-+
-+ GNOME_SHELL_CFLAGS="$GNOME_SHELL_CFLAGS $NETWORKMANAGER_CFLAGS"
-+ GNOME_SHELL_LIBS="$GNOME_SHELL_LIBS $NETWORKMANAGER_LIBS"
-+else
-+ have_networkmanager="no (disabled)"
-+fi
-+
-+if test "x$have_networkmanager" = "xyes"; then
-+ AC_DEFINE(HAVE_NETWORKMANAGER, [1], [Define if we have NetworkManager])
-+ AC_SUBST([HAVE_NETWORKMANAGER], [1])
-+else
-+ if test "x$enable_networkmanager" = "xyes"; then
-+ AC_MSG_ERROR([Couldn't find NetworkManager.])
-+ fi
-+ AC_SUBST([HAVE_NETWORKMANAGER], [0])
-+fi
-+
-+AM_CONDITIONAL(HAVE_NETWORKMANAGER, test "$have_networkmanager" = "yes")
-+
- PKG_CHECK_MODULES(SHELL_PERF_HELPER, gtk+-3.0 gio-2.0)
-
- PKG_CHECK_MODULES(SHELL_HOTPLUG_SNIFFER, gio-2.0 gdk-pixbuf-2.0)
-@@ -260,3 +293,15 @@ AC_CONFIG_FILES([
- man/Makefile
- ])
- AC_OUTPUT
-+
-+echo "
-+Build configuration:
-+
-+ Prefix: ${prefix}
-+ Source code location: ${srcdir}
-+ Compiler: ${CC}
-+ Compiler Warnings: $enable_compile_warnings
-+
-+ Support for NetworkManager: $have_networkmanager
-+ Support for GStreamer recording: $build_recorder
-+"
-diff --git a/js/Makefile.am b/js/Makefile.am
-index a3e4917..4b00193 100644
---- a/js/Makefile.am
-+++ b/js/Makefile.am
-@@ -8,6 +8,7 @@ misc/config.js: misc/config.js.in Makefile
- sed -e "s|[@]PACKAGE_NAME@|$(PACKAGE_NAME)|g" \
- -e "s|[@]PACKAGE_VERSION@|$(PACKAGE_VERSION)|g" \
- -e "s|[@]HAVE_BLUETOOTH@|$(HAVE_BLUETOOTH)|g" \
-+ -e "s|[@]HAVE_NETWORKMANAGER@|$(HAVE_NETWORKMANAGER)|g" \
- -e "s|[@]GETTEXT_PACKAGE@|$(GETTEXT_PACKAGE)|g" \
- -e "s|[@]datadir@|$(datadir)|g" \
- -e "s|[@]libexecdir@|$(libexecdir)|g" \
-diff --git a/js/misc/config.js.in b/js/misc/config.js.in
-index 9769104..9c4795d 100644
---- a/js/misc/config.js.in
-+++ b/js/misc/config.js.in
-@@ -6,6 +6,8 @@ const PACKAGE_NAME = '@PACKAGE_NAME@';
- const PACKAGE_VERSION = '@PACKAGE_VERSION@';
- /* 1 if gnome-bluetooth is available, 0 otherwise */
- const HAVE_BLUETOOTH = @HAVE_BLUETOOTH@;
-+/* 1 if networkmanager is available, 0 otherwise */
-+const HAVE_NETWORKMANAGER = @HAVE_NETWORKMANAGER@;
- /* gettext package */
- const GETTEXT_PACKAGE = '@GETTEXT_PACKAGE@';
- /* locale dir */
-diff --git a/js/ui/panel.js b/js/ui/panel.js
-index bcbaafb..40c6ff9 100644
---- a/js/ui/panel.js
-+++ b/js/ui/panel.js
-@@ -910,11 +910,13 @@ if (Config.HAVE_BLUETOOTH)
- PANEL_ITEM_IMPLEMENTATIONS['bluetooth'] =
- imports.ui.status.bluetooth.Indicator;
-
--try {
-- PANEL_ITEM_IMPLEMENTATIONS['network'] =
-- imports.ui.status.network.NMApplet;
--} catch(e) {
-- log('NMApplet is not supported. It is possible that your NetworkManager version is too old');
-+if (Config.HAVE_NETWORKMANAGER) {
-+ try {
-+ PANEL_ITEM_IMPLEMENTATIONS['network'] =
-+ imports.ui.status.network.NMApplet;
-+ } catch(e) {
-+ log('NMApplet is not supported. It is possible that your NetworkManager version is too old');
-+ }
- }
-
- const Panel = new Lang.Class({
-diff --git a/js/ui/sessionMode.js b/js/ui/sessionMode.js
-index 808109a..7ee6b1e 100644
---- a/js/ui/sessionMode.js
-+++ b/js/ui/sessionMode.js
-@@ -6,6 +6,8 @@ const Signals = imports.signals;
- const Main = imports.ui.main;
- const Params = imports.misc.params;
-
-+const Config = imports.misc.config;
-+
- const DEFAULT_MODE = 'restrictive';
-
- const _modes = {
-@@ -91,7 +93,10 @@ const _modes = {
- isLocked: false,
- isPrimary: true,
- unlockDialog: imports.ui.unlockDialog.UnlockDialog,
-- components: ['networkAgent', 'polkitAgent', 'telepathyClient',
-+ components: Config.HAVE_NETWORKMANAGER ?
-+ ['networkAgent', 'polkitAgent', 'telepathyClient',
-+ 'keyring', 'recorder', 'autorunManager', 'automountManager'] :
-+ ['polkitAgent', 'telepathyClient',
- 'keyring', 'recorder', 'autorunManager', 'automountManager'],
- panel: {
- left: ['activities', 'appMenu'],
-diff --git a/src/Makefile.am b/src/Makefile.am
-index a390691..552b640 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -115,9 +115,7 @@ shell_public_headers_h = \
- shell-global.h \
- shell-idle-monitor.h \
- shell-invert-lightness-effect.h \
-- shell-mobile-providers.h \
- shell-mount-operation.h \
-- shell-network-agent.h \
- shell-perf-log.h \
- shell-screenshot.h \
- shell-screen-grabber.h \
-@@ -131,6 +129,10 @@ shell_public_headers_h = \
- shell-wm.h \
- shell-xfixes-cursor.h
-
-+if HAVE_NETWORKMANAGER
-+shell_public_headers_h += shell-mobile-providers.h shell-network-agent.h
-+endif
-+
- shell_private_sources = \
- gactionmuxer.h \
- gactionmuxer.c \
-@@ -162,9 +164,7 @@ libgnome_shell_la_SOURCES = \
- shell-invert-lightness-effect.c \
- shell-keyring-prompt.h \
- shell-keyring-prompt.c \
-- shell-mobile-providers.c \
- shell-mount-operation.c \
-- shell-network-agent.c \
- shell-perf-log.c \
- shell-polkit-authentication-agent.h \
- shell-polkit-authentication-agent.c \
-@@ -183,6 +183,10 @@ libgnome_shell_la_SOURCES = \
- shell-xfixes-cursor.c \
- $(NULL)
-
-+if HAVE_NETWORKMANAGER
-+libgnome_shell_la_SOURCES += shell-mobile-providers.c shell-network-agent.c
-+endif
-+
- libgnome_shell_la_gir_sources = \
- $(filter-out %-private.h $(shell_private_sources), $(shell_public_headers_h) $(libgnome_shell_la_SOURCES))
-
-@@ -296,7 +300,10 @@ libgnome_shell_la_LIBADD = \
- libgnome_shell_la_CPPFLAGS = $(gnome_shell_cflags)
-
- Shell-0.1.gir: libgnome-shell.la St-1.0.gir
--Shell_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-3.0 TelepathyGLib-0.12 TelepathyLogger-0.2 Soup-2.4 GMenu-3.0 NetworkManager-1.0 NMClient-1.0
-+Shell_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-3.0 TelepathyGLib-0.12 TelepathyLogger-0.2 Soup-2.4 GMenu-3.0
-+if HAVE_NETWORKMANAGER
-+Shell_0_1_gir_INCLUDES += NetworkManager-1.0 NMClient-1.0
-+endif
- Shell_0_1_gir_CFLAGS = $(libgnome_shell_la_CPPFLAGS) -I $(srcdir)
- Shell_0_1_gir_LIBS = libgnome-shell.la
- Shell_0_1_gir_FILES = $(libgnome_shell_la_gir_sources)
---
-1.7.12
-
diff --git a/gnome-base/gnome-shell/files/gnome-shell-defaults.patch b/gnome-base/gnome-shell/files/gnome-shell-defaults.patch
new file mode 100644
index 00000000..80634c10
--- /dev/null
+++ b/gnome-base/gnome-shell/files/gnome-shell-defaults.patch
@@ -0,0 +1,25 @@
+From 4fd7696fc9f392a11b91fa3fc7fe14ac7734ee62 Mon Sep 17 00:00:00 2001
+From: Gilles Dartiguelongue <eva@gentoo.org>
+Date: Tue, 10 Dec 2013 23:33:51 +0100
+Subject: [PATCH 1/3] Alter list of default applications
+
+---
+ data/org.gnome.shell.gschema.xml.in.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/org.gnome.shell.gschema.xml.in.in b/data/org.gnome.shell.gschema.xml.in.in
+index dc27e47..e8de0ed 100644
+--- a/data/org.gnome.shell.gschema.xml.in.in
++++ b/data/org.gnome.shell.gschema.xml.in.in
+@@ -22,7 +22,7 @@
+ </_description>
+ </key>
+ <key name="favorite-apps" type="as">
+- <default>[ 'epiphany.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'nautilus.desktop', 'gnome-documents.desktop' ]</default>
++ <default>[ 'chromium-browser-chromium.desktop', 'firefox.desktop', 'firefox-bin.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'libreoffice-writer.desktop', 'nautilus.desktop', 'gnome-documents.desktop' ]</default>
+ <_summary>List of desktop file IDs for favorite applications</_summary>
+ <_description>
+ The applications corresponding to these identifiers
+--
+1.8.5.1
+
diff --git a/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild
new file mode 100644
index 00000000..a86ab1fd
--- /dev/null
+++ b/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+PYTHON_COMPAT=( python2_{6,7} )
+
+inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
+
+DESCRIPTION="Provides core UI functions for the GNOME 3 desktop"
+HOMEPAGE="http://live.gnome.org/GnomeShell"
+
+LICENSE="GPL-2+ LGPL-2+"
+SLOT="0"
+IUSE="+bluetooth +i18n +networkmanager -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86"
+
+# libXfixes-5.0 needed for pointer barriers
+# FIXME:
+# * gstreamer support is currently automagic
+# * mutter/mutter-wayland support is automagic
+#
+# gnome-shell/gnome-control-center/mutter/gnome-settings-daemon better to be in sync for 3.8.3
+# https://mail.gnome.org/archives/gnome-announce-list/2013-June/msg00005.html
+COMMON_DEPEND="
+ app-crypt/libsecret
+ >=app-accessibility/at-spi2-atk-2.5.3
+ >=dev-libs/atk-2[introspection]
+ >=app-crypt/gcr-3.7.5[introspection]
+ >=dev-libs/glib-2.37:2
+ >=dev-libs/gjs-1.38.1
+ >=dev-libs/gobject-introspection-0.10.1
+ >=x11-libs/gtk+-3.7.9:3[introspection]
+ >=media-libs/clutter-1.13.4: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.7.4
+ >=gnome-base/gnome-keyring-3.3.90
+ >=gnome-base/gnome-menus-3.5.3:3[introspection]
+ gnome-base/libgnome-keyring
+ >=gnome-extra/evolution-data-server-3.5.3:=
+ >=media-libs/gstreamer-0.11.92:1.0
+ >=net-im/telepathy-logger-0.2.4[introspection]
+ >=net-libs/telepathy-glib-0.19[introspection]
+ >=sys-auth/polkit-0.100[introspection]
+ >=x11-libs/libXfixes-5.0
+ x11-libs/libXtst
+ >=x11-wm/mutter-3.10.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? ( >=net-misc/networkmanager-0.9.8[introspection] )
+"
+# Runtime-only deps are probably incomplete and approximate.
+# Introspection deps generated using:
+# grep -roe "imports.gi.*" gnome-shell-* | cut -f2 -d: | sort | uniq
+# Each block:
+# 1. Pull in polkit-0.101 for pretty authorization dialogs
+# 2. Introspection stuff needed via imports.gi.*
+# 3. gnome-session is needed for gnome-session-quit
+# 4. Control shell settings
+# 5. Systemd needed for suspending support
+# 6. xdg-utils needed for xdg-open, used by extension tool
+# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
+# 8. IBus is needed for i18n integration
+# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+RDEPEND="${COMMON_DEPEND}
+ >=sys-auth/polkit-0.101[introspection]
+
+ >=app-accessibility/caribou-0.4.8
+ >=gnome-base/gdm-3.5[introspection]
+ >=gnome-base/libgnomekbd-2.91.4[introspection]
+ media-libs/cogl[introspection]
+ >=sys-apps/accountsservice-0.6.14[introspection]
+ sys-power/upower[introspection]
+
+ >=gnome-base/gnome-session-2.91.91
+ >=gnome-base/gnome-settings-daemon-3.8.3
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?]
+
+ !openrc-force? ( >=sys-apps/systemd-31 )
+
+ x11-misc/xdg-utils
+
+ media-fonts/dejavu
+ x11-themes/gnome-icon-theme-symbolic
+
+ i18n? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
+ networkmanager? (
+ net-misc/mobile-broadband-provider-info
+ sys-libs/timezone-data )
+"
+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}-defaults.patch"
+
+ # Fix automagic gnome-bluetooth dep, bug #398145
+ epatch "${FILESDIR}/${PN}-3.10-bluetooth-flag.patch"
+
+ # Make networkmanager optional, bug #398593
+ epatch "${FILESDIR}/${PN}-3.10-networkmanager-flag.patch"
+
+ epatch_user
+
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # Do not error out on warnings
+ gnome2_src_configure \
+ --enable-man \
+ --disable-jhbuild-wrapper-script \
+ $(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"
+ elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
+ pax-mark m "${ED}usr/bin/gnome-shell"
+ fi
+ # Required for gnome-shell on hardened/PaX #457146 and #457194
+ # PaX EMUTRAMP need to be on
+ if has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
+ pax-mark E "${ED}usr/bin/gnome-shell"
+ fi
+}
+
+pkg_postinst() {
+ gnome2_pkg_postinst
+
+ if ! has_version 'media-libs/gst-plugins-good:1.0' || \
+ ! has_version 'media-plugins/gst-plugins-vpx:1.0'; then
+ ewarn "To make use of GNOME Shell's built-in screen recording utility,"
+ ewarn "you need to either install media-libs/gst-plugins-good:1.0"
+ ewarn "and media-plugins/gst-plugins-vpx:1.0, or use dconf-editor to change"
+ ewarn "apps.gnome-shell.recorder/pipeline to what you want to use."
+ fi
+
+ if ! has_version ">=x11-base/xorg-server-1.11"; then
+ ewarn "If you use multiple screens, it is highly recommended that you"
+ ewarn "upgrade to >=x11-base/xorg-server-1.11 to be able to make use of"
+ ewarn "pointer barriers which will make it easier to use hot corners."
+ fi
+
+ if has_version "<x11-drivers/ati-drivers-12"; then
+ ewarn "GNOME Shell has been reported to show graphical corruption under"
+ ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
+ ewarn "drivers."
+ fi
+
+ if has_version "media-libs/mesa[video_cards_radeon]" ||
+ has_version "media-libs/mesa[video_cards_r300]" ||
+ has_version "media-libs/mesa[video_cards_r600]"; then
+ elog "GNOME Shell is unstable under classic-mode r300/r600 mesa drivers."
+ elog "Make sure that gallium architecture for r300 and r600 drivers is"
+ elog "selected using 'eselect mesa'."
+ if ! has_version "media-libs/mesa[gallium]"; then
+ ewarn "You will need to emerge media-libs/mesa with USE=gallium."
+ fi
+ fi
+
+ if ! has_version "media-libs/mesa[llvm]"; then
+ elog "llvmpipe is used as fallback when no 3D acceleration"
+ elog "is available. You will need to enable llvm USE for"
+ elog "media-libs/mesa."
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "http://wiki.gentoo.org/wiki/Systemd"
+ fi
+
+ if use openrc-force; then
+ ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
+ ewarn "this can lead to unexpected problems and is not supported neither by"
+ ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
+ ewarn "you will need to disable this USE flag system wide and retest before"
+ ewarn "opening any bug report."
+ fi
+}
diff --git a/gnome-base/gnome-shell/gnome-shell-9999.ebuild b/gnome-base/gnome-shell/gnome-shell-9999.ebuild
index 43a95717..7a154ed8 100644
--- a/gnome-base/gnome-shell/gnome-shell-9999.ebuild
+++ b/gnome-base/gnome-shell/gnome-shell-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
@@ -7,7 +7,7 @@ GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
PYTHON_COMPAT=( python2_{6,7} )
-inherit autotools eutils gnome2 multilib pax-utils python-r1
+inherit autotools eutils gnome2 multilib pax-utils python-r1 systemd
if [[ ${PV} = 9999 ]]; then
inherit gnome2-live
fi
@@ -17,29 +17,35 @@ HOMEPAGE="http://live.gnome.org/GnomeShell"
LICENSE="GPL-2+ LGPL-2+"
SLOT="0"
-IUSE="+bluetooth +i18n +networkmanager systemd"
+IUSE="+bluetooth +i18n +networkmanager -openrc-force"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
if [[ ${PV} = 9999 ]]; then
KEYWORDS=""
else
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86"
fi
# libXfixes-5.0 needed for pointer barriers
-# TODO: gstreamer support is currently automagical:
-# gstreamer? ( >=media-libs/gstreamer-0.11.92 )
+# FIXME:
+# * gstreamer support is currently automagic
+# * mutter/mutter-wayland support is automagic
+#
+# gnome-shell/gnome-control-center/mutter/gnome-settings-daemon better to be in sync for 3.8.3
+# https://mail.gnome.org/archives/gnome-announce-list/2013-June/msg00005.html
COMMON_DEPEND="
+ app-crypt/libsecret
>=app-accessibility/at-spi2-atk-2.5.3
>=dev-libs/atk-2[introspection]
- >=app-crypt/gcr-3.3.90[introspection]
- >=dev-libs/glib-2.31.6:2
- >=dev-libs/gjs-1.33.2
+ >=app-crypt/gcr-3.7.5[introspection]
+ >=dev-libs/glib-2.37:2
+ >=dev-libs/gjs-1.38.1
>=dev-libs/gobject-introspection-0.10.1
- >=x11-libs/gtk+-3.3.9:3[introspection]
- >=media-libs/clutter-1.11.11:1.0[introspection]
+ >=x11-libs/gtk+-3.7.9:3[introspection]
+ >=media-libs/clutter-1.13.4:1.0[introspection]
>=dev-libs/json-glib-0.13.2
- >=dev-libs/libcroco-0.6.2:0.6
- >=gnome-base/gnome-desktop-3.5.1:3=[introspection]
- >=gnome-base/gsettings-desktop-schemas-3.5.4
+ >=dev-libs/libcroco-0.6.8:0.6
+ >=gnome-base/gnome-desktop-3.7.90:3=[introspection]
+ >=gnome-base/gsettings-desktop-schemas-3.7.4
>=gnome-base/gnome-keyring-3.3.90
>=gnome-base/gnome-menus-3.5.3:3[introspection]
gnome-base/libgnome-keyring
@@ -49,7 +55,8 @@ COMMON_DEPEND="
>=net-libs/telepathy-glib-0.19[introspection]
>=sys-auth/polkit-0.100[introspection]
>=x11-libs/libXfixes-5.0
- >=x11-wm/mutter-${PV}[introspection]
+ x11-libs/libXtst
+ >=x11-wm/mutter-3.10.1[introspection]
>=x11-libs/startup-notification-0.11
${PYTHON_DEPS}
@@ -58,18 +65,17 @@ COMMON_DEPEND="
dev-libs/dbus-glib
dev-libs/libxml2:2
gnome-base/librsvg
- media-libs/libcanberra
+ media-libs/libcanberra[gtk3]
media-libs/mesa
- media-sound/pulseaudio
- net-libs/libsoup:2.4[introspection]
+ >=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.5[introspection] )
- networkmanager? ( >=net-misc/networkmanager-0.8.999[introspection] )
- systemd? ( >=sys-apps/systemd-31 )
+ bluetooth? ( >=net-wireless/gnome-bluetooth-3.9[introspection] )
+ networkmanager? ( >=net-misc/networkmanager-0.9.8[introspection] )
"
# Runtime-only deps are probably incomplete and approximate.
# Introspection deps generated using:
@@ -79,14 +85,15 @@ COMMON_DEPEND="
# 2. Introspection stuff needed via imports.gi.*
# 3. gnome-session is needed for gnome-session-quit
# 4. Control shell settings
-# 5. xdg-utils needed for xdg-open, used by extension tool
-# 6. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
-# 7. IBus is needed for i18n integration
-# 8. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
+# 5. Systemd needed for suspending support
+# 6. xdg-utils needed for xdg-open, used by extension tool
+# 7. gnome-icon-theme-symbolic and dejavu font neeed for various icons & arrows
+# 8. IBus is needed for i18n integration
+# 9. mobile-broadband-provider-info, timezone-data for shell-mobile-providers.c
RDEPEND="${COMMON_DEPEND}
>=sys-auth/polkit-0.101[introspection]
- >=app-accessibility/caribou-0.3
+ >=app-accessibility/caribou-0.4.8
>=gnome-base/gdm-3.5[introspection]
>=gnome-base/libgnomekbd-2.91.4[introspection]
media-libs/cogl[introspection]
@@ -94,38 +101,43 @@ RDEPEND="${COMMON_DEPEND}
sys-power/upower[introspection]
>=gnome-base/gnome-session-2.91.91
- >=gnome-base/gnome-settings-daemon-2.91
- >=gnome-base/gnome-control-center-2.91.92-r1[bluetooth(+)?]
+ >=gnome-base/gnome-settings-daemon-3.8.3
+ >=gnome-base/gnome-control-center-3.8.3[bluetooth(+)?]
+
+ !openrc-force? ( >=sys-apps/systemd-31 )
x11-misc/xdg-utils
media-fonts/dejavu
x11-themes/gnome-icon-theme-symbolic
- i18n? ( >=app-i18n/ibus-1.4.99[dconf,gtk3,introspection] )
+ i18n? ( >=app-i18n/ibus-1.4.99[dconf(+),gtk3,introspection] )
networkmanager? (
net-misc/mobile-broadband-provider-info
sys-libs/timezone-data )
-
- !systemd? ( sys-auth/consolekit )
"
DEPEND="${COMMON_DEPEND}
dev-libs/libxslt
>=dev-util/gtk-doc-am-1.17
>=dev-util/intltool-0.40
gnome-base/gnome-common
- >=sys-devel/gettext-0.17
virtual/pkgconfig
- !!=dev-lang/spidermonkey-1.8.2*"
+ !!=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}-defaults.patch"
+
# Fix automagic gnome-bluetooth dep, bug #398145
- epatch "${FILESDIR}/${PN}-3.5.x-bluetooth-flag.patch"
+ epatch "${FILESDIR}/${PN}-3.10-bluetooth-flag.patch"
# Make networkmanager optional, bug #398593
- epatch "${FILESDIR}/${PN}-3.6.0-networkmanager-flag.patch"
+ epatch "${FILESDIR}/${PN}-3.10-networkmanager-flag.patch"
+
+ epatch_user
[[ ${PV} != 9999 ]] && eautoreconf
gnome2_src_prepare
@@ -133,15 +145,12 @@ src_prepare() {
src_configure() {
# Do not error out on warnings
- G2CONF="${G2CONF}
- --enable-man
- --enable-compile-warnings=maximum
- --disable-jhbuild-wrapper-script
- $(use_with bluetooth)
- $(use_enable networkmanager)
- $(use_with systemd)
- BROWSER_PLUGIN_DIR=${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins"
- gnome2_src_configure
+ gnome2_src_configure \
+ --enable-man \
+ --disable-jhbuild-wrapper-script \
+ $(use_with bluetooth) \
+ $(use_enable networkmanager) \
+ BROWSER_PLUGIN_DIR="${EPREFIX}"/usr/$(get_libdir)/nsbrowser/plugins
}
src_install() {
@@ -156,6 +165,11 @@ src_install() {
elif has_version '>=dev-lang/spidermonkey-1.8.7[jit]'; then
pax-mark m "${ED}usr/bin/gnome-shell"
fi
+ # Required for gnome-shell on hardened/PaX #457146 and #457194
+ # PaX EMUTRAMP need to be on
+ if has_version '>=dev-libs/libffi-3.0.13[pax_kernel]'; then
+ pax-mark E "${ED}usr/bin/gnome-shell"
+ fi
}
pkg_postinst() {
@@ -177,8 +191,8 @@ pkg_postinst() {
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 use GNOME in"
- ewarn "fallback mode, or switch to open-source drivers."
+ ewarn "x11-drivers/ati-drivers-11.*; you may want to switch to open-source"
+ ewarn "drivers."
fi
if has_version "media-libs/mesa[video_cards_radeon]" ||
@@ -192,14 +206,23 @@ pkg_postinst() {
fi
fi
- if has_version "media-libs/mesa[video_cards_intel]" ||
- has_version "media-libs/mesa[video_cards_i915]" ||
- has_version "media-libs/mesa[video_cards_i965]"; then
- elog "GNOME Shell is unstable under gallium-mode i915/i965 mesa drivers."
- elog "Make sure that classic architecture for i915 and i965 drivers is"
- elog "selected using 'eselect mesa'."
- if ! has_version "media-libs/mesa[classic]"; then
- ewarn "You will need to emerge media-libs/mesa with USE=classic."
- fi
+ if ! has_version "media-libs/mesa[llvm]"; then
+ elog "llvmpipe is used as fallback when no 3D acceleration"
+ elog "is available. You will need to enable llvm USE for"
+ elog "media-libs/mesa."
+ fi
+
+ if ! systemd_is_booted; then
+ ewarn "${PN} needs Systemd to be *running* for working"
+ ewarn "properly. Please follow this guide to migrate:"
+ ewarn "http://wiki.gentoo.org/wiki/Systemd"
+ fi
+
+ if use openrc-force; then
+ ewarn "You are enabling 'openrc-force' USE flag to skip systemd requirement,"
+ ewarn "this can lead to unexpected problems and is not supported neither by"
+ ewarn "upstream neither by Gnome Gentoo maintainers. If you suffer any problem,"
+ ewarn "you will need to disable this USE flag system wide and retest before"
+ ewarn "opening any bug report."
fi
}
diff --git a/gnome-base/gnome-shell/metadata.xml b/gnome-base/gnome-shell/metadata.xml
index 68a012a9..c2ad0702 100644
--- a/gnome-base/gnome-shell/metadata.xml
+++ b/gnome-base/gnome-shell/metadata.xml
@@ -4,8 +4,10 @@
<herd>gnome</herd>
<use>
<flag name="i18n">Enable support for enhanced input methods through
- <pkg>app-i18n/ibus</pkg></flag>
- <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> instead of
- <pkg>sys-auth/consolekit</pkg> for session tracking</flag>
+ <pkg>app-i18n/ibus</pkg></flag>
+ <flag name="openrc-force">Skip systemd dependency (#480336),
+ enabling this flag will become your setup to be fully
+ unsupported by upstream and downstream Gnome team. Do not
+ try to enable it unless completely needed</flag>
</use>
</pkgmetadata>