aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2012-12-16 17:42:38 -0500
committerdsomero <xgizzmo@slackbuilds.org>2012-12-23 09:16:19 -0500
commit776358214ba0f1c9ee3a7d80990623fb4de24608 (patch)
tree850208a5486dea41b4cd5953e3867fd946477add
parent70d06d7b87d0ff6f7332aa25228475bf4b58ebf6 (diff)
games/zoom: Added (play interactive fiction games)
Signed-off-by: dsomero <xgizzmo@slackbuilds.org>
-rw-r--r--games/zoom/README7
-rw-r--r--games/zoom/config_xft.diff27
-rw-r--r--games/zoom/doinst.sh24
-rw-r--r--games/zoom/slack-desc19
-rw-r--r--games/zoom/zoom.158
-rw-r--r--games/zoom/zoom.SlackBuild101
-rw-r--r--games/zoom/zoom.desktop10
-rw-r--r--games/zoom/zoom.info10
-rw-r--r--games/zoom/zoom.pngbin0 -> 20793 bytes
9 files changed, 256 insertions, 0 deletions
diff --git a/games/zoom/README b/games/zoom/README
new file mode 100644
index 0000000000000..d9a7e6107bcc3
--- /dev/null
+++ b/games/zoom/README
@@ -0,0 +1,7 @@
+zoom (play interactive fiction games)
+
+Zoom is a player for Z-Code, TADS and HUGO stories or games. These are
+usually text adventures ('interactive fiction'), and were first created
+by Infocom with the Zork series of games. Throughout the 80's, Infocom
+released many interactive fiction stories before their ambitions to
+enter the database market finally brought them low.
diff --git a/games/zoom/config_xft.diff b/games/zoom/config_xft.diff
new file mode 100644
index 0000000000000..8b1d7100e97f2
--- /dev/null
+++ b/games/zoom/config_xft.diff
@@ -0,0 +1,27 @@
+diff -Naur zoom-1.1.5/configure zoom-1.1.5.patched/configure
+--- zoom-1.1.5/configure 2011-11-05 10:29:03.000000000 -0400
++++ zoom-1.1.5.patched/configure 2012-11-28 02:34:45.000000000 -0500
+@@ -7349,21 +7349,8 @@
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+
+- # If Xft is installed, then there will be a xft-config file on the current path
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xft-config" >&5
+-$as_echo_n "checking for xft-config... " >&6; }
+- XFTCONFIG=`which xft-config`
+- XFT_CFLAGS=""
+- XFT_LIBS=""
+- if test -x ${XFTCONFIG}; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XFTCONFIG" >&5
+-$as_echo "$XFTCONFIG" >&6; }
+- XFT_CFLAGS=`${XFTCONFIG} --cflags`
+- XFT_LIBS=`${XFTCONFIG} --libs`
+- else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+-$as_echo "no" >&6; }
+- fi
++ XFT_CFLAGS=`pkg-config xft --cflags`
++ XFT_LIBS=`pkg-config xft --libs`
+
+ # Had to move this, Xft 2 again
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XRenderQueryExtension in -lXrender" >&5
diff --git a/games/zoom/doinst.sh b/games/zoom/doinst.sh
new file mode 100644
index 0000000000000..0b300ce961a6c
--- /dev/null
+++ b/games/zoom/doinst.sh
@@ -0,0 +1,24 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+config usr/share/zoom/zoomrc.new
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/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/games/zoom/slack-desc b/games/zoom/slack-desc
new file mode 100644
index 0000000000000..9389ff0269c2b
--- /dev/null
+++ b/games/zoom/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------------------------------------------------------|
+zoom: zoom (play interactive fiction games)
+zoom:
+zoom: Zoom is a player for Z-Code, TADS and HUGO stories or games. These
+zoom: are usually text adventures ('interactive fiction'), and were first
+zoom: created by Infocom with the Zork series of games. Throughout the
+zoom: 80's, Infocom released many interactive fiction stories before their
+zoom: ambitions to enter the database market finally brought them low.
+zoom:
+zoom:
+zoom:
+zoom:
diff --git a/games/zoom/zoom.1 b/games/zoom/zoom.1
new file mode 100644
index 0000000000000..5a6a787924b7d
--- /dev/null
+++ b/games/zoom/zoom.1
@@ -0,0 +1,58 @@
+.TH ZOOM "1" "November 2012" "SlackBuilds.org" "User Commands"
+.SH NAME
+zoom \- interpreter for interactive fiction games
+.SH SYNOPSIS
+.B zoom
+[\fIOPTION\fR...] [\fIstory-file\fR] [\fIsave-file\fR]
+.SH DESCRIPTION
+Interactive Fiction is a fancy name for 'text adventures', thought up by
+a company called called 'Infocom' circa 1979.
+.PP
+Zoom is an advanced player for interactive fiction stories written in four major formats:
+.SS Z\-Code
+The format used by Infocom in the 1980s for games including Zork and Trinity, as well as new games written using the Inform language.
+.SS Glulx
+A modern language intended to be the successor to Z\-Code.
+.SS TADS
+A modern language developed by Mike Roberts.
+.SS HUGO
+A modern language developed by The General Coffee Compnay.
+.SH OPTIONS
+.TP
+\fB\-D\fR, \fB\-\-debugmode\fR
+Enable source\-level debugger (requires gameinfo.dbg)
+.TP
+\fB\-w\fR, \fB\-\-warnings\fR
+Display interpreter warnings
+.TP
+\fB\-W\fR, \fB\-\-fatal\fR
+Warnings are fatal
+.TP
+\fB\-?\fR, \fB\-\-help\fR
+Give this help list
+.TP
+\fB\-\-usage\fR
+Give a short usage message
+.TP
+\fB\-V\fR, \fB\-\-version\fR
+Print program version
+.SH FILES
+.TP
+\fB/usr/share/zoom/games/\fR
+When zoom is called without a story-file argument, it presents a menu of
+the games found here, if any.
+.TP
+\fB/usr/share/zoom/zoomrc\fR
+System\-wide config file, mostly for setting fonts and colors.
+.TP
+\fB$HOME/.zoomrc\fR
+Per\-user config file.
+.SH "SEE ALSO"
+Full documentation is installed in
+.nh
+\fB/usr/doc/zoom-@VERSION@/manual/index.html\fR
+.hy
+.SH BUGS
+Report bugs to bugs@logicalshift.co.uk.
+.SH AUTHOR
+Zoom was written by Andrew Hunter
diff --git a/games/zoom/zoom.SlackBuild b/games/zoom/zoom.SlackBuild
new file mode 100644
index 0000000000000..c7bd0d54155e7
--- /dev/null
+++ b/games/zoom/zoom.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Slackware build script for zoom
+
+# Written by B. Watson (yalhcru@gmail.com)
+
+# Licensed under the WTFPL. See http://sam.zoy.org/wtfpl/ for details.
+
+PRGNAM=zoom
+VERSION=${VERSION:-1.1.5}
+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"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+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 {} \;
+
+# Modern Xft doesn't ship a xft-config script, hack the configure script
+# to use pkg-config.
+patch -p1 < $CWD/config_xft.diff
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
+
+# enable antialiasing by default. The comment in the config file
+# doesn't seem to apply (it was written years ago).
+sed -i '/antialias/s,no,yes,' $PKG/usr/share/$PRGNAM/${PRGNAM}rc
+mv $PKG/usr/share/$PRGNAM/${PRGNAM}rc $PKG/usr/share/$PRGNAM/${PRGNAM}rc.new
+
+# If zoom is run with no arguments, it shows a menu of games from its
+# default location. Let's make this the same location inform installs
+# its example games to.
+mkdir -p $PKG/usr/share/zcode
+ln -s ../zcode $PKG/usr/share/$PRGNAM/games
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f manual/Makefile*
+cp -a \
+ AUTHORS COPYING ChangeLog NEWS README THANKS TODO manual \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/usr/share/pixmaps/
+cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+
+mkdir -p $PKG/usr/share/applications/
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+mkdir -p $PKG/usr/man/man1
+sed "s,@VERSION@,$VERSION,g" < $CWD/$PRGNAM.1 | gzip -9c > $PKG/usr/man/man1/$PRGNAM.1.gz
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/zoom/zoom.desktop b/games/zoom/zoom.desktop
new file mode 100644
index 0000000000000..dc8aa96e5f4a7
--- /dev/null
+++ b/games/zoom/zoom.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Version=1.0
+Name=Zoom
+GenericName=Game Engine
+Comment=Player for Interactive Fiction Games
+Icon=zoom
+Exec=zoom
+Terminal=false
+Type=Application
+Categories=Game;AdventureGame;
diff --git a/games/zoom/zoom.info b/games/zoom/zoom.info
new file mode 100644
index 0000000000000..56aa2dfb473e4
--- /dev/null
+++ b/games/zoom/zoom.info
@@ -0,0 +1,10 @@
+PRGNAM="zoom"
+VERSION="1.1.5"
+HOMEPAGE="http://www.logicalshift.co.uk/unix/zoom/"
+DOWNLOAD="http://www.ifarchive.org/if-archive/infocom/interpreters/zoom/zoom-1.1.5.tar.gz"
+MD5SUM="e24df12fd1bdfd0c4361d465bdceb949"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
diff --git a/games/zoom/zoom.png b/games/zoom/zoom.png
new file mode 100644
index 0000000000000..bb6d3d1364c7d
--- /dev/null
+++ b/games/zoom/zoom.png
Binary files differ