Permalink
Browse files

Added gnome-panel ebuild to remove main menu arrow.

  • Loading branch information...
1 parent 6f3a623 commit dd59f116bb98be398bb2010bbe73ddbec8eae9f0 @eyolfson committed Mar 31, 2010
View
5 gnome-base/gnome-panel/Manifest
@@ -0,0 +1,5 @@
+AUX gnome-panel-2.28.0-clock-applet-missing-cflags.patch 717 RMD160 86c10077d3425fe805487b8d78824c8eedfc098f SHA1 b3ee6c26026154cc33c264d184934e165e2cb2b2 SHA256 b06a7a256828a0797ff18d308770cc401aa2c350aa2a2baf34fb5b9a0da8e85d
+AUX gnome-panel-2.28.0-crashes-xrandr.patch 2975 RMD160 ed032a27c2d36043158755274e321b1c5bef24b8 SHA1 edd96e390506fd04b7ceb8e1df9e59fdfee6b616 SHA256 8fb24923d7a6eacc6ff27178bde2a893f05cc5174a51332830ad376750646aa7
+AUX gnome-panel-2.28.0-remove-main-menu-arrow.patch 820 RMD160 7531327e6c6ab1f031047ddeea0d95e4e908e4c9 SHA1 bd95e783d32b407603822b542e182720c46ec6b8 SHA256 8bd3b28d363e397e9fcc2c9202de59a2634ba95bb7b1bc4a548fed27828613d0
+DIST gnome-panel-2.28.0.tar.bz2 2976766 RMD160 b3c2025b47b9d6c74aba0a2961394d94f59c4381 SHA1 667975e0f269b6b3320c04bd1bd705378c0f4927 SHA256 c1168c0c8f84692002557d60870c782f4831635080d2c52cd2a3665fb7718465
+EBUILD gnome-panel-2.28.0.ebuild 3128 RMD160 868c12f2972d440e592be80d87c2fe65bd577048 SHA1 f7259e04b0d0659e682269ef1c4cc79e0e5f8dba SHA256 d1a4709b7065413f32c20eb26bd2e4932d4447ef301f37bed254d678057dbbc6
View
24 gnome-base/gnome-panel/files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch
@@ -0,0 +1,24 @@
+From a2cb0e91f58b22832f4efc51acf1d1dd3efb6969 Mon Sep 17 00:00:00 2001
+From: Maxim Britov <maxim@office.modum.by>
+Date: Tue, 6 Oct 2009 19:16:51 +0200
+Subject: [PATCH] Fix missing $(PANEL_CFLAGS) for clock applet
+
+---
+ applets/clock/Makefile.am | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/applets/clock/Makefile.am b/applets/clock/Makefile.am
+index da5e0d9..a9b95f9 100644
+--- a/applets/clock/Makefile.am
++++ b/applets/clock/Makefile.am
+@@ -8,6 +8,7 @@ INCLUDES = \
+ $(WARN_CFLAGS) \
+ $(CLOCK_CFLAGS) \
+ $(POLKIT_CFLAGS) \
++ $(PANEL_CFLAGS) \
+ $(LIBPANEL_APPLET_CFLAGS) \
+ -DDATADIR=\""$(datadir)"\" \
+ -DBUILDERDIR=\""$(uidir)"\" \
+--
+1.6.5.rc2
+
View
79 gnome-base/gnome-panel/files/gnome-panel-2.28.0-crashes-xrandr.patch
@@ -0,0 +1,79 @@
+From 66b8e290bd0b767183cba583917907940b5b425a Mon Sep 17 00:00:00 2001
+From: Vincent Untz <vuntz@gnome.org>
+Date: Tue, 06 Oct 2009 10:47:52 +0000
+Subject: [panel] Fix crashes in various conditions with the new randr code
+
+If nothing had probed the randr screen resources before us and the X
+server is supporting randr 1.3, then we got no output, and therefore no
+monitor. The fix here is to actively probe for resources if we detect
+this case. See https://bugzilla.gnome.org/show_bug.cgi?id=597101
+
+Also, in some cases, all outputs appear disconnected. See
+https://bugzilla.novell.com/show_bug.cgi?id=543876
+
+To be completely on the safe side, if we get no monitor information from
+randr, even if it is successful, we fallback to the GTK+ method.
+---
+diff --git a/gnome-panel/panel-multiscreen.c b/gnome-panel/panel-multiscreen.c
+index 8a05221..4ed76ae 100644
+--- a/gnome-panel/panel-multiscreen.c
++++ b/gnome-panel/panel-multiscreen.c
+@@ -136,9 +136,17 @@ panel_multiscreen_get_randr_monitors_for_screen (GdkScreen *screen,
+ xroot = GDK_WINDOW_XWINDOW (gdk_screen_get_root_window (screen));
+
+ #if (RANDR_MAJOR > 1 || (RANDR_MAJOR == 1 && RANDR_MINOR >= 3))
+- if (have_randr_1_3)
++ if (have_randr_1_3) {
+ resources = XRRGetScreenResourcesCurrent (xdisplay, xroot);
+- else
++ if (resources->noutput == 0) {
++ /* This might happen if nothing tried to get randr
++ * resources from the server before, so we need an
++ * active probe. See comment #27 in
++ * https://bugzilla.gnome.org/show_bug.cgi?id=597101 */
++ XRRFreeScreenResources (resources);
++ resources = XRRGetScreenResources (xdisplay, xroot);
++ }
++ } else
+ resources = XRRGetScreenResources (xdisplay, xroot);
+ #else
+ resources = XRRGetScreenResources (xdisplay, xroot);
+@@ -205,6 +213,17 @@ panel_multiscreen_get_randr_monitors_for_screen (GdkScreen *screen,
+ return FALSE;
+ }
+
++ if (geometries->len == 0) {
++ /* This can happen in at least one case:
++ * https://bugzilla.novell.com/show_bug.cgi?id=543876 where all
++ * monitors appear disconnected (possibly because the screen
++ * is behing a KVM switch) -- see comment #8.
++ * There might be other cases too, so we stay on the safe side.
++ */
++ g_array_free (geometries, TRUE);
++ return FALSE;
++ }
++
+ *monitors_ret = geometries->len;
+ *geometries_ret = (GdkRectangle *) g_array_free (geometries, FALSE);
+
+@@ -238,9 +257,15 @@ panel_multiscreen_get_raw_monitors_for_screen (GdkScreen *screen,
+ int *monitors_ret,
+ GdkRectangle **geometries_ret)
+ {
+- if (panel_multiscreen_get_randr_monitors_for_screen (screen,
+- monitors_ret,
+- geometries_ret))
++ gboolean res;
++
++ *monitors_ret = 0;
++ *geometries_ret = NULL;
++
++ res = panel_multiscreen_get_randr_monitors_for_screen (screen,
++ monitors_ret,
++ geometries_ret);
++ if (res && *monitors_ret > 0)
+ return;
+
+ panel_multiscreen_get_gdk_monitors_for_screen (screen,
+--
+cgit v0.8.2
View
25 gnome-base/gnome-panel/files/gnome-panel-2.28.0-remove-main-menu-arrow.patch
@@ -0,0 +1,25 @@
+From 68382242986b24dbf4329586591c102b3383ff95 Mon Sep 17 00:00:00 2001
+From: Jon Eyolfson <jon@eyolfson.com>
+Date: Wed, 31 Mar 2010 00:53:48 -0400
+Subject: [PATCH] Removed main menu arrow
+
+---
+ gnome-panel/panel-menu-button.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/gnome-panel/panel-menu-button.c b/gnome-panel/panel-menu-button.c
+index e9676b3..905c24d 100644
+--- a/gnome-panel/panel-menu-button.c
++++ b/gnome-panel/panel-menu-button.c
+@@ -648,7 +648,7 @@ panel_menu_button_load (const char *menu_path,
+ "tooltip", tooltip,
+ "use-menu-path", use_menu_path,
+ "use-custom-icon", use_custom_icon,
+- "has-arrow", TRUE,
++ "has-arrow", FALSE,
+ NULL);
+
+ info = panel_applet_register (GTK_WIDGET (button), NULL, NULL,
+--
+1.7.0.3
+
View
110 gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild,v 1.5 2010/03/10 08:50:50 josejx Exp $
+
+EAPI="2"
+GCONF_DEBUG="no"
+
+inherit autotools eutils gnome2
+
+DESCRIPTION="The GNOME panel"
+HOMEPAGE="http://www.gnome.org/"
+
+LICENSE="GPL-2 FDL-1.1 LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="doc eds networkmanager policykit"
+
+RDEPEND="dev-lang/python
+ >=gnome-base/gnome-desktop-2.26.0
+ >=x11-libs/pango-1.15.4
+ >=dev-libs/glib-2.18.0
+ >=x11-libs/gtk+-2.15.1
+ >=dev-libs/libgweather-2.27.90
+ dev-libs/libxml2
+ >=gnome-base/libgnome-2.13
+ >=gnome-base/libgnomeui-2.5.4
+ >=gnome-base/libbonoboui-2.1.1
+ >=gnome-base/orbit-2.4
+ >=x11-libs/libwnck-2.19.5
+ >=gnome-base/gconf-2.6.1
+ >=gnome-base/gnome-menus-2.27.92
+ >=gnome-base/libbonobo-2.20.4
+ gnome-base/librsvg
+ >=dev-libs/dbus-glib-0.71
+ >=sys-apps/dbus-1.1.2
+ >=x11-libs/cairo-1
+ x11-libs/libXau
+ >=x11-libs/libXrandr-1.2
+ eds? ( >=gnome-extra/evolution-data-server-1.6 )
+ networkmanager? ( >=net-misc/networkmanager-0.6 )
+ policykit? ( >=sys-auth/polkit-0.91 )"
+DEPEND="${RDEPEND}
+ >=dev-lang/perl-5
+ gnome-base/gnome-common
+ >=app-text/gnome-doc-utils-0.3.2
+ >=dev-util/pkgconfig-0.9
+ >=dev-util/intltool-0.40
+ ~app-text/docbook-xml-dtd-4.1.2
+ dev-util/gtk-doc-am
+ doc? ( >=dev-util/gtk-doc-1 )"
+
+DOCS="AUTHORS ChangeLog HACKING NEWS README"
+
+pkg_setup() {
+ G2CONF="${G2CONF}
+ --disable-static
+ --disable-scrollkeeper
+ --disable-schemas-install
+ --with-in-process-applets=clock,notification-area,wncklet
+ $(use_enable policykit polkit)
+ $(use_enable networkmanager network-manager)
+ $(use_enable eds)"
+}
+
+src_prepare() {
+ gnome2_src_prepare
+
+ # FIXME: tarball generated with broken gtk-doc, revisit me.
+ if use doc; then
+ sed "/^TARGET_DIR/i \GTKDOC_REBASE=/usr/bin/gtkdoc-rebase" \
+ -i gtk-doc.make || die "sed 1 failed"
+ else
+ sed "/^TARGET_DIR/i \GTKDOC_REBASE=$(type -P true)" \
+ -i gtk-doc.make || die "sed 2 failed"
+ fi
+
+ # Remove main menu arrow, eyolfson
+ epatch "${FILESDIR}/${P}-remove-main-menu-arrow.patch"
+
+ # Fix missing cflags for clock applet, bug #287853
+ epatch "${FILESDIR}/${P}-clock-applet-missing-cflags.patch"
+
+ # Fix crashes in various conditions with the new randr code,
+ # import from upstream bug #597101
+ epatch "${FILESDIR}/${P}-crashes-xrandr.patch"
+
+ # Make it libtool-1 compatible, bug #271652
+ rm -v m4/lt* m4/libtool.m4 || die "removing libtool macros failed"
+
+ intltoolize --force --copy --automake || die "intltoolize failed"
+ eautoreconf
+}
+
+pkg_postinst() {
+ local entries="${ROOT}etc/gconf/schemas/panel-default-setup.entries"
+ local gconftool="${ROOT}usr/bin/gconftool-2"
+
+ if [ -e "$entries" ]; then
+ einfo "setting panel gconf defaults..."
+
+ GCONF_CONFIG_SOURCE="$("${gconftool}" --get-default-source | sed "s;:/;:${ROOT};")"
+
+ "${gconftool}" --direct --config-source \
+ "${GCONF_CONFIG_SOURCE}" --load="${entries}"
+ fi
+
+ # Calling this late so it doesn't process the GConf schemas file we already
+ # took care of.
+ gnome2_pkg_postinst
+}
View
1 profiles/categories
@@ -3,5 +3,6 @@ dev-haskell
dev-lang
dev-lisp
dev-perl
+gnome-base
gnome-extra
x11-misc

0 comments on commit dd59f11

Please sign in to comment.