summaryrefslogtreecommitdiff
path: root/x11-wm/awesome
diff options
context:
space:
mode:
authorIlya Tumaykin <itumaykin@gmail.com>2016-01-14 14:35:53 +0300
committerIan Delaney <idella4@gentoo.org>2016-01-14 19:46:41 +0800
commitb20d603e09c271470a4066f84456a71f2d10d7a0 (patch)
tree885c9b5716f1f30abb06fe9fda63c97e40aca533 /x11-wm/awesome
parent3e9989fc86df8c47554a95ab0b71758f7911018d (diff)
downloadgentoo-b20d603e09c271470a4066f84456a71f2d10d7a0.tar.gz
gentoo-b20d603e09c271470a4066f84456a71f2d10d7a0.tar.xz
x11-wm/awesome: revbump to 3.5.6-r2 wrt bug 571544
Backport upstream fix for focus problems with multiple running awesome instances. Add epatch_user support. Gentoo-Bug: 571544 Package-Manager: portage-2.2.26
Diffstat (limited to 'x11-wm/awesome')
-rw-r--r--x11-wm/awesome/awesome-3.5.6-r2.ebuild139
-rw-r--r--x11-wm/awesome/files/awesome-3.5.6-fix-multi-instances-focus.patch29
2 files changed, 168 insertions, 0 deletions
diff --git a/x11-wm/awesome/awesome-3.5.6-r2.ebuild b/x11-wm/awesome/awesome-3.5.6-r2.ebuild
new file mode 100644
index 00000000000..4b09e3c885e
--- /dev/null
+++ b/x11-wm/awesome/awesome-3.5.6-r2.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+CMAKE_MIN_VERSION="2.8"
+inherit cmake-utils eutils
+
+DESCRIPTION="A dynamic floating and tiling window manager"
+HOMEPAGE="http://awesome.naquadah.org/"
+SRC_URI="http://awesome.naquadah.org/download/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="dbus doc elibc_FreeBSD gnome"
+
+COMMON_DEPEND="
+ >=dev-lang/lua-5.1:0
+ dev-libs/glib:2
+ >=dev-libs/libxdg-basedir-1
+ >=dev-lua/lgi-0.7
+ x11-libs/cairo[xcb]
+ x11-libs/gdk-pixbuf:2
+ >=x11-libs/libxcb-1.6
+ >=x11-libs/pango-1.19.3[introspection]
+ >=x11-libs/startup-notification-0.10_p20110426
+ >=x11-libs/xcb-util-0.3.8
+ x11-libs/xcb-util-cursor
+ x11-libs/libXcursor
+ >=x11-libs/libX11-1.3.99.901
+ dbus? ( >=sys-apps/dbus-1 )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )"
+
+# graphicsmagick's 'convert -channel' has no Alpha support, bug #352282
+DEPEND="${COMMON_DEPEND}
+ >=app-text/asciidoc-8.4.5
+ app-text/xmlto
+ dev-util/gperf
+ virtual/pkgconfig
+ media-gfx/imagemagick[png]
+ >=x11-proto/xcb-proto-1.5
+ >=x11-proto/xproto-7.0.15
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+RDEPEND="${COMMON_DEPEND}"
+
+DOCS="AUTHORS BUGS PATCHES README STYLE"
+
+src_prepare() {
+ # bug #408025
+ epatch "${FILESDIR}/${PN}-3.5_rc1-convert-path.patch"
+ epatch "${FILESDIR}/${PN}-xsession.patch"
+
+ # bug #507604
+ epatch "${FILESDIR}/${PN}-3.5.5-util.lua-xdg-icons-fix.patch"
+ # bug #509658
+ epatch "${FILESDIR}/${PN}-3.5.5-cflag-cleanup.patch"
+
+ # bug #571544
+ epatch "${FILESDIR}/${P}-fix-multi-instances-focus.patch"
+
+ epatch_user
+}
+
+src_configure() {
+ mycmakeargs=(
+ -DPREFIX="${EPREFIX}"/usr
+ -DSYSCONFDIR="${EPREFIX}"/etc
+ $(cmake-utils_use_with dbus DBUS)
+ $(cmake-utils_use doc GENERATE_DOC)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ local myargs="all"
+
+ if use doc ; then
+ myargs="${myargs} doc"
+ fi
+ cmake-utils_src_make ${myargs}
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc ; then
+ (
+ cd "${CMAKE_BUILD_DIR}"/doc
+ mv html doxygen
+ dohtml -r doxygen || die
+ )
+ fi
+ rm -rf "${ED}"/usr/share/doc/${PN} || die "Cleanup of dupe docs failed"
+
+ exeinto /etc/X11/Sessions
+ newexe "${FILESDIR}"/${PN}-session ${PN} || die
+
+ # GNOME-based awesome
+ if use gnome ; then
+ # GNOME session
+ insinto /usr/share/gnome-session/sessions
+ newins "${FILESDIR}/${PN}-gnome-3.session" "${PN}-gnome.session" || die
+ # Application launcher
+ domenu "${FILESDIR}/${PN}-gnome.desktop" || die
+ # X Session
+ insinto /usr/share/xsessions/
+ doins "${FILESDIR}/${PN}-gnome-xsession.desktop" || die
+ fi
+}
+
+pkg_postinst() {
+ # bug #447308
+ if use gnome; then
+ elog
+ elog "You have enabled the gnome USE flag."
+ elog "Please note that quitting awesome won't kill your gnome session."
+ elog "To really quit the session, you should bind your quit key"
+ elog "to the following command:"
+ elog " gnome-session-quit --logout"
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=447308"
+ fi
+
+ # bug #440724
+ elog
+ elog "If you are having issues with Java application windows being"
+ elog "completely blank, try installing"
+ elog " x11-misc/wmname"
+ elog "and setting the WM name to LG3D."
+ elog "For more info visit"
+ elog " https://bugs.gentoo.org/show_bug.cgi?id=440724"
+ elog
+}
diff --git a/x11-wm/awesome/files/awesome-3.5.6-fix-multi-instances-focus.patch b/x11-wm/awesome/files/awesome-3.5.6-fix-multi-instances-focus.patch
new file mode 100644
index 00000000000..da306d1fe49
--- /dev/null
+++ b/x11-wm/awesome/files/awesome-3.5.6-fix-multi-instances-focus.patch
@@ -0,0 +1,29 @@
+commit 1c27a69131428e9e733374c2a3676ca4ecee45d2
+Author: Kimball Thurston <kdt3rd@gmail.com>
+Date: Tue Dec 22 21:46:17 2015 -0800
+
+ Fix focus handling with multiple awesome instances
+
+ When there are multiple X11 screens (i.e. :0.0 and :0.1) for zaphod mode
+ style X setups, this triggers a refresh of focus when the instance
+ running on a particular root receives the mouse
+
+ Fixes https://github.com/awesomeWM/awesome/issues/599.
+
+diff --git a/event.c b/event.c
+index db70e2c..80d6bd6 100644
+--- a/event.c
++++ b/event.c
+@@ -554,6 +554,12 @@ event_handle_enternotify(xcb_enter_notify_event_t *ev)
+ }
+ lua_pop(globalconf.L, 1);
+ }
++ else if (ev->event == globalconf.screen->root) {
++ /* When there are multiple X screens with awesome running separate
++ * instances, reset focus.
++ */
++ globalconf.focus.need_update = true;
++ }
+ }
+
+ /** The focus in event handler.