diff options
author | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-05-14 00:04:36 +0000 |
---|---|---|
committer | Alexandre Rostovtsev <tetromino@gentoo.org> | 2012-05-14 00:04:36 +0000 |
commit | e11d7ac85c662a23f217c22409652b1e0a91b735 (patch) | |
tree | b51f7e432efe9c50fba550c7de876d26753b4230 /gnome-base/gnome-shell | |
parent | Version bump for gnome-3.4; now uses gsettings instead of gconf. Drop old. (diff) | |
download | gentoo-2-e11d7ac85c662a23f217c22409652b1e0a91b735.tar.gz gentoo-2-e11d7ac85c662a23f217c22409652b1e0a91b735.tar.bz2 gentoo-2-e11d7ac85c662a23f217c22409652b1e0a91b735.zip |
Version bump for gnome-3.4 with lots of changes. Drop old.
(Portage version: 2.2.0_alpha104/cvs/Linux x86_64)
Diffstat (limited to 'gnome-base/gnome-shell')
-rw-r--r-- | gnome-base/gnome-shell/ChangeLog | 12 | ||||
-rw-r--r-- | gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-1.patch | 30 | ||||
-rw-r--r-- | gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-2.patch | 43 | ||||
-rw-r--r-- | gnome-base/gnome-shell/files/gnome-shell-3.4.0-optional-networkmanager.patch | 220 | ||||
-rw-r--r-- | gnome-base/gnome-shell/gnome-shell-3.4.1.ebuild (renamed from gnome-base/gnome-shell/gnome-shell-3.2.1-r3.ebuild) | 76 | ||||
-rw-r--r-- | gnome-base/gnome-shell/metadata.xml | 4 |
6 files changed, 349 insertions, 36 deletions
diff --git a/gnome-base/gnome-shell/ChangeLog b/gnome-base/gnome-shell/ChangeLog index 1af244de1b22..bf445875ac9a 100644 --- a/gnome-base/gnome-shell/ChangeLog +++ b/gnome-base/gnome-shell/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for gnome-base/gnome-shell # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-shell/ChangeLog,v 1.12 2012/05/05 05:38:12 jdhore Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-shell/ChangeLog,v 1.13 2012/05/14 00:04:36 tetromino Exp $ + +*gnome-shell-3.4.1 (14 May 2012) + + 14 May 2012; Alexandre Rostovtsev <tetromino@gentoo.org> + -gnome-shell-3.2.1-r3.ebuild, + +files/gnome-shell-3.4.0-libgnome-shell-js.so-link-1.patch, + +files/gnome-shell-3.4.0-libgnome-shell-js.so-link-2.patch, + +files/gnome-shell-3.4.0-optional-networkmanager.patch, + +gnome-shell-3.4.1.ebuild, metadata.xml: + Version bump for gnome-3.4 with lots of changes. Drop old. 05 May 2012; Jeff Horelick <jdhore@gentoo.org> gnome-shell-3.2.1-r3.ebuild, gnome-shell-3.2.2.1.ebuild: diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-1.patch b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-1.patch new file mode 100644 index 000000000000..9f07884a351f --- /dev/null +++ b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-1.patch @@ -0,0 +1,30 @@ +From 73f565d27166420bbf4a7bb49a30ea5bf5d98566 Mon Sep 17 00:00:00 2001 +From: "Owen W. Taylor" <otaylor@fishsoup.net> +Date: Wed, 4 Apr 2012 17:48:47 -0400 +Subject: [PATCH] Link the gnome-shell binary to libgnome-shell-js.so + +Depending on the exact linker options and versions, rpath's written +into the binary may, or may not, be honored by dlopen(). Work around +this by simply linking the gnome-shell binary to gnome-shell-js, since +then dlopen() doesn't need to search paths. + +https://bugzilla.gnome.org/show_bug.cgi?id=670477 +--- + src/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile.am b/src/Makefile.am +index 95f1a41..7bafb6a 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -187,7 +187,7 @@ libgnome_shell_la_gir_sources = \ + gnome_shell_real_SOURCES = \ + main.c + gnome_shell_real_CPPFLAGS = $(gnome_shell_cflags) +-gnome_shell_real_LDADD = libgnome-shell.la $(libgnome_shell_la_LIBADD) ++gnome_shell_real_LDADD = libgnome-shell.la libgnome-shell-js.la $(libgnome_shell_la_LIBADD) + gnome_shell_real_DEPENDENCIES = libgnome-shell.la + + EXTRA_DIST += test-gapplication.js +-- +1.7.9.3
\ No newline at end of file diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-2.patch b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-2.patch new file mode 100644 index 000000000000..718eb3055a88 --- /dev/null +++ b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-libgnome-shell-js.so-link-2.patch @@ -0,0 +1,43 @@ +From 6fa762baaee77c9d1a8aacc758ab5c3c3c33df43 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Fri, 6 Apr 2012 14:00:48 -0400 +Subject: [PATCH] Prevent the link to libgnome-shell-js.so from being removed + +Add a dummy call to shell_js_add_extension_importer() to ensure that the +link to libgnome-shell-js.so is not removed when using -Wl,--as-needed, +which is the default on many distros. +--- + src/main.c | 13 +++++++++++++ + 1 files changed, 13 insertions(+), 0 deletions(-) + +diff --git a/src/main.c b/src/main.c +index bac9524..c11c8d7 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -24,6 +24,7 @@ + #include "shell-a11y.h" + #include "shell-global.h" + #include "shell-global-private.h" ++#include "shell-js.h" + #include "shell-perf-log.h" + #include "st.h" + +@@ -342,3 +343,15 @@ main (int argc, char **argv) + + return ecode; + } ++ ++/* HACK: ++ Add a dummy function that calls into libgnome-shell-js.so to ensure it's ++ linked to /usr/bin/gnome-shell even when linking with --as-needed. ++ This function is never actually called. ++ https://bugzilla.gnome.org/show_bug.cgi?id=670477 ++*/ ++ ++void _shell_link_to_shell_js(void) { ++ shell_js_add_extension_importer (NULL, NULL, NULL, NULL); ++} ++ +-- +1.7.8.5 + diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.4.0-optional-networkmanager.patch b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-optional-networkmanager.patch new file mode 100644 index 000000000000..ee9d0af7d249 --- /dev/null +++ b/gnome-base/gnome-shell/files/gnome-shell-3.4.0-optional-networkmanager.patch @@ -0,0 +1,220 @@ +From 411d751935c9bdc485b113678284edf0cc9e545e 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/main.js | 8 ++++++-- + js/ui/panel.js | 3 ++- + src/Makefile.am | 17 ++++++++++++----- + 6 files changed, 69 insertions(+), 9 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c6ad636..f228ebd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -94,9 +94,42 @@ 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) + ++########################## ++# 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) +@@ -289,3 +322,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 e7751cc..5eb4c18 100644 +--- a/js/Makefile.am ++++ b/js/Makefile.am +@@ -8,6 +8,7 @@ misc/config.js: misc/config.js.in Makefile + -e "s|[@]PACKAGE_VERSION@|$(PACKAGE_VERSION)|g" \ + -e "s|[@]GJS_VERSION@|$(GJS_VERSION)|g" \ + -e "s|[@]HAVE_BLUETOOTH@|$(HAVE_BLUETOOTH)|g" \ ++ -e "s|[@]HAVE_NETWORKMANAGER@|$(HAVE_NETWORKMANAGER)|g" \ + -e "s|[@]SHELL_SYSTEM_CA_FILE@|$(SHELL_SYSTEM_CA_FILE)|g" \ + -e "s|[@]GETTEXT_PACKAGE@|$(GETTEXT_PACKAGE)|g" \ + -e "s|[@]datadir@|$(datadir)|g" \ +diff --git a/js/misc/config.js.in b/js/misc/config.js.in +index 4a0db16..3df3394 100644 +--- a/js/misc/config.js.in ++++ b/js/misc/config.js.in +@@ -8,6 +8,8 @@ const PACKAGE_VERSION = '@PACKAGE_VERSION@'; + const GJS_VERSION = '@GJS_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@; + /* The system TLS CA list */ + const SHELL_SYSTEM_CA_FILE = '@SHELL_SYSTEM_CA_FILE@'; + /* gettext package */ +diff --git a/js/ui/main.js b/js/ui/main.js +index ac9330c..7ca91ee 100644 +--- a/js/ui/main.js ++++ b/js/ui/main.js +@@ -12,6 +12,7 @@ const St = imports.gi.St; + + const AutomountManager = imports.ui.automountManager; + const AutorunManager = imports.ui.autorunManager; ++const Config = imports.misc.config; + const CtrlAltTab = imports.ui.ctrlAltTab; + const EndSessionDialog = imports.ui.endSessionDialog; + const PolkitAuthenticationAgent = imports.ui.polkitAuthenticationAgent; +@@ -26,7 +27,7 @@ const PlaceDisplay = imports.ui.placeDisplay; + const RunDialog = imports.ui.runDialog; + const Layout = imports.ui.layout; + const LookingGlass = imports.ui.lookingGlass; +-const NetworkAgent = imports.ui.networkAgent; ++const NetworkAgent = Config.HAVE_NETWORKMANAGER ? imports.ui.networkAgent : null; + const NotificationDaemon = imports.ui.notificationDaemon; + const WindowAttentionHandler = imports.ui.windowAttentionHandler; + const Scripting = imports.ui.scripting; +@@ -85,7 +86,10 @@ function _createUserSession() { + telepathyClient = new TelepathyClient.Client(); + automountManager = new AutomountManager.AutomountManager(); + autorunManager = new AutorunManager.AutorunManager(); +- networkAgent = new NetworkAgent.NetworkAgent(); ++ if (Config.HAVE_NETWORKMANAGER) { ++ networkAgent = new NetworkAgent.NetworkAgent(); ++ } ++ + } + + function _createGDMSession() { +diff --git a/js/ui/panel.js b/js/ui/panel.js +index 329f118..865ce05 100644 +--- a/js/ui/panel.js ++++ b/js/ui/panel.js +@@ -45,7 +45,8 @@ if (Config.HAVE_BLUETOOTH) + STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION['bluetooth'] = imports.ui.status.bluetooth.Indicator; + + try { +- STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION['network'] = imports.ui.status.network.NMApplet; ++ if (Config.HAVE_NETWORKMANAGER) ++ STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION['network'] = imports.ui.status.network.NMApplet; + } catch(e) { + log('NMApplet is not supported. It is possible that your NetworkManager version is too old'); + } +diff --git a/src/Makefile.am b/src/Makefile.am +index 95f1a41..637455e 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -110,9 +110,7 @@ shell_public_headers_h = \ + shell-gtk-embed.h \ + shell-global.h \ + shell-idle-monitor.h \ +- shell-mobile-providers.h \ + shell-mount-operation.h \ +- shell-network-agent.h \ + shell-perf-log.h \ + shell-screenshot.h \ + shell-screen-grabber.h \ +@@ -134,6 +132,10 @@ shell_private_sources = \ + gactionobserver.h \ + gactionobserver.c + ++if HAVE_NETWORKMANAGER ++shell_public_headers_h += shell-mobile-providers.h shell-network-agent.h ++endif ++ + libgnome_shell_la_SOURCES = \ + $(shell_built_sources) \ + $(shell_public_headers_h) \ +@@ -159,9 +161,7 @@ libgnome_shell_la_SOURCES = \ + shell-idle-monitor.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 \ +@@ -181,6 +181,10 @@ libgnome_shell_la_SOURCES = \ + $(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 Folks-0.6 ++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 Folks-0.6 ++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.8.5 + diff --git a/gnome-base/gnome-shell/gnome-shell-3.2.1-r3.ebuild b/gnome-base/gnome-shell/gnome-shell-3.4.1.ebuild index bff6bf927363..8f6a90d56efa 100644 --- a/gnome-base/gnome-shell/gnome-shell-3.2.1-r3.ebuild +++ b/gnome-base/gnome-shell/gnome-shell-3.4.1.ebuild @@ -1,69 +1,66 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.2.1-r3.ebuild,v 1.4 2012/05/05 05:38:12 jdhore Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.4.1.ebuild,v 1.1 2012/05/14 00:04:36 tetromino Exp $ EAPI="4" GCONF_DEBUG="no" GNOME2_LA_PUNT="yes" PYTHON_DEPEND="2:2.5" -inherit autotools eutils gnome2 multilib python +inherit autotools eutils gnome2 multilib pax-utils python DESCRIPTION="Provides core UI functions for the GNOME 3 desktop" HOMEPAGE="http://live.gnome.org/GnomeShell" -SRC_URI="${SRC_URI} - http://dev.gentoo.org/~tetromino/distfiles/${PN}/${P}-patches-1.tar.xz" - LICENSE="GPL-2" SLOT="0" -IUSE="+bluetooth +networkmanager" +IUSE="+bluetooth +networkmanager systemd" KEYWORDS="~amd64 ~x86" # gnome-desktop-2.91.2 is needed due to header changes, db82a33 in gnome-desktop -# latest gsettings-desktop-schemas is needed due to commit 602fa1c6 # latest g-c-c is needed due to https://bugs.gentoo.org/show_bug.cgi?id=360057 # libXfixes-5.0 needed for pointer barriers -COMMON_DEPEND=">=dev-libs/glib-2.25.9:2 - >=dev-libs/gjs-1.29.18 +COMMON_DEPEND=">=app-crypt/gcr-3.3.90[introspection] + >=dev-libs/glib-2.31.6:2 + >=dev-libs/gjs-1.31.22 >=dev-libs/gobject-introspection-0.10.1 - x11-libs/gdk-pixbuf:2[introspection] - >=x11-libs/gtk+-3.0.0:3[introspection] - >=media-libs/clutter-1.7.5:1.0[introspection] - app-misc/ca-certificates + >=x11-libs/gtk+-3.3.9:3[introspection] + >=media-libs/clutter-1.9.16:1.0[introspection] >=dev-libs/folks-0.5.2 >=dev-libs/json-glib-0.13.2 + >=dev-libs/libcroco-0.6.2:0.6 >=gnome-base/gnome-desktop-2.91.2:3 >=gnome-base/gsettings-desktop-schemas-2.91.91 + >=gnome-base/gnome-keyring-3.3.90 + >=gnome-base/gnome-menus-2.29.10:3[introspection] + gnome-base/libgnome-keyring >=gnome-extra/evolution-data-server-2.91.6 >=media-libs/gstreamer-0.10.16:0.10 >=media-libs/gst-plugins-base-0.10.16:0.10 >=net-im/telepathy-logger-0.2.4[introspection] - net-libs/libsoup:2.4[introspection] - >=net-libs/telepathy-glib-0.15.5[introspection] + >=net-libs/telepathy-glib-0.17.5[introspection] >=sys-auth/polkit-0.100[introspection] - >=x11-wm/mutter-3.2.1[introspection] + >=x11-libs/libXfixes-5.0 + >=x11-wm/mutter-3.4.1[introspection] + >=x11-libs/startup-notification-0.11 + app-misc/ca-certificates dev-libs/dbus-glib dev-libs/libxml2:2 - x11-libs/pango[introspection] - >=dev-libs/libcroco-0.6.2:0.6 - - gnome-base/gconf:2[introspection] - >=gnome-base/gnome-menus-2.29.10:3[introspection] gnome-base/librsvg media-libs/libcanberra + media-libs/mesa media-sound/pulseaudio - - >=x11-libs/startup-notification-0.11 + net-libs/libsoup:2.4[introspection] x11-libs/libX11 - >=x11-libs/libXfixes-5.0 + x11-libs/gdk-pixbuf:2[introspection] + x11-libs/pango[introspection] x11-apps/mesa-progs bluetooth? ( >=net-wireless/gnome-bluetooth-3.1.0[introspection] ) - networkmanager? ( - gnome-base/libgnome-keyring - >=net-misc/networkmanager-0.8.999[introspection] )" + networkmanager? ( >=net-misc/networkmanager-0.8.999[introspection] ) + systemd? ( >=sys-apps/systemd-31 ) +" # Runtime-only deps are probably incomplete and approximate. # Each block: # 1. Pull in polkit-0.101 for pretty authorization dialogs @@ -86,7 +83,7 @@ RDEPEND="${COMMON_DEPEND} >=gnome-base/gnome-session-2.91.91 >=gnome-base/gnome-settings-daemon-2.91 - >=gnome-base/gnome-control-center-2.91.92-r1 + >=gnome-base/gnome-control-center-2.91.92-r1[bluetooth(+)?] >=sys-apps/accountsservice-0.6.14[introspection] @@ -98,12 +95,15 @@ RDEPEND="${COMMON_DEPEND} networkmanager? ( net-misc/mobile-broadband-provider-info - sys-libs/timezone-data )" + sys-libs/timezone-data ) + + !systemd? ( sys-auth/consolekit ) +" DEPEND="${COMMON_DEPEND} >=sys-devel/gettext-0.17 - virtual/pkgconfig >=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 @@ -117,6 +117,7 @@ pkg_setup() { --disable-jhbuild-wrapper-script $(use_with bluetooth) $(use_enable networkmanager) + $(use_with systemd) --with-ca-certificates=${EPREFIX}/etc/ssl/certs/ca-certificates.crt BROWSER_PLUGIN_DIR=${EPREFIX}/usr/$(get_libdir)/nsbrowser/plugins" python_set_active_version 2 @@ -124,14 +125,15 @@ pkg_setup() { } src_prepare() { - # Useful patches from git master (not in gnome-3-2 branch yet) - epatch ../patch/*.patch - # Fix automagic gnome-bluetooth dep, bug #398145 epatch "${FILESDIR}/${PN}-3.2.1-automagic-gnome-bluetooth.patch" # Make networkmanager optional, bug #398593 - epatch "${FILESDIR}/${PN}-3.2.1-optional-networkmanager.patch" + epatch "${FILESDIR}/${PN}-3.4.0-optional-networkmanager.patch" + + # Force /usr/bin/gnome-shell to link to libgnome-shell-js; fixes extensions + # https://bugzilla.gnome.org/show_bug.cgi?id=670477 + epatch "${FILESDIR}/${PN}-3.4.0-libgnome-shell-js.so-link"-{1,2}.patch eautoreconf gnome2_src_prepare @@ -144,11 +146,15 @@ src_prepare() { src_install() { gnome2_src_install - python_convert_shebangs 2 "${D}"/usr/bin/gnome-shell-extension-tool + python_convert_shebangs 2 "${ED}/usr/bin/gnome-shell-extension-tool" + + # Required for gnome-shell on hardened/PaX, bug #398941 + pax-mark mr "${ED}usr/bin/gnome-shell" } pkg_postinst() { gnome2_pkg_postinst + if ! has_version '>=media-libs/gst-plugins-good-0.10.23' || \ ! has_version 'media-plugins/gst-plugins-vp8'; then ewarn "To make use of GNOME Shell's built-in screen recording utility," diff --git a/gnome-base/gnome-shell/metadata.xml b/gnome-base/gnome-shell/metadata.xml index da6fd63d0085..ce772740cdd1 100644 --- a/gnome-base/gnome-shell/metadata.xml +++ b/gnome-base/gnome-shell/metadata.xml @@ -2,4 +2,8 @@ <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <herd>gnome</herd> +<use> + <flag name="systemd">Use <pkg>sys-apps/systemd</pkg> instead of + <pkg>sys-auth/consolekit</pkg> for session tracking</flag> +</use> </pkgmetadata> |