diff options
Diffstat (limited to 'games/cataclysmdda/cataclysmdda.SlackBuild')
-rw-r--r-- | games/cataclysmdda/cataclysmdda.SlackBuild | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/games/cataclysmdda/cataclysmdda.SlackBuild b/games/cataclysmdda/cataclysmdda.SlackBuild new file mode 100644 index 0000000000000..bb2e7795c329f --- /dev/null +++ b/games/cataclysmdda/cataclysmdda.SlackBuild @@ -0,0 +1,97 @@ +#!/bin/bash + +# Slackware build script for Cataclysm: DDA +# (based on the binary releases) + +# Copyright 2023 Mavridis Philippe <mavridisf@gmail.com> +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +cd $(dirname $0); CWD=$(pwd) + +PRGNAM=cataclysmdda +VERSION=${VERSION:-0.G} +PKG_BUILD=${PKG_BUILD:-2023-03-01-0054} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} + +ARCH=${ARCH:-$(uname -m)} +if [ "$ARCH" != "x86_64" ] +then + echo "Binary releases are only available for x86-64 platform." >2 + exit 1 +fi + +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP + +# BUG: for some reason the extracted directory is named after older version 0.F +# and not current version 0.G +rm -rf $PRGNAM-0.F +tar xvf $CWD/cdda-linux-curses-x64-$PKG_BUILD.tar.gz +cd $PRGNAM-0.F +chown -R root:root . + +strip --strip-unneeded json_formatter.cgi 2>/dev/null || true + +mkdir -p $PKG/opt/$PRGNAM +cp -ra * $PKG/opt/$PRGNAM + +# Modify launcher to store data in home directory +sed -i 's:exec ./$BIN:exec ./$BIN --userdir "$HOME/.catadda":' \ + $PKG/opt/$PRGNAM/cataclysm-launcher + +# BUG: override TERM variable +sed -i '2i export TERM="xterm"' \ + $PKG/opt/$PRGNAM/cataclysm-launcher + +# Create convenient launcher symlink in /usr/bin +mkdir -p $PKG/usr/bin +cd $PKG/usr/bin +ln -s ../../opt/$PRGNAM/cataclysm-launcher cataclysm + +# Move documentation into /usr/doc +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cd $PKG/usr/doc/$PRGNAM-$VERSION +mv $PKG/opt/$PRGNAM/doc/* . +rmdir $PKG/opt/$PRGNAM/doc +rm JSON_LOADING_ORDER.md +ln -s ../../../opt/$PRGNAM/data/json/LOADING_ORDER.md JSON_LOADING_ORDER.md +cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README +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 + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE |