summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorDan McCurry2016-11-13 12:25:46 -0500
committerDan McCurry2016-11-13 12:25:46 -0500
commit7b5e55b3f55a0d5be2b7727274f0de7e2db3dd2d (patch)
treea2596a3123c655b1c36e802ca4448b36a5b48af7 /PKGBUILD
downloadaur-gog-duke-nukem.tar.gz
initial commit
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD68
1 files changed, 68 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..5976274a6410
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,68 @@
+# Maintainer : Dan McCurry <dan.mccurry at linux dot com>
+
+pkgname=gog-duke-nukem
+# Trim gog- prefix from launcher
+_appname=$(echo ${pkgname} | sed -e 's/gog-//')
+pkgver=2.0.0.2
+pkgrel=1
+pkgdesc="2D platform game featuring the adventures of Duke Nukem."
+arch=('any')
+url="http://www.gog.com/" # As of this PKGBUILD, Duke Nukem is no longer in store
+license=("custom")
+groups=("games")
+source=("local://gog_duke_nukem_${pkgver}.sh"
+ "local://${_appname}")
+noextract=("gog_duke_nukem_${pkgver}.sh")
+sha256sums=('a703ee090b68a2bbab70976390d7707089a7bd310975384d0f137b5e14e55831'
+ '6b902da2ff83d99ba43299e96e70aa7229ef0168ee6ec2411e5f5d752c4d1437')
+depends=('dosbox' 'libpng12' 'unionfs-fuse')
+optdepends=('gendesk')
+PKGEXT=.pkg.tar
+
+prepare() {
+ cd ${srcdir}
+
+ # Create menu icons
+ if which gendesk &>/dev/null; then
+ gendesk -f -n --pkgname "${_appname}" \
+ --pkgdesc "${pkgdesc}" \
+ --name='Duke Nukem' \
+ --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
+ 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}
+ install -Dm644 "./${_appname}.desktop" \
+ "${pkgdir}/usr/share/applications/${_appname}.desktop"
+
+ 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}"
+}