diff options
author | B. Watson <yalhcru@gmail.com> | 2010-05-12 23:29:28 +0200 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2010-05-12 23:29:28 +0200 |
commit | f9363563e6d46c5ea5f8f8afa84ad94c0bc4cfb8 (patch) | |
tree | e33e7e5194f59d1d407acce22a555fb6ef889cf3 | |
parent | 301a421122f7569ffeb213c850b5218456cb2338 (diff) |
games/nevernoid: Added to 12.2 repository
-rw-r--r-- | games/nevernoid/README | 12 | ||||
-rw-r--r-- | games/nevernoid/nevernoid.SlackBuild | 62 | ||||
-rw-r--r-- | games/nevernoid/nevernoid.desktop | 8 | ||||
-rw-r--r-- | games/nevernoid/nevernoid.info | 8 | ||||
-rw-r--r-- | games/nevernoid/nevernoid.png | bin | 0 -> 4511 bytes | |||
-rw-r--r-- | games/nevernoid/nevernoid.wrapper | 54 | ||||
-rw-r--r-- | games/nevernoid/slack-desc | 19 |
7 files changed, 163 insertions, 0 deletions
diff --git a/games/nevernoid/README b/games/nevernoid/README new file mode 100644 index 000000000000..9eeecc4c1170 --- /dev/null +++ b/games/nevernoid/README @@ -0,0 +1,12 @@ +nevernoid - clone of the game "Arkanoid", with extra powerups. + +Nevernoid is distributed as binary-only freeware; this SlackBuild +script simply packages the binary in a Slack-friendly way, including +a wrapper script to allow the game to work without being run from its +data directory. + +Note: the fullscreen option is visible in the options menu, but it's +non-functional (author disabled it on purpose). + +Note: the download site checks the HTTP referrer header, wget won't work +without some hackery. Easier to just use a browser. diff --git a/games/nevernoid/nevernoid.SlackBuild b/games/nevernoid/nevernoid.SlackBuild new file mode 100644 index 000000000000..59c202593f1c --- /dev/null +++ b/games/nevernoid/nevernoid.SlackBuild @@ -0,0 +1,62 @@ +#!/bin/sh + +# Slackware build script for nevernoid + +# Written by B. Watson (yalhcru@gmail.com) + +PRGNAM=nevernoid +ARCHIVE="NeverNoid_v12_linux_x86.tar.gz" +VERSION=${VERSION:-1.2} +ARCH=i486 # which might be a lie! (we dunno how it was compiled) +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +# Binary-only package, so no CFLAGS here + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM +tar xvf $CWD/$ARCHIVE +cd $PRGNAM +chown -R root:root . +chmod -R a-s,u+w,go+r-w . +find . -type f -print0 | xargs -0 chmod 644 + +mkdir -p $PKG/usr/libexec $PKG/usr/games $PKG/usr/share/$PRGNAM +install -m0755 -o root -g root $PRGNAM $PKG/usr/libexec +cp -r fonts maps music sounds sprites $PKG/usr/share/$PRGNAM + +# game expects to be run from within its data directory like a windows app, +# and expects to write highscore/settings data to the same place. Wrapper +# script allows system-wide installation with per-user data. +install -m0755 -o root -g root $CWD/$PRGNAM.wrapper $PKG/usr/games/$PRGNAM + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +sed 's/\r//g' readme.txt > $PKG/usr/doc/$PRGNAM-$VERSION/readme.txt +cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README_SBo.txt +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/usr/share/applications +cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications + +# Oddly, there's no win32 icon for this game... +# Don't laugh, I made this icon from a screenshot of the title screen +# in the gimp. Took about 10 minutes plus lots of cussing & head-scratching. +# If anyone who actually knows anything at all about graphic design would +# like to do a better icon, email me. +mkdir -p $PKG/usr/share/pixmaps +cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps + +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/games/nevernoid/nevernoid.desktop b/games/nevernoid/nevernoid.desktop new file mode 100644 index 000000000000..563f07725217 --- /dev/null +++ b/games/nevernoid/nevernoid.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=NeverNoid +Comment=Clone of the Arkanoid arcade game +Exec=nevernoid +Type=Application +Icon=nevernoid +GenericName=NeverNoid +Categories=Game; diff --git a/games/nevernoid/nevernoid.info b/games/nevernoid/nevernoid.info new file mode 100644 index 000000000000..a127fc8f068e --- /dev/null +++ b/games/nevernoid/nevernoid.info @@ -0,0 +1,8 @@ +PRGNAM="nevernoid" +VERSION="1.2" +HOMEPAGE="http://www.doubledev.com/nevernoid.html" +DOWNLOAD="http://www.sourcefiles.org/Games/Arcade/Block_Based/NeverNoid_v12_linux_x86.tar.gz" +MD5SUM="ce70344326b85c87907bba42e09c3f58" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" +APPROVED="rworkman" diff --git a/games/nevernoid/nevernoid.png b/games/nevernoid/nevernoid.png Binary files differnew file mode 100644 index 000000000000..4ee19200dd6d --- /dev/null +++ b/games/nevernoid/nevernoid.png diff --git a/games/nevernoid/nevernoid.wrapper b/games/nevernoid/nevernoid.wrapper new file mode 100644 index 000000000000..ae850c92454a --- /dev/null +++ b/games/nevernoid/nevernoid.wrapper @@ -0,0 +1,54 @@ +#!/bin/sh + +# Wrapper script for nevernoid to allow read-only shared data +# files, plus writable per-user highscore/settings in ~/nevernoid +# Author: B. Watson (yalhcru@gmail.com) + +# How lame is this? The game opens the map files O_RDWR (read/write +# access), even though it never attempts to write to them! Also, it +# doesn't use fopen() to do this (I tried a LD_PRELOAD to fix it). + +# Because it's closed-source, I can't fix it, and because of this silliness, +# the user directory needs to contain a *copy* of all the map files +# rather than just symlinks to them. Fortunately they're small files. + +# A proper fix would involve either: +# - The original author fixing the source and recompiling, or +# - Someone well-versed in Linux-flavored 80x86 assembly to disassemble +# the code, find the offending O_RDWR byte, and replace with the value +# of O_RDONLY. This assumes that the call to open() is a separate call +# than the one that opens the highscores.dat/options.dat files for +# writing! This is complicated by the fact that the code was compiled +# with FreePascal instead of being written in the more familiar C... + +GAME=nevernoid +USERDIR=~/.$GAME +BIN=/usr/libexec/$GAME +SHARE=/usr/share/$GAME +LINKDIRS="fonts music sounds sprites" +COPYDIRS="maps" + +set -e + +if [ ! -e $USERDIR ]; then + mkdir $USERDIR + echo "$0: Created $USERDIR/" +fi + +cd $USERDIR + +for dir in $LINKDIRS; do + if [ ! -e $dir ]; then + echo "$0: linking $SHARE/$dir/ to $USERDIR/$dir/" + ln -s $SHARE/$dir $dir + fi +done + +for dir in $COPYDIRS; do + if [ ! -e $dir ]; then + echo "$0: copying $SHARE/$dir/ to $USERDIR/$dir/" + cp -r $SHARE/$dir $dir + fi +done + +exec $BIN diff --git a/games/nevernoid/slack-desc b/games/nevernoid/slack-desc new file mode 100644 index 000000000000..dd482d0e00fe --- /dev/null +++ b/games/nevernoid/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------------------------------------------------------| +nevernoid: nevernoid (clone of the game "Arkanoid" with extra powerups) +nevernoid: +nevernoid: Nevernoid is distributed as binary-only freeware; this SlackBuild +nevernoid: script simply packages the binary in a Slack-friendly way. +nevernoid: +nevernoid: +nevernoid: +nevernoid: +nevernoid: +nevernoid: +nevernoid: |