summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorJim Ramsay <lack@gentoo.org>2011-01-19 01:01:08 +0000
committerJim Ramsay <lack@gentoo.org>2011-01-19 01:01:08 +0000
commit86abc07c18959c08499314699c3363b1cb8c959e (patch)
tree22bdab5deef91225f0fecdf533577abaab4ea2c6 /x11-wm
parentAutomated update of use.local.desc (diff)
downloadhistorical-86abc07c18959c08499314699c3363b1cb8c959e.tar.gz
historical-86abc07c18959c08499314699c3363b1cb8c959e.tar.bz2
historical-86abc07c18959c08499314699c3363b1cb8c959e.zip
Bug #350641: Backported upstream patch to a^Cow multi-screen setups with libX11-1.4.0
Package-Manager: portage-2.1.9.29/cvs/Linux i686
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/fluxbox/ChangeLog9
-rw-r--r--x11-wm/fluxbox/Manifest4
-rw-r--r--x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch65
-rw-r--r--x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild126
4 files changed, 202 insertions, 2 deletions
diff --git a/x11-wm/fluxbox/ChangeLog b/x11-wm/fluxbox/ChangeLog
index 982c74fef8ea..026907bb15dc 100644
--- a/x11-wm/fluxbox/ChangeLog
+++ b/x11-wm/fluxbox/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-wm/fluxbox
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.277 2011/01/19 00:52:17 lack Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/ChangeLog,v 1.278 2011/01/19 01:01:07 lack Exp $
+
+*fluxbox-1.1.1-r3 (19 Jan 2011)
+
+ 19 Jan 2011; Jim Ramsay <lack@gentoo.org> +fluxbox-1.1.1-r3.ebuild,
+ +files/fluxbox-1.1.1-multiscreen.patch:
+ Bug #350641: Backported upstream patch to allow multi-screen setups with
+ libX11-1.4.0
19 Jan 2011; Jim Ramsay <lack@gentoo.org> fluxbox-9999.ebuild, metadata.xml:
Add USE flag for fribidi support to live ebuild
diff --git a/x11-wm/fluxbox/Manifest b/x11-wm/fluxbox/Manifest
index 7e9fdb12839b..3b373b984693 100644
--- a/x11-wm/fluxbox/Manifest
+++ b/x11-wm/fluxbox/Manifest
@@ -4,6 +4,7 @@ AUX 1.0.0/gentoo_style_location.patch 700 RMD160 1c8feeaf840c7ef51515a7f59921a9c
AUX 1.1.0.1/gentoo_style_location.patch 735 RMD160 fb14a4d9d91b4a23992ec90c65e1a8def40cb75c SHA1 899131f61bb5e1cd46e76dbad719ff03c3511475 SHA256 d3031c3ebdd05c23a243e1ec2c0173206bb56a85ef3129ed70c5d7de434f65d9
AUX fbsetbg-quiet-1.1.1.patch 2342 RMD160 211d9a868d608d87804ca79062a982838c12aa78 SHA1 366d1b452e7b8066a75f9f0f26d0ae7ac2ac3739 SHA256 e9ad48a2281549af472a0cc784e840c06d0032bd4f958a2c8bbabac134f01c0c
AUX fluxbox-1.0.0-interix.patch 963 RMD160 dafd89f3691a283ddf7e922a0c7499d734a9d2e4 SHA1 ad2e0fdb5c3a7ba793efa3e854d389a46e8f4626 SHA256 f3f04a2b8ae569eb90fd3b14c9ef0199b8b665dc6c1924d4f06b635d62291416
+AUX fluxbox-1.1.1-multiscreen.patch 2439 RMD160 139e49b60b491472dc2d5dff97f5a7ddfa70324a SHA1 12cd1348f6b80b3a917dcfd116df7bf0e6ccf5c8 SHA256 0c895fabb908ccdd8fb8cd9e90438f88289851d961398971753aa593b6bd1d09
AUX fluxbox-1.1.1-osx-has-otool.patch 581 RMD160 89d2a183a3782538fff98ea174d3999176b8fa31 SHA1 a149be1522c4d1d1c54ca3b3c90774e1ca7bfcf3 SHA256 6edfdc7196e33abba32f5035ad4c68271e680dbcf730a6bfd99d16c8c9a1a362
AUX fluxbox.desktop 202 RMD160 255bb2cdae75e1fc204d4b60f39c8aba66770e7a SHA1 d57b4d0fad653660cc6cf0a2cd808b7a34d72b95 SHA256 8859f44f3eccc7b3e08c9f61f40351c49cd77c4624aabe3029572a3412687834
AUX fluxbox.xsession 2004 RMD160 9a5f192628d6d888734f24b9ff4f6f1b7e8f178b SHA1 ec59f4611868866b8bc6d7fc9762bbc9bca640c3 SHA256 dbff4840a2c32c8ab837e4f34cb002f810dccca107f5e04a28c22d33db2a59bd
@@ -23,6 +24,7 @@ EBUILD fluxbox-1.0.0.ebuild 3158 RMD160 1b67abd77417874b09aa57ace7c3ae274db3fead
EBUILD fluxbox-1.1.0.1.ebuild 3255 RMD160 b3fe06bb8f90c09e3b16ac8f773e491c49972c48 SHA1 8f224d0d5ce4bc7482285464b6a0f0312d1b63f9 SHA256 28548be030bbfa55afde8635e0e21845322edcf832c8cb0bd8a1a6d2bec6c8d6
EBUILD fluxbox-1.1.1-r1.ebuild 3508 RMD160 5c4ddbdaa6b8944ac711d0f91f600ce92f125e25 SHA1 3fedc9963522c71c0c01f35d3e2077c78fb2e699 SHA256 6be9a4d8b39ce02e0457a6e8ba4accffd69a228f76612e53f20ae10bf589cc98
EBUILD fluxbox-1.1.1-r2.ebuild 3790 RMD160 ed3ac3a00bc4df0cdb531994a5ebb3cf2731008f SHA1 b01a42b157aae05376892409164f26579d11b1ed SHA256 7421a16f7e358e1a2b0b3f10ba4e477c0ed0270030a5f614f5b1a878250a5599
+EBUILD fluxbox-1.1.1-r3.ebuild 3905 RMD160 a1b5a19be83e811f82a8aa55762aa91ef4de3e84 SHA1 fd0ff7d96e48129075fc23a8262efc3b4093570e SHA256 1fdaa807c9f17a85be0cd7a8becaee0aaf692ded5311a19a614720763a27920f
EBUILD fluxbox-9999.ebuild 3228 RMD160 c16a9467ea088e049571678a397e91b3bf17c86c SHA1 57cc19b4c5db43b9f3369c454225fa35616a3865 SHA256 05826d9a2df2ed823a6a678d2d3607df6c6c6c2d4231d68a01e6944a4769fd99
-MISC ChangeLog 51179 RMD160 a02d1589a800acb29f46535118bb531636b360d6 SHA1 59ec508a5cbae02866035141962798a42d635259 SHA256 cedd5fc64bc735d9b3e63229c8ae1305f6cf65ac638cde37e11aa8150fd08c21
+MISC ChangeLog 51415 RMD160 e6306f04a3495904ce837d4762f8303721c02384 SHA1 26423b041df0ca5de5d53119cf97809f6a6d6377 SHA256 f7b5f3b3b9c0f40fb27d879038c8a2c75a367653647bf9895624ba0f2badd5ca
MISC metadata.xml 1124 RMD160 ade07b2ec508cf3be2e6d439c5e6b3d7e94fe792 SHA1 ce24cca05659fcfa1fcdd5697082d87e8d9c501d SHA256 4a4c6e8e71d6d258fd9af8843f5eaa0c3d90f004f21121123e58abedba060e95
diff --git a/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch b/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch
new file mode 100644
index 000000000000..802809934957
--- /dev/null
+++ b/x11-wm/fluxbox/files/fluxbox-1.1.1-multiscreen.patch
@@ -0,0 +1,65 @@
+From 95ee731d9118eec110ecb2de5c9094d561a004bd Mon Sep 17 00:00:00 2001
+From: Mathias Gumz <akira at fluxbox dot org>
+Date: Thu, 6 Jan 2011 08:33:34 +0100
+Subject: [PATCH] Backported bugfix: do not assume ':number.screen' as the result of 'DisplayString()'
+
+a newer xlib recently changed the result of 'DisplayString()' a little bit:
+instead of returning ':0.0' or ':1.0' it yields ':0' or ':1'. our code to
+transform this string into something that includes the currently used
+Screen worked only on something like ':0.0'.
+
+we now find the '.' after the ':' and strip that part away.
+
+Backported from e8ce9ed3a38e1b4a3e5727d408d0fac0e2ff1ada
+---
+ src/FbCommands.cc | 18 +++++++++++++++---
+ 1 files changed, 15 insertions(+), 3 deletions(-)
+
+diff --git a/src/FbCommands.cc b/src/FbCommands.cc
+index fd3f71e..fc9e7a2 100644
+--- a/src/FbCommands.cc
++++ b/src/FbCommands.cc
+@@ -142,9 +142,13 @@ int ExecuteCmd::run() {
+ if (pid)
+ return pid;
+
++ // 'display' is given as 'host:number.screen'. we want to give the
++ // new app a good home, so we remove '.screen' from what is given
++ // us from the xserver and replace it with the screen_num of the Screen
++ // the user currently points at with the mouse
+ string displaystring("DISPLAY=");
+- displaystring += DisplayString(FbTk::App::instance()->display());
+ char intbuff[64];
++ string display = DisplayString(FbTk::App::instance()->display());
+ int screen_num = m_screen_num;
+ if (screen_num < 0) {
+ if (Fluxbox::instance()->mouseScreen() == 0)
+@@ -155,6 +159,15 @@ int ExecuteCmd::run() {
+
+ sprintf(intbuff, "%d", screen_num);
+
++ // strip away the '.screen'
++ size_t dot = display.rfind(':');
++ dot = display.find('.', dot);
++ if (dot != string::npos) { // 'display' has actually a '.screen' part
++ display.erase(dot);
++ }
++ display += '.';
++ display += intbuff;
++
+ // get shell path from the environment
+ // this process exits immediately, so we don't have to worry about memleaks
+ const char *shell = getenv("SHELL");
+@@ -162,8 +175,7 @@ int ExecuteCmd::run() {
+ shell = "/bin/sh";
+
+ // remove last number of display and add screen num
+- displaystring.erase(displaystring.size()-1);
+- displaystring += intbuff;
++ displaystring += DisplayString(FbTk::App::instance()->display());
+
+ setsid();
+ putenv(const_cast<char *>(displaystring.c_str()));
+--
+1.7.4.rc1
+
diff --git a/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild b/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild
new file mode 100644
index 000000000000..ec2625bfe363
--- /dev/null
+++ b/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/fluxbox/fluxbox-1.1.1-r3.ebuild,v 1.1 2011/01/19 01:01:07 lack Exp $
+
+EAPI="3"
+inherit eutils prefix
+
+IUSE="nls xinerama truetype gnome +imlib +slit +toolbar vim-syntax -newmousefocus"
+
+DESCRIPTION="Fluxbox is an X11 window manager featuring tabs and an iconbar"
+
+SRC_URI="mirror://sourceforge/fluxbox/${P}.tar.bz2"
+HOMEPAGE="http://www.fluxbox.org"
+
+# Please note that USE="gnome" simply adds support for some gnome protocols, and
+# does not depend on external libraries. However, it does make the binary a
+# fair bit bigger, so we don't want to turn it on unless the user actually wants
+# it.
+
+RDEPEND="x11-libs/libXpm
+ x11-libs/libXrandr
+ xinerama? ( x11-libs/libXinerama )
+ x11-apps/xmessage
+ x11-libs/libXft
+ truetype? ( media-libs/freetype )
+ imlib? ( >=media-libs/imlib2-1.2.0[X] )
+ vim-syntax? ( app-vim/fluxbox-syntax )
+ !!<x11-themes/fluxbox-styles-fluxmod-20040809-r1
+ !!<=x11-misc/fluxconf-0.9.9
+ !!<=x11-misc/fbdesk-1.2.1"
+DEPEND="nls? ( sys-devel/gettext )
+ x11-proto/xextproto
+ xinerama? ( x11-proto/xineramaproto )
+ ${RDEPEND}"
+PROVIDE="virtual/blackbox"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux"
+
+src_prepare() {
+ # We need to be able to include directories rather than just plain
+ # files in menu [include] items. This patch will allow us to do clever
+ # things with style ebuilds.
+ epatch "${FILESDIR}/gentoo_style_location-1.1.x.patch"
+ eprefixify util/fluxbox-generate_menu.in
+
+ epatch "${FILESDIR}"/${P}-osx-has-otool.patch
+
+ # Patch to handle a broken key file gracefully, #263379
+ epatch "${FILESDIR}/macrocmd-crash-1.1.1.patch"
+
+ # Patch to quiet fbsetbg on upgrade
+ epatch "${FILESDIR}/fbsetbg-quiet-1.1.1.patch"
+
+ # Patch to fix window focus bug when you have "focus-follows-mouse"
+ if use newmousefocus; then
+ # These change 'MouseFocus' behaviour to what will be in fluxbox-1.1.2
+ # and add the new 'StrictMouseFocus' mode.
+ epatch "${FILESDIR}/mousefocus-1.1.1.patch"
+ epatch "${FILESDIR}/strictmousefocus-1.1.1.patch"
+ else
+ epatch "${FILESDIR}/mousefocus-1.1.1-r2.patch"
+ fi
+
+ # Patch to fix multiple screens with libX11-1.4.0, #348819
+ epatch "${FILESDIR}/fluxbox-1.1.1-multiscreen.patch"
+
+ # Add in the Gentoo -r number to fluxbox -version output.
+ if [[ "${PR}" == "r0" ]] ; then
+ suffix="gentoo"
+ else
+ suffix="gentoo-${PR}"
+ fi
+ sed -i \
+ -e "s~\(__fluxbox_version .@VERSION@\)~\1-${suffix}~" \
+ version.h.in || die "version sed failed"
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_enable xinerama) \
+ $(use_enable truetype xft) \
+ $(use_enable gnome) \
+ $(use_enable imlib imlib2) \
+ $(use_enable slit ) \
+ $(use_enable toolbar ) \
+ --sysconfdir="${EPREFIX}"/etc/X11/${PN} \
+ --with-style="${EPREFIX}"/usr/share/fluxbox/styles/Emerge \
+ ${myconf}
+}
+
+src_compile() {
+ default
+
+ ebegin "Creating a menu file (may take a while)"
+ mkdir -p "${T}/home/.fluxbox" || die "mkdir home failed"
+ MENUFILENAME="${S}/data/menu" MENUTITLE="Fluxbox ${PV}" \
+ CHECKINIT="no. go away." HOME="${T}/home" \
+ "${S}/util/fluxbox-generate_menu" -is -ds \
+ || die "menu generation failed"
+ eend $?
+}
+
+src_install() {
+ dodir /usr/share/fluxbox
+ emake DESTDIR="${D}" STRIP="" install || die "install failed"
+ dodoc README* AUTHORS TODO* ChangeLog NEWS
+
+ dodir /usr/share/xsessions
+ insinto /usr/share/xsessions
+ doins "${FILESDIR}/${PN}.desktop"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}/${PN}.xsession" fluxbox
+
+ dodir /usr/share/fluxbox/menu.d
+
+ # Styles menu framework
+ dodir /usr/share/fluxbox/menu.d/styles
+ insinto /usr/share/fluxbox/menu.d/styles
+ doins "${FILESDIR}/styles-menu-fluxbox" || die
+ doins "${FILESDIR}/styles-menu-commonbox" || die
+ doins "${FILESDIR}/styles-menu-user" || die
+}