diff options
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | PKGBUILD | 72 | ||||
-rw-r--r-- | terra-nova-strike-force-centauri | 10 |
3 files changed, 102 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..44eee19eeade --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,20 @@ +pkgbase = gog-terra-nova-strike-force-centauri + pkgdesc = A tactical first-person shooter video game set in the 24th century. + pkgver = 2.0.0.2 + pkgrel = 1 + url = http://www.gog.com/game/terra_nova_strike_force_centauri + arch = any + groups = games + license = custom + depends = dosbox + depends = libpng12 + depends = unionfs-fuse + optdepends = gendesk: generate menu icons + noextract = gog_terra_nova_strike_force_centauri_2.0.0.2.sh + source = local://gog_terra_nova_strike_force_centauri_2.0.0.2.sh + source = local://terra-nova-strike-force-centauri + sha256sums = ab86b7042aeaed7d44e4bde1a0bc1dda9a08fc2d086a8453ddc6efc76c89dd67 + sha256sums = dc2af1dcdf014ee2412b35759aee999e85f9c0efd2bb3300951b6998aac66cc8 + +pkgname = gog-terra-nova-strike-force-centauri + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..7c55c086caf1 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,72 @@ +# Maintainer : Dan McCurry <dan.mccurry at linux dot com> + +pkgname=gog-terra-nova-strike-force-centauri +# Trim gog- prefix from launcher +_appname=$(echo ${pkgname} | sed -n 's/gog-//p') +pkgver=2.0.0.2 +pkgrel=1 +pkgdesc="A tactical first-person shooter video game set in the 24th century." +arch=('any') +url="http://www.gog.com/game/terra_nova_strike_force_centauri" +license=("custom") +groups=("games") +source=("local://gog_terra_nova_strike_force_centauri_${pkgver}.sh" + "local://${_appname}") +sha256sums=('ab86b7042aeaed7d44e4bde1a0bc1dda9a08fc2d086a8453ddc6efc76c89dd67' + 'dc2af1dcdf014ee2412b35759aee999e85f9c0efd2bb3300951b6998aac66cc8') +noextract=("gog_terra_nova_strike_force_centauri_${pkgver}.sh") +depends=('dosbox' 'libpng12' 'unionfs-fuse') +optdepends=('gendesk: generate menu icons') +PKGEXT=.pkg.tar + +prepare() { + cd ${srcdir} + + # Create menu icons + if which gendesk &>/dev/null; then + gendesk -f -n --pkgname "${_appname}" \ + --pkgdesc "${pkgdesc}" \ + --name="Terra Nova: Strike Force Centauri" \ + --exec="/usr/bin/${_appname}" \ + --categories "Application;Game;" + else + warning "gendesk not found!" + warning "Menu icons not generated." + fi + + # extract mojo installer and suppress header warning for unzip + unzip -o "$(echo ${pkgname} | sed -e 's/-/_/g')_${pkgver}.sh" \ + "data/noarch/*" -x "*dosbox/*" "*start.sh*" \ + "*installer_readme.txt*" "*dosbox*.tar.gz" "*gog_com.shlib*" \ + "*xdg-utils/*" "*gameinfo*" || if [ $? -eq 1 ]; then + msg "Data extraction successful."; + fi + + for i in "${srcdir}/data/noarch/dosbox*.conf"; do + sed -i "s/\(mount C \"\)\(data\"\)/\1~\/.gog\/${_appname}\/game\/\2/" $i + sed -i "s/\(imgmount D \"\)\(data.*\)/\1~\/.gog\/${_appname}\/game\/\2/" $i + done +} + +package() { + mkdir -p "${pkgdir}/opt/gog/${_appname}" + mkdir -p "${pkgdir}/usr/share/pixmaps" + mkdir -p "${pkgdir}/usr/share/licenses/${pkgname}" + + cd ${srcdir} + cp -r ./data/noarch/* "${pkgdir}"/opt/gog/${_appname} + + for i in *.desktop; do + install -Dm644 "$i" \ + "${pkgdir}/usr/share/applications/$i" + done + + cd ${srcdir}/data/noarch + ln -s "/opt/gog/${_appname}/support/icon.png" \ + "${pkgdir}/usr/share/pixmaps/${_appname}.png" + ln -s "/opt/gog/${_appname}/docs/End User License Agreement.txt" \ + "${pkgdir}/usr/share/licenses/${pkgname}/EULA" + + install -Dm755 "${srcdir}/${_appname}" \ + "${pkgdir}/usr/bin/${_appname}" +} diff --git a/terra-nova-strike-force-centauri b/terra-nova-strike-force-centauri new file mode 100644 index 000000000000..b2ae0f2ea2f2 --- /dev/null +++ b/terra-nova-strike-force-centauri @@ -0,0 +1,10 @@ +#!/usr/bin/bash +gogdir="/opt/gog/terra-nova-strike-force-centauri" +homedir="$HOME/.gog/terra-nova-strike-force-centauri" +mkdir -p "$homedir"/{game,config/data} + +unionfs -o cow,relaxed_permissions "$homedir/config=RW:$gogdir=RO" "$homedir/game" + +dosbox -conf "$homedir/game/dosboxTerraNova.conf" \ + -conf "$homedir/game/dosboxTerraNova_single.conf" +fusermount -u "$homedir/game" |