summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pcr/compiz/PKGBUILD92
-rw-r--r--pcr/compiz/focus-prevention-disable.patch12
-rw-r--r--pcr/compiz/gtk-extents.patch13
-rw-r--r--pcr/compiz/trailfocus-fix.patch12
4 files changed, 129 insertions, 0 deletions
diff --git a/pcr/compiz/PKGBUILD b/pcr/compiz/PKGBUILD
new file mode 100644
index 000000000..57ef590d9
--- /dev/null
+++ b/pcr/compiz/PKGBUILD
@@ -0,0 +1,92 @@
+# Maintainer (Arch): Charles Bos <charlesbos1 AT gmail>
+# Contributor (Arch): Rob McCathie <archaur at rmcc dot com dot au
+# Contributor (Arch): /dev/rs0 <rs0@secretco.de.com>
+# Contributor (Arch): Iven Hsu <ivenvd AT gmail>
+# Contributor (Arch): Nathan Hulse <nat.hulse@gmail.com>
+
+pkgname=compiz
+pkgver=0.9.13.0
+pkgrel=2
+pkgdesc="Composite manager for Aiglx and Xgl, with plugins and CCSM"
+arch=('i686' 'x86_64')
+url="https://launchpad.net/compiz"
+license=('GPL' 'LGPL' 'MIT')
+depends=('boost' 'xorg-server' 'libxcomposite' 'startup-notification' 'librsvg' 'dbus' 'mesa' 'libxslt' 'fuse' 'glibmm' 'libxrender' 'libwnck3' 'pygtk' 'desktop-file-utils' 'pyrex' 'protobuf' 'metacity' 'glu' 'libsm' 'dconf')
+makedepends=('cmake' 'intltool')
+optdepends=(
+ 'xorg-xprop: grab various window properties for use in window matching rules'
+)
+conflicts=('compiz-core')
+source=("https://launchpad.net/${pkgname}/${pkgver:0:6}/${pkgver}/+download/${pkgname}-${pkgver}.tar.bz2"
+ "focus-prevention-disable.patch"
+ "gtk-extents.patch"
+ "trailfocus-fix.patch")
+sha256sums=('f08eb54d578be559e3e723f3fe4291a56f5c96b2fdfb9c9e74ebb6596a1ca702'
+ 'f4897590b0f677ba34767a29822f8f922a750daf66e8adf47be89f7c2550cf4b'
+ '16ddb6311ce42d958505e21ca28faae5deeddce02cb558d55e648380274ba4d9'
+ '01e94ac52cd39eb5462a8505c7df61c7b14b05159de64f8700dfadb524bdb2ce')
+
+prepare() {
+ cd "${pkgname}-${pkgver}"
+
+ # Fix decorator start command
+ sed -i 's/exec \\"${COMPIZ_BIN_PATH}compiz-decorator\\"/exec \/usr\/bin\/compiz-decorator/g' plugins/decor/decor.xml.in
+
+ # Set focus prevention level to off which means that new windows will always get focus
+ patch -Np1 -i "${srcdir}/focus-prevention-disable.patch"
+
+ # Use Python 2
+ find -type f \( -name 'CMakeLists.txt' -or -name '*.cmake' \) -exec sed -e 's/COMMAND python/COMMAND python2/g' -i {} \;
+ find compizconfig/ccsm -type f -exec sed -e 's|^#!.*python|#!/usr/bin/env python2|g' -i {} \;
+
+ # Fix incorrect extents for GTK+ tooltips, csd etc
+ patch -Np1 -i "${srcdir}/gtk-extents.patch"
+
+ # Fix ambiguous function call in trailfocus plugin
+ patch -Np1 -i "${srcdir}/trailfocus-fix.patch"
+}
+
+build() {
+ cd "${pkgname}-${pkgver}"
+
+ export PYTHON="/usr/bin/python2"
+
+ mkdir build; cd build
+
+ cmake .. \
+ -DCMAKE_BUILD_TYPE="Release" \
+ -DCMAKE_INSTALL_PREFIX="/usr" \
+ -DCMAKE_INSTALL_LIBDIR="/usr/lib" \
+ -DCOMPIZ_DISABLE_SCHEMAS_INSTALL=On \
+ -DCOMPIZ_BUILD_WITH_RPATH=Off \
+ -DCOMPIZ_PACKAGING_ENABLED=On \
+ -DBUILD_GTK=On \
+ -DBUILD_METACITY=On \
+ -DBUILD_KDE4=Off \
+ -DCOMPIZ_BUILD_TESTING=Off \
+ -DCOMPIZ_WERROR=Off \
+ -DCOMPIZ_DEFAULT_PLUGINS="composite,opengl,decor,resize,place,move,compiztoolbox,staticswitcher,regex,animation,wall,ccp" \
+
+ make
+}
+
+package() {
+ cd "${pkgname}-${pkgver}/build"
+ make DESTDIR="${pkgdir}" install
+
+ # findcompiz_install needs COMPIZ_DESTDIR and install needs DESTDIR
+ # make findcompiz_install
+ CMAKE_DIR=$(cmake --system-information | grep '^CMAKE_ROOT' | awk -F\" '{print $2}')
+ install -dm755 "${pkgdir}${CMAKE_DIR}/Modules/"
+ install -m644 ../cmake/FindCompiz.cmake "${pkgdir}${CMAKE_DIR}/Modules/"
+
+ # Add documentation
+ install -dm755 "${pkgdir}/usr/share/doc/compiz/"
+ install ../{AUTHORS,NEWS,README} "${pkgdir}/usr/share/doc/compiz/"
+
+ # Add the gsettings schema files
+ if ls generated/glib-2.0/schemas/ | grep -qm1 .gschema.xml; then
+ install -dm755 "${pkgdir}/usr/share/glib-2.0/schemas/"
+ install -m644 generated/glib-2.0/schemas/*.gschema.xml "${pkgdir}/usr/share/glib-2.0/schemas/"
+ fi
+}
diff --git a/pcr/compiz/focus-prevention-disable.patch b/pcr/compiz/focus-prevention-disable.patch
new file mode 100644
index 000000000..df2fcef10
--- /dev/null
+++ b/pcr/compiz/focus-prevention-disable.patch
@@ -0,0 +1,12 @@
+diff -Naur original/metadata/core.xml.in modified/metadata/core.xml.in
+--- original/metadata/core.xml.in 2013-07-23 20:58:03.000000000 +0100
++++ modified/metadata/core.xml.in 2014-06-11 09:06:53.839302487 +0100
+@@ -114,7 +114,7 @@
+ <_long>Level of focus stealing prevention</_long>
+ <min>0</min>
+ <max>4</max>
+- <default>1</default>
++ <default>0</default>
+ <desc>
+ <value>0</value>
+ <_name>Off</_name>
diff --git a/pcr/compiz/gtk-extents.patch b/pcr/compiz/gtk-extents.patch
new file mode 100644
index 000000000..5c8ec1ec2
--- /dev/null
+++ b/pcr/compiz/gtk-extents.patch
@@ -0,0 +1,13 @@
+# Diff from https://code.launchpad.net/~albertsmuktupavels/compiz/add-gtk-frame-extents-to-net-supported/+merge/257303
+=== modified file 'src/screen.cpp'
+--- a/src/screen.cpp 2014-12-02 19:37:10 +0000
++++ b/src/screen.cpp 2015-04-23 20:41:24 +0000
+@@ -2362,6 +2362,7 @@
+
+ atoms.push_back (Atoms::wmUserTime);
+ atoms.push_back (Atoms::frameExtents);
++ atoms.push_back (Atoms::frameGtkExtents);
+ atoms.push_back (Atoms::frameWindow);
+
+ atoms.push_back (Atoms::winState);
+
diff --git a/pcr/compiz/trailfocus-fix.patch b/pcr/compiz/trailfocus-fix.patch
new file mode 100644
index 000000000..2300e57a1
--- /dev/null
+++ b/pcr/compiz/trailfocus-fix.patch
@@ -0,0 +1,12 @@
+diff -Nur original/plugins/trailfocus/src/trailfocus.cpp modified/plugins/trailfocus/src/trailfocus.cpp
+--- original/plugins/trailfocus/src/trailfocus.cpp 2015-08-20 14:01:09.000000000 +0100
++++ modified/plugins/trailfocus/src/trailfocus.cpp 2016-05-08 13:57:35.867366143 +0100
+@@ -195,7 +195,7 @@
+ }
+ else
+ {
+- distance = abs (cur->activeNum () - best->activeNum ());
++ distance = abs ((int)(cur->activeNum () - best->activeNum ()));
+ if (distance < bestDist)
+ {
+ best = cur;