From e183c644c248f813c3eed38c9b960e7f6f3f4a01 Mon Sep 17 00:00:00 2001 From: Geoff Ritter Date: Sat, 1 Jan 2011 00:16:02 -0600 Subject: desktop/cairo-compmgr: Added (drop-in replacement for xcompmgr) Signed-off-by: Robby Workman --- desktop/cairo-compmgr/README | 16 +++ desktop/cairo-compmgr/cairo-compmgr.SlackBuild | 123 +++++++++++++++++++++ desktop/cairo-compmgr/cairo-compmgr.info | 10 ++ desktop/cairo-compmgr/doinst-gconf.sh | 24 ++++ desktop/cairo-compmgr/doinst.sh | 14 +++ desktop/cairo-compmgr/fixup-vala-requirement.patch | 84 ++++++++++++++ desktop/cairo-compmgr/slack-desc | 19 ++++ 7 files changed, 290 insertions(+) create mode 100644 desktop/cairo-compmgr/README create mode 100644 desktop/cairo-compmgr/cairo-compmgr.SlackBuild create mode 100644 desktop/cairo-compmgr/cairo-compmgr.info create mode 100644 desktop/cairo-compmgr/doinst-gconf.sh create mode 100644 desktop/cairo-compmgr/doinst.sh create mode 100644 desktop/cairo-compmgr/fixup-vala-requirement.patch create mode 100644 desktop/cairo-compmgr/slack-desc (limited to 'desktop/cairo-compmgr') diff --git a/desktop/cairo-compmgr/README b/desktop/cairo-compmgr/README new file mode 100644 index 0000000000..47c1ed7e06 --- /dev/null +++ b/desktop/cairo-compmgr/README @@ -0,0 +1,16 @@ +cairo-compmgr (Drop-in replacement for xcompmgr) + +This composite manager uses the cairo library to provide similar effects to +xcompmgr. You can use it with any window manager, such as fluxbox, to +provide transparencies. xcompmgr was designed as an example program and +cairo-compmgr is designed as an actual standalone composite manager. + +Warning: this plays a bit weird with fluxbox. Tabs of grouped windows will +be drawn under windows if cycling through with alt+tab. Additionally when a +sub sub root menu loops back over it self, it will be drawn under the other +menus. Other than that, it's an added improvement in visual effects over +xcompmgr. + +This requires vala. libgtop, glade3, GConf, and gobject-introspection are +optional requirements, but gobject-introspection is not recommend since +upstream says support for it is still unstable. diff --git a/desktop/cairo-compmgr/cairo-compmgr.SlackBuild b/desktop/cairo-compmgr/cairo-compmgr.SlackBuild new file mode 100644 index 0000000000..94233c4321 --- /dev/null +++ b/desktop/cairo-compmgr/cairo-compmgr.SlackBuild @@ -0,0 +1,123 @@ +#!/bin/sh + +# Slackware build script for cairo-compmgr + +# Written by Geoff Ritter +# This script is public domain. Use at your own risk. + +PRGNAM=cairo-compmgr +VERSION=${VERSION:-0.3.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e # Exit on most errors + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + -type d -exec chmod 0755 {} \; -o \ + -type f -perm /111 -exec chmod 755 {} \; -o \ + -type f -exec chmod 644 {} \; + +if pkg-config --exists gconf-2.0 ; then + WITH_GCONF=YES + gconf_flags="--enable-gconf --with-gconf-source=\"xml::/etc/gconf/gconf.xml.defaults\" --disable-schemas-install" +else + gconf_flags="--disable-gconf --disable-schemas-install" +fi + +if pkg-config --exists libgtop-2.0 ; then + WITH_PERF=YES + perf_flags="--enable-perf-plugin" +else + perf_flags="--disable-perf-plugin" +fi + +# If vala changes the name of the pkgconfig file from libvala-0.12.pc, +# then this patch will have to be changed. It works with vala-0.11.2. +patch -p1 < $CWD/fixup-vala-requirement.patch + +# gobject introspection will not be 'stable' until GTK+3 +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --enable-shared \ + --disable-static \ + --disable-gobject-introspection \ + --build=$ARCH-slackware-linux \ + ${gconf_flags} \ + ${perf_flags} + +make +make install DESTDIR=$PKG + +# Mess with gconf crap. +if [ "$WITH_GCONF" != YES ]; then + # I think we can safely remove this if you disabled gconf. + rm -f $PKG/usr/bin/ccm-schema-key-to-gconf +fi + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +# Install an icon to the proper location and format the desktop file correctly +mkdir -p $PKG/usr/share/icons/hicolor/64x64/apps/ +cp $PKG/usr/share/pixmaps/cairo-compmgr/cairo-compmgr.png \ + $PKG/usr/share/icons/hicolor/64x64/apps/cairo-compmgr.png +sed -i -e 's/Icon=.*/Icon=cairo-compmgr/' \ + $PKG/usr/share/applications/cairo-compmgr.desktop + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + AUTHORS COPYING ChangeLog INSTALL NEWS README \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh +[ "$WITH_GCONF" = YES ] && cat $CWD/doinst-gconf.sh >> $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/desktop/cairo-compmgr/cairo-compmgr.info b/desktop/cairo-compmgr/cairo-compmgr.info new file mode 100644 index 0000000000..8829afa6a8 --- /dev/null +++ b/desktop/cairo-compmgr/cairo-compmgr.info @@ -0,0 +1,10 @@ +PRGNAM="cairo-compmgr" +VERSION="0.3.0" +HOMEPAGE="http://cairo-compmgr.tuxfamily.org/" +DOWNLOAD="http://download.tuxfamily.org/ccm/cairo-compmgr/cairo-compmgr-0.3.0.tar.gz" +MD5SUM="f8a2b31d99505ca0308f3533160d8d3b" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Geoff Ritter" +EMAIL="geoff dot ritter at gmail dot com" +APPROVED="rworkman" diff --git a/desktop/cairo-compmgr/doinst-gconf.sh b/desktop/cairo-compmgr/doinst-gconf.sh new file mode 100644 index 0000000000..1d6889ea62 --- /dev/null +++ b/desktop/cairo-compmgr/doinst-gconf.sh @@ -0,0 +1,24 @@ +schema_install() { + SCHEMA="$1" + GCONF_CONFIG_SOURCE="xml::etc/gconf/gconf.xml.defaults" \ + chroot . gconftool-2 --makefile-install-rule \ + /etc/gconf/schemas/$SCHEMA \ + 1>/dev/null +} + +schema_install ccm-screen.schemas +schema_install ccm-shadow.schemas +schema_install ccm-window-animation.schemas +schema_install ccm-freeze.schemas +schema_install ccm-vala-window-plugin.schemas +schema_install ccm-fade.schemas +schema_install ccm-menu-animation.schemas +schema_install ccm-perf.schemas +schema_install ccm-snapshot.schemas +schema_install ccm-magnifier.schemas +schema_install ccm-mosaic.schemas +schema_install ccm-automate.schemas +schema_install ccm-opacity.schemas +schema_install ccm-decoration.schemas +schema_install ccm-display.schemas + diff --git a/desktop/cairo-compmgr/doinst.sh b/desktop/cairo-compmgr/doinst.sh new file mode 100644 index 0000000000..9830478e8c --- /dev/null +++ b/desktop/cairo-compmgr/doinst.sh @@ -0,0 +1,14 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 +fi + +if [ -x /usr/bin/update-mime-database ]; then + /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1 +fi + +if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1 + fi +fi + diff --git a/desktop/cairo-compmgr/fixup-vala-requirement.patch b/desktop/cairo-compmgr/fixup-vala-requirement.patch new file mode 100644 index 0000000000..0115e16d0b --- /dev/null +++ b/desktop/cairo-compmgr/fixup-vala-requirement.patch @@ -0,0 +1,84 @@ +diff -Nur cairo-compmgr-0.3.0.orig//configure cairo-compmgr-0.3.0/configure +--- cairo-compmgr-0.3.0.orig//configure 2010-03-17 17:13:42.000000000 -0500 ++++ cairo-compmgr-0.3.0/configure 2010-12-31 18:15:49.781205330 -0600 +@@ -13373,7 +13373,7 @@ + cairo >= \$CAIRO_REQUIRED, + pixman-1 >= \$PIXMAN_REQUIRED, + gtk+-2.0 >= \$GTK_REQUIRED +- vala-1.0 >= \$VALA_REQUIRED\""; } >&5 ++ libvala-0.12 >= \$VALA_REQUIRED\""; } >&5 + ($PKG_CONFIG --exists --print-errors "xcomposite, + xdamage, + xext, +@@ -13382,7 +13382,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED") 2>&5 ++ libvala-0.12 >= $VALA_REQUIRED") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +@@ -13394,7 +13394,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED" 2>/dev/null` ++ libvala-0.12 >= $VALA_REQUIRED" 2>/dev/null` + else + pkg_failed=yes + fi +@@ -13415,7 +13415,7 @@ + cairo >= \$CAIRO_REQUIRED, + pixman-1 >= \$PIXMAN_REQUIRED, + gtk+-2.0 >= \$GTK_REQUIRED +- vala-1.0 >= \$VALA_REQUIRED\""; } >&5 ++ libvala-0.12 >= \$VALA_REQUIRED\""; } >&5 + ($PKG_CONFIG --exists --print-errors "xcomposite, + xdamage, + xext, +@@ -13424,7 +13424,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED") 2>&5 ++ libvala-0.12 >= $VALA_REQUIRED") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then +@@ -13436,7 +13436,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED" 2>/dev/null` ++ libvala-0.12 >= $VALA_REQUIRED" 2>/dev/null` + else + pkg_failed=yes + fi +@@ -13463,7 +13463,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED"` ++ libvala-0.12 >= $VALA_REQUIRED"` + else + CAIRO_COMPMGR_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xcomposite, + xdamage, +@@ -13473,7 +13473,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED"` ++ libvala-0.12 >= $VALA_REQUIRED"` + fi + # Put the nasty error message in config.log where it belongs + echo "$CAIRO_COMPMGR_PKG_ERRORS" >&5 +@@ -13486,7 +13486,7 @@ + cairo >= $CAIRO_REQUIRED, + pixman-1 >= $PIXMAN_REQUIRED, + gtk+-2.0 >= $GTK_REQUIRED +- vala-1.0 >= $VALA_REQUIRED) were not met: ++ libvala-0.12 >= $VALA_REQUIRED) were not met: + + $CAIRO_COMPMGR_PKG_ERRORS + diff --git a/desktop/cairo-compmgr/slack-desc b/desktop/cairo-compmgr/slack-desc new file mode 100644 index 0000000000..bd26d2b3ad --- /dev/null +++ b/desktop/cairo-compmgr/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +cairo-compmgr: cairo-compmgr (Drop-in replacement for xcompmgr) +cairo-compmgr: +cairo-compmgr: This composite manager uses the cairo library to provide similar +cairo-compmgr: effects to xcompmgr. You can use it with any window manager to +cairo-compmgr: provide transparencies. xcompmgr was designed as an example program +cairo-compmgr: while cairo-compmgr is designed to be an actual standalone composite +cairo-compmgr: manager. +cairo-compmgr: +cairo-compmgr: Homepage: http://cairo-compmgr.tuxfamily.org/ +cairo-compmgr: +cairo-compmgr: -- cgit v1.2.3