aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHunter Sezen <orbea@riseup.net>2020-09-12 01:31:06 +0100
committerDave Woodfall <dave@slackbuilds.org>2020-09-12 01:31:06 +0100
commit17f42c109f1137fae347ee446846f19a514698f0 (patch)
treec54f41820a98affd5acbd66100dcdf9ab9ffef1f
parentb6c94566fcef44315d3f3cf42e37f6e2dfad7b77 (diff)
games/yarntown: Added (2D homage to Bloodborne for solarus engine)
Signed-off-by: Dave Woodfall <dave@slackbuilds.org>
-rw-r--r--games/yarntown/README5
-rw-r--r--games/yarntown/doinst.sh9
-rw-r--r--games/yarntown/install.patch397
-rw-r--r--games/yarntown/slack-desc19
-rw-r--r--games/yarntown/yarntown.SlackBuild79
-rw-r--r--games/yarntown/yarntown.info10
6 files changed, 519 insertions, 0 deletions
diff --git a/games/yarntown/README b/games/yarntown/README
new file mode 100644
index 000000000000..19001eeafa6d
--- /dev/null
+++ b/games/yarntown/README
@@ -0,0 +1,5 @@
+Yarntown is a 2D hommage to Bloodborne, a dark fantasy video game
+released on Playstation 4 in 2015. Bloodborne is as renowned for its
+demanding and merciless gameplay as for its incredible gothico-victorian
+atmosphere. This quest recreates only a part of the original game,
+because this is just a little side project.
diff --git a/games/yarntown/doinst.sh b/games/yarntown/doinst.sh
new file mode 100644
index 000000000000..65c7e2eeb9aa
--- /dev/null
+++ b/games/yarntown/doinst.sh
@@ -0,0 +1,9 @@
+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 -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/yarntown/install.patch b/games/yarntown/install.patch
new file mode 100644
index 000000000000..7c0222c84876
--- /dev/null
+++ b/games/yarntown/install.patch
@@ -0,0 +1,397 @@
+From d335e5562c3b2d405a1b7c1b116a0f2333cd9389 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Fri, 28 Aug 2020 09:45:43 -0700
+Subject: [PATCH 1/4] Add a desktop file.
+
+---
+ yarntown.desktop | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+ create mode 100644 yarntown.desktop
+
+diff --git a/yarntown.desktop b/yarntown.desktop
+new file mode 100644
+index 0000000..c2827d6
+--- /dev/null
++++ b/yarntown.desktop
+@@ -0,0 +1,9 @@
++[Desktop Entry]
++Name=Yarntown
++GenericName=Yarntown game for the Solarus engine
++Comment=Yarntown (2D hommage to Bloodborne)
++Exec=yarntown
++Terminal=false
++Type=Application
++Icon=yarntown
++Categories=Game;AdventureGame;
+--
+GitLab
+
+
+From 959930c05781c13971945a81698a55e341771f06 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Sat, 29 Aug 2020 13:47:39 -0700
+Subject: [PATCH 2/4] Add a .gitignore.
+
+---
+ .gitignore | 2 ++
+ 1 file changed, 2 insertions(+)
+ create mode 100644 .gitignore
+
+diff --git a/.gitignore b/.gitignore
+new file mode 100644
+index 0000000..b37f35a
+--- /dev/null
++++ b/.gitignore
+@@ -0,0 +1,2 @@
++*.solarus
++yarntown
+--
+GitLab
+
+
+From ee5635b327b883486051d92be381a5202f0774ac Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Tue, 1 Sep 2020 07:00:47 -0700
+Subject: [PATCH 3/4] Add the quest version to quest.dat.
+
+---
+ data/quest.dat | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/quest.dat b/data/quest.dat
+index f97b633..bf7ff4c 100644
+--- a/data/quest.dat
++++ b/data/quest.dat
+@@ -6,7 +6,7 @@ quest{
+ long_description = [[
+ ]],
+ author = "Max Mraz",
+- quest_version = "",
++ quest_version = "1.0.6",
+ release_date = "",
+ website = "",
+ normal_quest_size = "416x240",
+--
+GitLab
+
+
+From 9bf2149bd137d14940ca451b1976f26f15b650d3 Mon Sep 17 00:00:00 2001
+From: orbea <orbea@riseup.net>
+Date: Sat, 29 Aug 2020 11:24:27 -0700
+Subject: [PATCH 4/4] Add a install.sh posix script.
+
+---
+ INSTALL | 68 ++++++++++++++++
+ install.sh | 225 +++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 293 insertions(+)
+ create mode 100644 INSTALL
+ create mode 100755 install.sh
+
+diff --git a/INSTALL b/INSTALL
+new file mode 100644
+index 0000000..cc12b3d
+--- /dev/null
++++ b/INSTALL
+@@ -0,0 +1,68 @@
++install.sh is a POSIX sh script known to work with the following shells:
++
++ ash
++ dash
++ bash
++ ksh
++ loksh
++ mksh
++ pdksh
++ posh (0.14.1 or newer)
++ oksh
++ yash
++ zsh
++
++install.sh accepts the following arguments as targets:
++
++build - Generates the solarus.data archive and the executable script.
++clean - Removes the solarus.data archive and the executable script.
++install - Installs the solarus.data archive and executable script.
++install-assets - Installs the docs, icons and desktop file.
++uninstall - Uninstalls all installed files.
++
++The build, clean and install targets can customize the name of the data
++archive.
++
++ DATANAME - Name of the solarus data archive (data.solarus)
++
++Additionally the following arguments can be passed to the install
++and uninstall targets to configure the install paths.
++
++ PREFIX - Install path prefix (/usr/local)
++ BINDIR - Binary install directory (PREFIX/bin)
++ DOCDIR - Documentation install directory (PREFIX/share/doc)
++ MANDIR - Manpage install directory (PREFIX/share/man)
++ DATADIR - Read-only data install directory (DATAROOTDIR)
++ DATAROOTDIR - Read-only data root install directory (PREFIX/share)
++ SYSCONFDIR - Read-only data install directory (PREFIX/etc)
++
++The configurable install directories can be either absolute or relative
++paths. If they are set as relative paths the value of PREFIX will be
++prepended to the install directory. For example if MANDIR is set to
++'man' man pages will be installed to '/usr/local/man/' instead of
++'/usr/local/share/man/'.
++
++By design install.sh will not use any set environment variables and all
++configuration must be passed explicitly as arguments.
++
++EXAMPLES
++
++ ./install.sh install PREFIX=/usr DESTDIR=/tmp
++
++ Installs to '/tmp/usr/'.
++
++ ./install.sh uninstall PREFIX=/usr DESTDIR=/tmp
++
++ Uninstalls from '/tmp/usr/'.
++
++ ./install.sh install DOCDIR=/usr/local/doc
++
++ Installs documentation to '/usr/local/doc/$PRGNAM-$VERSION'.
++
++ ./install.sh install MANDIR=man
++
++ Installs man pages to '$PREFIX/man/man1/'.
++
++ ./install.sh install SYSCONFDIR=/etc
++
++ Installs read-only data to '/etc/'.
+diff --git a/install.sh b/install.sh
+new file mode 100755
+index 0000000..9cc10da
+--- /dev/null
++++ b/install.sh
+@@ -0,0 +1,225 @@
++#!/bin/sh
++# Install script for yarntown.
++
++# Copyright 2017-2020 orbea
++# 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.
++
++# IFS is <space><tab><newline>
++IFS='
++'
++\unset -f command printf unalias : 2>/dev/null
++\unalias -a 2>/dev/null
++PATH="$(command -p getconf PATH):$PATH"
++LC_ALL=C; export LC_ALL
++
++set -euf
++
++die () {
++ ret="$1"; shift
++ case "$ret" in
++ : ) printf %s\\n "$@" >&2; return 0 ;;
++ 0 ) printf %s\\n "$@" ;;
++ * ) printf %s\\n "$@" >&2 ;;
++ esac
++ exit "$ret"
++}
++
++case "${1:-}" in
++ install-assets ) INSTALL=4 ;;
++ clean ) INSTALL=3 ;;
++ build ) INSTALL=2 ;;
++ install ) INSTALL=1 ;;
++ uninstall ) INSTALL=0 ;;
++ '' ) die 1 'No install target.' ;;
++ * ) die 1 "No rule to install target '$1'." ;;
++esac
++
++cmd () {
++ print=
++ for command do
++ case "$command" in
++ -- ) : ;;
++ */* ) print="${print} '$command'" ;;
++ * ) print="${print} $command" ;;
++ esac
++ done
++ printf " %s\\n" "$print"
++ command -p "$@"
++}
++
++is_absolute () { case "$1" in /*) return 0 ;; *) return 1 ;; esac; }
++
++PREFIX=; BINDIR=; DATADIR=; DATANAME=; DATAROOTDIR=; DOCDIR=; MANDIR=
++SYSCONFDIR=; DESTDIR=
++
++CWD="$(pwd)"
++
++if [ "$0" != "${0%/*}" ]; then
++ SOURCE_DIR="$(cd -- "${0%/*}/" && pwd -P)"
++else
++ SOURCE_DIR="$(pwd -P)"
++fi
++
++quest_version="$(grep quest_version "$SOURCE_DIR"/data/quest.dat)"
++quest_version="${quest_version%\"*}"
++
++PRGNAM=yarntown
++VERSION="${quest_version#*\"}"
++
++shift
++
++install_args=
++
++while [ $# -gt 0 ]; do
++ arg="$1"; shift
++ case "${arg%%=*}" in
++ DATANAME|DESTDIR|PREFIX )
++ eval "${arg%%=*}=\"\${arg#*=}\""
++ ;;
++ BINDIR|DATADIR|DATAROOTDIR|DOCDIR|MANDIR|SYSCONFDIR )
++ install_args=1
++ eval "${arg%%=*}=\"\${arg#*=}\""
++ ;;
++ * )
++ die : "WARNING: Variable '${arg%%=*}' was not used by $PRGNAM."
++ ;;
++ esac
++done
++
++PREFIX="${PREFIX:-/usr/local}"
++BINDIR="${BINDIR:-${PREFIX}/bin}"
++DOCDIR="${DOCDIR:-${PREFIX}/share/doc}/$PRGNAM-$VERSION"
++MANDIR="${MANDIR:-${PREFIX}/share/man}"
++DATANAME="${DATANAME:-data.solarus}"
++DATAROOTDIR="${DATAROOTDIR:-${PREFIX}/share}"
++DATADIR="${DATADIR:-${DATAROOTDIR}}/solarus/$PRGNAM"
++SYSCONFDIR="${SYSCONFDIR:-${PREFIX}/etc}"
++DESTDIR="${DESTDIR:-}"
++
++is_absolute "$PREFIX" || PREFIX="$CWD/$PREFIX"
++
++if [ -n "$install_args" ]; then
++ for i in \$BINDIR \$DATADIR \$DATAROOTDIR \$DOCDIR \$MANDIR \$SYSCONFDIR; do
++ eval "dest=\"$i\""
++ is_absolute "${dest:?}" || eval "${i#*$}=\"\${PREFIX}/$i\""
++ done
++fi
++
++####################
++### Project Code ###
++####################
++
++build_bin () {
++ command -p rm -f -- "$CWD/$PRGNAM"
++ printf 'Generating %s script...\n' "$PRGNAM"
++ printf '#!/bin/sh\nsolarus-run %s "$@"\n' "$DATADIR" > "$CWD/$PRGNAM"
++}
++
++build_data () {
++ command -p rm -f -- "$CWD/$DATANAME"
++ printf 'Generating %s...\n' "$DATANAME"
++ (
++ cd -- "${SOURCE_DIR}"/data/
++ command -p find . -type f \( \
++ -name '*.spc' -o \
++ -name '*.ogg' -o \
++ -name '*.it' -o \
++ -name '*.png' -o \
++ -name '*.dat' -o \
++ -name '*.lua' -o \
++ -name '*.ttf' -o \
++ -name '*.ttc' -o \
++ -name '*.fon' -o \
++ -name '*.glsl' \
++ \) -exec zip -9 -q "$CWD/$DATANAME" {} +
++ )
++}
++
++icon_sizes='16 32 64 128 256 512 1024'
++
++case $INSTALL in
++ # install-assets
++ 4 )
++ printf 'Installing assets...\n'
++ cmd mkdir -p -- "${DESTDIR}${DATAROOTDIR}/applications"
++ cmd mkdir -p -- "${DESTDIR}${DATAROOTDIR}/pixmaps"
++ cmd mkdir -p -- "${DESTDIR}${DOCDIR}"
++ cmd rm -f -- "${DESTDIR}${DOCDIR}/credits.txt"
++ cmd cp -- "${SOURCE_DIR}/credits.txt" "${DESTDIR}${DOCDIR}"
++ cmd rm -f -- "${DESTDIR}${DOCDIR}/readme.md"
++ cmd cp -- "${SOURCE_DIR}/readme.md" "${DESTDIR}${DOCDIR}"
++ cmd rm -f -- "${DESTDIR}${DATAROOTDIR}/applications/$PRGNAM.desktop"
++ cmd cp -- "${SOURCE_DIR}/$PRGNAM.desktop" \
++ "${DESTDIR}${DATAROOTDIR}/applications"
++ cmd rm -f -- "${DESTDIR}${DATAROOTDIR}/pixmaps/$PRGNAM.png"
++ cmd cp -- "${SOURCE_DIR}/data/logos/logo.png" \
++ "${DESTDIR}${DATAROOTDIR}/pixmaps/$PRGNAM.png"
++
++ eval "set -- $icon_sizes"
++ for icon do
++ icon_dir="${DESTDIR}${DATAROOTDIR}/icons/hicolor/${icon}x${icon}/apps"
++ cmd mkdir -p -- "$icon_dir"
++ cmd rm -f -- "$icon_dir/$PRGNAM.png"
++ cmd cp -- "${SOURCE_DIR}/medias/icon/icon_$icon.png" \
++ "$icon_dir/$PRGNAM.png"
++ done
++ ;;
++ # clean
++ 3 )
++ printf 'Removing %s...\n' "$DATANAME"
++ cmd rm -f -- "$CWD/$DATANAME"
++ cmd rm -f -- "$CWD/$PRGNAM"
++ ;;
++ # build
++ 2 )
++ build_data
++ build_bin
++ ;;
++ # install
++ 1 )
++ [ -f "$CWD/$DATANAME" ] || build_data
++ [ -f "$CWD/$PRGNAM" ] || build_bin
++ printf 'Installing...\n'
++ cmd mkdir -p -- "${DESTDIR}${BINDIR}"
++ cmd mkdir -p -- "${DESTDIR}${DATADIR}"
++ cmd rm -f -- "${DESTDIR}${BINDIR}/$PRGNAM"
++ cmd cp -- "$CWD/$PRGNAM" "${DESTDIR}${BINDIR}"
++ cmd rm -f -- "${DESTDIR}${DATADIR}/$DATANAME"
++ cmd cp -- "$CWD/$DATANAME" "${DESTDIR}${DATADIR}"
++ cmd chmod 0755 -- "${DESTDIR}${BINDIR}/$PRGNAM"
++ ;;
++ # uninstall
++ 0 )
++ printf 'Uninstalling...\n'
++ cmd rm -rf -- "${DESTDIR}${DOCDIR}"
++ cmd rm -rf -- "${DESTDIR}${DATADIR}"
++ cmd rm -f -- "${DESTDIR}${BINDIR}/$PRGNAM"
++ cmd rm -f -- "${DESTDIR}${DATAROOTDIR}/applications/$PRGNAM.desktop"
++ cmd rm -f -- "${DESTDIR}${DATAROOTDIR}/pixmaps/$PRGNAM.png"
++
++ eval "set -- $icon_sizes"
++ for icon do
++ icon_dir="${DESTDIR}${DATAROOTDIR}/icons/hicolor/${icon}x${icon}/apps"
++ cmd rm -f -- "$icon_dir/$PRGNAM.png"
++ done
++ ;;
++esac
++
++exit 0
+--
+GitLab
+
diff --git a/games/yarntown/slack-desc b/games/yarntown/slack-desc
new file mode 100644
index 000000000000..c7f4dd78139f
--- /dev/null
+++ b/games/yarntown/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 ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+yarntown: yarntown (2D hommage to Bloodborne for the solarus engine)
+yarntown:
+yarntown: You've come on the night of the hunt. The streets of this cursed,
+yarntown: gothic town are overrun with beasts, and what has become of the men
+yarntown: who tried to hunt them before. Explore the twisting roads, go toe to
+yarntown: toe with powerful foes, and uncover Yarntown's dark secrets.
+yarntown:
+yarntown: Homeage: https://gitlab.com/maxmraz/yarntown
+yarntown:
+yarntown:
+yarntown:
diff --git a/games/yarntown/yarntown.SlackBuild b/games/yarntown/yarntown.SlackBuild
new file mode 100644
index 000000000000..da93cea13f29
--- /dev/null
+++ b/games/yarntown/yarntown.SlackBuild
@@ -0,0 +1,79 @@
+#!/bin/sh
+
+# Slackware build script for Yarntown
+
+# Copyright 2020 Hunter Sezen California, USA
+# 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.
+
+PRGNAM=yarntown
+VERSION=${VERSION:-1.0.6}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+ARCH=noarch
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -eu
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-v$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz
+cd $PRGNAM-v$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Add an install script and desktop file.
+# https://gitlab.com/maxmraz/yarntown/-/merge_requests/4
+patch -p1 < $CWD/install.patch
+
+mkdir -p build
+(
+ cd build
+ ../install.sh install \
+ PREFIX=/usr \
+ BINDIR=games \
+ DATADIR=share/games \
+ DESTDIR="$PKG"
+
+ ../install.sh install-assets \
+ PREFIX=/usr \
+ DOCDIR=doc \
+ DESTDIR="$PKG"
+)
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+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:-tgz}
diff --git a/games/yarntown/yarntown.info b/games/yarntown/yarntown.info
new file mode 100644
index 000000000000..cbe570e3a387
--- /dev/null
+++ b/games/yarntown/yarntown.info
@@ -0,0 +1,10 @@
+PRGNAM="yarntown"
+VERSION="1.0.6"
+HOMEPAGE="https://gitlab.com/maxmraz/yarntown"
+DOWNLOAD="https://gitlab.com/maxmraz/yarntown/-/archive/v1.0.6/yarntown-v1.0.6.tar.gz"
+MD5SUM="13150ab681f4bf2648c65a89c333b8c3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="solarus"
+MAINTAINER="Hunter Sezen"
+EMAIL="orbea@riseup.net"