From b6c336a574233ffea1f948e59040c799c10d778a Mon Sep 17 00:00:00 2001 From: Von Random Date: Fri, 6 Nov 2015 13:41:50 +0300 Subject: [PATCH] awesome wm needs to properly support vte-based terminal moving --- awesome/PKGBUILD | 49 ++++++++++++++++++++++++++++++++++++++ awesome/vte-hints-fix.diff | 29 ++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 awesome/PKGBUILD create mode 100644 awesome/vte-hints-fix.diff diff --git a/awesome/PKGBUILD b/awesome/PKGBUILD new file mode 100644 index 0000000..ecfd43b --- /dev/null +++ b/awesome/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 133580 2015-05-16 16:23:32Z anatolik $ +# Maintainer: Bartłomiej Piotrowski +# Maintainer: Andrea Scarpino +# Contributor: Sébastien Luttringer +# Contributor: xduugu +# Contributor: Ronald van Haren +# Contributor: Vesa Kaihlavirta + +pkgname=awesome +pkgver=3.5.6 +pkgrel=2 +pkgdesc='Highly configurable framework window manager' +arch=('i686' 'x86_64') +url='http://awesome.naquadah.org/' +license=('GPL2') +depends=('cairo' 'dbus' 'gdk-pixbuf2' 'imlib2' 'libxdg-basedir' 'lua' 'lua-lgi' + 'pango' 'startup-notification' 'xcb-util-cursor' 'xcb-util-keysyms' + 'xcb-util-wm' 'xorg-xmessage') +makedepends=('asciidoc' 'cmake' 'docbook-xsl' 'doxygen' 'imagemagick' 'ldoc' 'xmlto') +optdepends=('rlwrap: readline support for awesome-client' + 'dex: autostart your desktop files' + 'vicious: widgets for the Awesome window manager') +provides=('notification-daemon') +backup=('etc/xdg/awesome/rc.lua') +source=($url/download/$pkgname-$pkgver.tar.xz) +md5sums=('db1c31de752ab8e5f7aaa338718202af') + +prepare() { + mkdir -p build + patch -p0 < ../vte-hints-fix.diff +} + +build() { + cd build + cmake ../$pkgname-$pkgver \ + -DCMAKE_BUILD_TYPE=RELEASE \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONFDIR=/etc \ + -DLUA_LIBRARY=/usr/lib/liblua.so.5.3 + make +} + +package() { + cd build + make DESTDIR="$pkgdir" install + + install -Dm644 "$srcdir"/$pkgname-$pkgver/awesome.desktop \ + "$pkgdir/usr/share/xsessions/awesome.desktop" +} diff --git a/awesome/vte-hints-fix.diff b/awesome/vte-hints-fix.diff new file mode 100644 index 0000000..fffd9e8 --- /dev/null +++ b/awesome/vte-hints-fix.diff @@ -0,0 +1,29 @@ +--- awesome-3.5.6/objects/client.c.orig 2015-11-06 13:31:38.767875330 +0300 ++++ awesome-3.5.6/objects/client.c 2015-11-06 13:32:34.933876384 +0300 +@@ -623,7 +623,7 @@ + /* Size hints are applied to the window without any decoration */ + client_remove_titlebar_geometry(c, &geometry); + +- if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_P_SIZE) ++ if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_BASE_SIZE) + { + basew = c->size_hints.base_width; + baseh = c->size_hints.base_height; +@@ -642,7 +642,7 @@ + minw = c->size_hints.min_width; + minh = c->size_hints.min_height; + } +- else if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_P_SIZE) ++ else if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_BASE_SIZE) + { + /* min size is substituted with base size if not specified */ + minw = c->size_hints.base_width; +@@ -2017,7 +2017,7 @@ + + if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_US_SIZE) + u_or_p = "user_size"; +- else if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_P_SIZE) ++ else if(c->size_hints.flags & XCB_ICCCM_SIZE_HINT_BASE_SIZE) + u_or_p = "program_size"; + + if(u_or_p)