diff options
-rw-r--r-- | games/trackballs/README | 23 | ||||
-rw-r--r-- | games/trackballs/doinst.sh | 4 | ||||
-rw-r--r-- | games/trackballs/slack-desc | 19 | ||||
-rw-r--r-- | games/trackballs/trackballs.SlackBuild | 127 | ||||
-rw-r--r-- | games/trackballs/trackballs.desktop | 8 | ||||
-rw-r--r-- | games/trackballs/trackballs.info | 10 |
6 files changed, 191 insertions, 0 deletions
diff --git a/games/trackballs/README b/games/trackballs/README new file mode 100644 index 0000000000..8eb3de525f --- /dev/null +++ b/games/trackballs/README @@ -0,0 +1,23 @@ +Trackballs is a marble game inspired by the 80s Atari classic Marble +Madness. + +By steering a marble ball through a labyrinth filled with sharp objecs, +pools of acid, and other obstacles the player collects points. When +the destination is reached you continue on to the next, more difficult +level. - unless the time runs out. + +This Slackware package can include the music and/or extra levels available +at the trackballs home page: http://trackballs.sourceforge.net + +To add the music, download the file "trackballs-music-1.4.tar.bz2" +and save it in the same directory as the SlackBuild script. If using +a newer version of the music than 1.4, set MUSICVER in the environment +before running trackballs.SlackBuild. + +To add extra levels, download the level collections you want and place +them in the levels/ subdirectory before running trackballs.SlackBuild. The +script can handle levels in tar or zip format. Note that some of the +add-on levels offered on the web site are now included with the game +source (specificallly, "Box O' Fun", "Child of Tales", and "Castles" +are part of the main game now, and don't need to be added). Also note +that the "Six Levels" pack doesn't work with this version of the game. diff --git a/games/trackballs/doinst.sh b/games/trackballs/doinst.sh new file mode 100644 index 0000000000..4e8ba7071d --- /dev/null +++ b/games/trackballs/doinst.sh @@ -0,0 +1,4 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 +fi + diff --git a/games/trackballs/slack-desc b/games/trackballs/slack-desc new file mode 100644 index 0000000000..55a105082f --- /dev/null +++ b/games/trackballs/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------------------------------------------------------| +trackballs: trackballs (marble game) +trackballs: +trackballs: Trackballs is a marble game inspired by the 80's Atari classic +trackballs: Marble Madness. +trackballs: +trackballs: By steering a marble ball through a labyrinth filled with sharp +trackballs: objects, pools of acid, and other obstacles the player collects +trackballs: points. When the destination is reached you continue on to the +trackballs: next, more difficult level. - unless the time runs out. +trackballs: +trackballs: diff --git a/games/trackballs/trackballs.SlackBuild b/games/trackballs/trackballs.SlackBuild new file mode 100644 index 0000000000..82f4b0ee18 --- /dev/null +++ b/games/trackballs/trackballs.SlackBuild @@ -0,0 +1,127 @@ +#!/bin/sh + +# Slackware build script for trackballs + +# Written by B. Watson (yalhcru@gmail.com) + +PRGNAM=trackballs +VERSION=${VERSION:-1.1.2} +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +MUSICVER=${MUSICVER:-1.4} +MUSICEXT=${MUSICEXT:-bz2} + +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" +fi + +set -e + +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 . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --mandir=/usr/man \ + --build=$ARCH-slackware-linux + +make +make install-strip DESTDIR=$PKG + +gzip $PKG/usr/man/man6/$PRGNAM.6 + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + README README.html AUTHORS COPYING ChangeLog FAQ TODO *.jpg \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/usr/share/applications +cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop + +mkdir -p $PKG/usr/share/pixmaps +cat share/icons/$PRGNAM-64x64.png > $PKG/usr/share/pixmaps/$PRGNAM.png + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +# Include the music, if we find the music tarball +MUSICFILE=$CWD/$PRGNAM-music-${MUSICVER}.tar.${MUSICEXT} +if [ -e "$MUSICFILE" ]; then + tar xvf "$MUSICFILE" + chown root:root $PRGNAM-music/*.ogg + chmod 0644 $PRGNAM-music/*.ogg + cp -a $PRGNAM-music/*.ogg $PKG/usr/share/$PRGNAM/music + cat $PRGNAM-music/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.music +fi + +# Include extra levels, if we find any. This is more complex than it +# should need to be, but some of the level archives create a top-level +# directory and some don't... +levels_included="" +if [ -e $CWD/levels/ ]; then + for file in $CWD/levels/*; do + found=0 + rm -rf tmplevels + mkdir -p tmplevels + + case "$file" in + *.tar.gz|*.tar.bz2) + tar xvfzC "$file" tmplevels + found=1 + ;; + *.zip) + ( cd tmplevels ; unzip "$file" ) + found=1 + ;; + *) # break + ;; + esac + + if [ "$found" = "1" ]; then + levels_included="$levels_included\n$( basename $file )" + find tmplevels -type f -print0 | xargs -0 chmod 644 + find tmplevels -type f -print0 | xargs -0 chown root:root + find tmplevels -type f -exec cp -a '{}' $PKG/usr/share/$PRGNAM/levels \; + fi + done + + if [ -n "$levels_included" ]; then + echo -e "This package includes the following extra level packs:\n" \ + "$levels_included" > \ + $PKG/usr/doc/$PRGNAM-$VERSION/README.extra_levels + fi +fi + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/games/trackballs/trackballs.desktop b/games/trackballs/trackballs.desktop new file mode 100644 index 0000000000..f408eacfed --- /dev/null +++ b/games/trackballs/trackballs.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +GenericName=Marble Madness type game +Name=Trackballs +Icon=trackballs +Type=Application +Terminal=false +Categories=Game;ArcadeGame; +Exec=/usr/bin/trackballs diff --git a/games/trackballs/trackballs.info b/games/trackballs/trackballs.info new file mode 100644 index 0000000000..9a50dc2054 --- /dev/null +++ b/games/trackballs/trackballs.info @@ -0,0 +1,10 @@ +PRGNAM="trackballs" +VERSION="1.1.2" +HOMEPAGE="http://trackballs.sourceforge.net" +DOWNLOAD="http://downloads.sourceforge.net/trackballs/trackballs-1.1.2.tar.gz" +MD5SUM="9ea9ca93d87bb0f9ad8abca1b34af594" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" +APPROVED="rworkman" |