diff options
Diffstat (limited to 'desktop/ion')
-rw-r--r-- | desktop/ion/README | 17 | ||||
-rw-r--r-- | desktop/ion/ion.SlackBuild | 71 | ||||
-rw-r--r-- | desktop/ion/ion.info | 8 | ||||
-rw-r--r-- | desktop/ion/slack-desc | 19 | ||||
-rw-r--r-- | desktop/ion/system.mk.diff | 72 | ||||
-rw-r--r-- | desktop/ion/xinitrc.ion | 14 |
6 files changed, 201 insertions, 0 deletions
diff --git a/desktop/ion/README b/desktop/ion/README new file mode 100644 index 000000000000..f24b4997e0eb --- /dev/null +++ b/desktop/ion/README @@ -0,0 +1,17 @@ +Ion is a tiling (no overlapping windows) window manager that also has +PWM-style tabbed frames which can contain multiple client windows. These +features help to keep windows organized and to switch quickly between them. +Ion was designed primarily as an efficient and unobtrusive window manager +for users who prefer the keyboard. + +This is the latest stable release of Ion (3). A pwm3 binary is built +too, which starts Ion with floating workspaces as the default, thus replacing +the PWM window manager. + +ion-3 needs lua, which is also available from SlackBuilds.org. If you have +installed lua on your own, the binary might be stored under /usr/local/bin +or any other destination you have specified. +However, if lua is not located under /usr/bin, either change the LUABINDIR +variable in the SlackBuild script or run the SlackBuild script with +the following command: + LUABINDIR="PATH_TO_BIN_DIRECTORY" ./ion.SlackBuild diff --git a/desktop/ion/ion.SlackBuild b/desktop/ion/ion.SlackBuild new file mode 100644 index 000000000000..4be234859493 --- /dev/null +++ b/desktop/ion/ion.SlackBuild @@ -0,0 +1,71 @@ +#!/bin/sh + +# Slackware build script for ion +# Written by Vasilis Papavasileiou <el03020 at mail dot ntua dot gr> +# Modified by the SlackBuilds.org project +# (assumed to be in public domain per our submission policy) + +PRGNAM=ion +VERSION=3_20080207 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +SRC_VERSION=$(echo $VERSION | tr _ -) + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP || exit 1 +rm -rf $PRGNAM-$SRC_VERSION +tar xvf $CWD/$PRGNAM-$SRC_VERSION.tar.gz || exit 1 +cd $PRGNAM-$SRC_VERSION || exit 1 +#chown -R root:root . +chmod -R u+w,go+r-w,a-s . + +# If you have installed lua on your own, the binary might be stored under +# /usr/local/bin or any other destination you have specified. +# However, if lua is not located under /usr/bin, change the following +# variable or run this script with the following command: +# LUABINDIR="PATH_TO_BIN_DIRECTORY" ./ion.SlackBuild +LUABINDIR=${LUABINDIR:-/usr} +sed -i "s#+LUA_DIR=.*#+LUA_DIR=$LUABINDIR#" $CWD/system.mk.diff || exit 1 + +# Patch system.mk (mainly path fixes) +patch -p0 < $CWD/system.mk.diff || exit 1 + +SLKCFLAGS=$SLKCFLAGS make || exit 1 + +# DOCVER is used to get the proper version number for $DOCDIR +make install DESTDIR=$PKG DOCVER="-$VERSION" || exit 1 + +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +) + +( cd $PKG/usr/man + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done +) + +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +# Install an xinitrc file so that ion will show up in xwmconfig +install -D -m 0755 $CWD/xinitrc.ion $PKG/etc/X11/xinit/xinitrc.ion + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/desktop/ion/ion.info b/desktop/ion/ion.info new file mode 100644 index 000000000000..a368a0140173 --- /dev/null +++ b/desktop/ion/ion.info @@ -0,0 +1,8 @@ +PRGNAM="ion" +VERSION="3-20080207" +HOMEPAGE="http://iki.fi/tuomov/ion/" +DOWNLOAD="http://iki.fi/tuomov/dl/ion-3-20080207.tar.gz" +MD5SUM="a3673c29c367106e5c4919ac33726eec" +MAINTAINER="Vasilis Papavasileiou" +EMAIL="el03020@mail.ntua.gr" +APPROVED="rworkman" diff --git a/desktop/ion/slack-desc b/desktop/ion/slack-desc new file mode 100644 index 000000000000..1543e187ceec --- /dev/null +++ b/desktop/ion/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---------------------------------------------------------| +ion: ion (tiling tabbed window manager) +ion: +ion: Ion is a tiling (no overlapping windows) window manager that also has +ion: PWM-style tabbed frames which can contain multiple client windows. +ion: these features help to keep windows organized and to switch quickly +ion: between them. Ion was designed primarily as an efficient and +ion: unobtrusive window manager for users who prefer the keyboard. +ion: +ion: Homepage: http://iki.fi/tuomov/ion/ +ion: +ion: diff --git a/desktop/ion/system.mk.diff b/desktop/ion/system.mk.diff new file mode 100644 index 000000000000..7a2f09c30856 --- /dev/null +++ b/desktop/ion/system.mk.diff @@ -0,0 +1,72 @@ +--- system.mk.orig 2008-02-07 09:21:04.000000000 -0600 ++++ system.mk 2008-02-07 09:21:28.000000000 -0600 +@@ -8,25 +8,25 @@ + + # Installation path prefix. Unless you know what you're doing, the default + # of /usr/local is likely the correct choice. +-PREFIX=/usr/local ++PREFIX=/usr + + # Unless you are creating a package conforming to some OS's standards, you + # probably do not want to modify the following directories: + + # Main binaries +-BINDIR=$(PREFIX)/bin ++BINDIR=$(DESTDIR)$(PREFIX)/bin + # Configuration .lua files +-ETCDIR=$(PREFIX)/etc/ion3 ++ETCDIR=$(DESTDIR)/etc/X11/ion3 + # Some .lua files and ion-* shell scripts +-SHAREDIR=$(PREFIX)/share/ion3 ++SHAREDIR=$(DESTDIR)$(PREFIX)/share/ion3 + # Manual pages +-MANDIR=$(PREFIX)/share/man ++MANDIR=$(DESTDIR)$(PREFIX)/man + # Some documents +-DOCDIR=$(PREFIX)/share/doc/ion3 ++DOCDIR=$(DESTDIR)$(PREFIX)/doc/ion$(DOCVER) + # Nothing at the moment +-INCDIR=$(PREFIX)/include/ion3 ++INCDIR=$(DESTDIR)$(PREFIX)/include/ion3 + # Nothing at the moment +-LIBDIR=$(PREFIX)/lib ++LIBDIR=$(DESTDIR)$(PREFIX)/lib + # Modules + MODULEDIR=$(LIBDIR)/ion3/mod + # Compiled Lua source code +@@ -36,7 +36,7 @@ + # For ion-completeman system-wide cache + VARDIR=/var/cache/ion3 + # Message catalogs +-LOCALEDIR=$(PREFIX)/share/locale ++LOCALEDIR=$(DESTDIR)$(PREFIX)/share/locale + + # Executable suffix (for Cygwin). + #BIN_SUFFIX = .exe +@@ -62,7 +62,7 @@ + + # If you have installed Lua 5.1 from the official tarball without changing + # paths, this should do it. +-LUA_DIR=/usr/local ++LUA_DIR=/usr + LUA_LIBS = -L$(LUA_DIR)/lib -llua + LUA_INCLUDES = -I$(LUA_DIR)/include + LUA=$(LUA_DIR)/bin/lua +@@ -81,7 +81,7 @@ + ## + + # Paths +-X11_PREFIX=/usr/X11R6 ++X11_PREFIX=/usr + # SunOS/Solaris + #X11_PREFIX=/usr/openwin + +@@ -157,7 +157,7 @@ + -Wtrigraphs -Wformat -Wchar-subscripts \ + -Wparentheses -pedantic -Wuninitialized + +-CFLAGS=-Os $(WARN) $(DEFINES) $(INCLUDES) $(EXTRA_INCLUDES) ++CFLAGS=-g $(WARN) $(DEFINES) $(EXTRA_INCLUDES) $(INCLUDES) $(SLKCFLAGS) + LDFLAGS=$(LIBS) $(EXTRA_LIBS) + EXPORT_DYNAMIC=-Xlinker --export-dynamic + diff --git a/desktop/ion/xinitrc.ion b/desktop/ion/xinitrc.ion new file mode 100644 index 000000000000..5579c7e48ab1 --- /dev/null +++ b/desktop/ion/xinitrc.ion @@ -0,0 +1,14 @@ +#!/bin/sh + +userresources=$HOME/.Xresources +usermodmap=$HOME/.Xmodmap +sysresources=/usr/lib/X11/xinit/.Xresources +sysmodmap=/usr/lib/X11/xinit/.Xmodmap + +# Merge in defaults and keymaps +test -f $sysresources && xrdb -merge $sysresources +test -f $sysmodmap && xmodmap $sysmodmap +test -f $userresources && xrdb -merge $userresources +test -f $usermodmap && xmodmap $usermodmap + +exec ion3 |