diff options
-rw-r--r-- | .SRCINFO | 49 | ||||
-rw-r--r-- | PKGBUILD | 101 | ||||
-rw-r--r-- | unvanquished.install | 67 |
3 files changed, 217 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..92b1a7c07d80 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,49 @@ +pkgbase = unvanquished + pkgdesc = A team-based, fast-paced, fps/rts hybrid game which pits aliens against humans. Monthly alpha release. + pkgver = 0.40.0 + pkgrel = 1 + url = http://www.unvanquished.net + install = unvanquished.install + arch = x86_64 + arch = i686 + license = GPL3 + makedepends = cmake + depends = unvanquished-data>=0.40.0 + depends = zlib + depends = gmp + depends = nettle + depends = geoip + depends = curl + depends = sdl2 + depends = glew + depends = libpng + depends = libjpeg-turbo + depends = libwebp>=0.2.0 + depends = freetype2 + depends = openal + depends = libogg + depends = libvorbis + depends = speex + depends = libtheora + depends = opusfile + depends = ncurses + depends = xdg-utils + depends = desktop-file-utils + depends = shared-mime-info + depends = hicolor-icon-theme + provides = unvanquished + conflicts = unvanquished-git + options = emptydirs + options = !strip + backup = etc/conf.d/unvanquished.conf + backup = etc/unvanquished/server.cfg + backup = etc/unvanquished/maprotation.cfg + source = https://github.com/Unvanquished/Unvanquished/archive/archlinux/0.40.0-1.tar.gz + source = unvanquished.install + source = https://dl.unvanquished.net/deps/linux32-3.tar.bz2 + md5sums = 693e2f70e9ff59df60be5970dad385b5 + md5sums = a5246cf3bed53798ddc4d95c6b8c1b37 + md5sums = 64aa86d0d0d469c1f2272377e06322a1 + +pkgname = unvanquished + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..524d021351cd --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,101 @@ +# Maintainer: Viech <viech unvanquished net> +# Contributor: Gereon Schomber +# Contributor: Martin F. Schumann + +pkgname=unvanquished +pkgver=0.40.0 +pkgrel=1 + +_gitver="archlinux/${pkgver}-${pkgrel}" +_gitdir="${pkgname/u/U}-${_gitver/\//-}" + +_depver="3" +if test "$CARCH" == "x86_64"; then + _depbasename=linux64-${_depver} +else + _depbasename=linux32-${_depver} +fi +_depname="${_depbasename}.tar.bz2" + +pkgdesc='A team-based, fast-paced, fps/rts hybrid game which pits aliens against humans. Monthly alpha release.' +arch=('x86_64' 'i686') +url='http://www.unvanquished.net' +license=('GPL3') + +makedepends=('cmake') +depends=("unvanquished-data>=${pkgver}" + 'zlib' 'gmp' 'nettle' 'geoip' 'curl' 'sdl2' 'glew' 'libpng' + 'libjpeg-turbo' 'libwebp>=0.2.0' 'freetype2' 'openal' 'libogg' + 'libvorbis' 'speex' 'libtheora' 'opusfile' 'ncurses' 'xdg-utils' + 'desktop-file-utils' 'shared-mime-info' 'hicolor-icon-theme') +provides=('unvanquished') +conflicts=('unvanquished-git') +options=('emptydirs' '!strip') +backup=('etc/conf.d/unvanquished.conf' 'etc/unvanquished/server.cfg' 'etc/unvanquished/maprotation.cfg') +install='unvanquished.install' +source=("https://github.com/Unvanquished/Unvanquished/archive/${_gitver}.tar.gz" + 'unvanquished.install' "https://dl.unvanquished.net/deps/${_depname}") + +build() { + cd "${srcdir}/${_gitdir}" + + cp -r "${srcdir}/${_depbasename}" external_deps/ + + cmake -D BUILD_GAME_NACL=OFF -D BUILD_GAME_NATIVE_DLL=OFF -D BUILD_GAME_NATIVE_EXE=OFF . + make +} + +package() { + # create installation directories + cd "${pkgdir}" + + install -dm755 etc/conf.d \ + etc/unvanquished \ + usr/bin \ + usr/lib/systemd/system \ + usr/lib/unvanquished \ + usr/share/applications \ + usr/share/icons/hicolor/128x128/apps \ + usr/share/licenses/unvanquished \ + usr/share/unvanquished/pkg \ + var/lib/unvanquished-server/config \ + var/lib/unvanquished-server/game + + # install content + cd "${srcdir}/${_gitdir}" + + install -m 755 daemon* "${pkgdir}/usr/lib/unvanquished/" + install -m 755 irt_core-x86*.nexe "${pkgdir}/usr/lib/unvanquished/" + install -m 755 nacl_helper_bootstrap "${pkgdir}/usr/lib/unvanquished/" + install -m 755 nacl_loader "${pkgdir}/usr/lib/unvanquished/" + install -m 644 debian/unvanquished.png "${pkgdir}/usr/share/icons/hicolor/128x128/apps/" + install -m 644 COPYING.txt "${pkgdir}/usr/share/licenses/unvanquished/" + + # install starters and dedicated server config + cd "${srcdir}/${_gitdir}/archlinux" + + install -m 755 unvanquished.sh "${pkgdir}/usr/bin/unvanquished" + install -m 755 unvanquished-tty.sh "${pkgdir}/usr/bin/unvanquished-tty" + install -m 644 unvanquished.conf "${pkgdir}/etc/conf.d/" + install -m 644 unvanquished.service "${pkgdir}/usr/lib/systemd/system/" + install -m 644 unvanquished.desktop "${pkgdir}/usr/share/applications/" + install -m 644 configs/maprotation.cfg "${pkgdir}/etc/unvanquished/" + install -m 644 configs/server.cfg "${pkgdir}/etc/unvanquished/" + + # setup server home directory + cd "${pkgdir}/var/lib/unvanquished-server/config" + + ln -s ../../../../etc/unvanquished/server.cfg . + + cd "${pkgdir}/var/lib/unvanquished-server/game" + + ln -s ../../../../etc/unvanquished/maprotation.cfg . +} + +md5sums=('693e2f70e9ff59df60be5970dad385b5' + 'a5246cf3bed53798ddc4d95c6b8c1b37') +if test "$CARCH" == "x86_64"; then + md5sums+=('9f73b3b0b4536b022be5d3e218b48ea1') +else + md5sums+=('64aa86d0d0d469c1f2272377e06322a1') +fi diff --git a/unvanquished.install b/unvanquished.install new file mode 100644 index 000000000000..c74db0f6c429 --- /dev/null +++ b/unvanquished.install @@ -0,0 +1,67 @@ +_update_desktop_environment() { + # update icon cache + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + + # install unv:// protocol handler + update-desktop-database -q + update-mime-database /usr/share/mime >/dev/null +} + +_add_server_user() { + if ! getent passwd unvanquished >/dev/null; then + useradd -rM -d /var/lib/unvanquished-server -c "Unvanquished dedicated server" -s /bin/false unvanquished + fi +} + +_delete_server_user() { + if getent passwd unvanquished >/dev/null; then + userdel unvanquished + groupdel unvanquished + fi +} + +_chown_server_home() { + chown -R unvanquished:unvanquished /var/lib/unvanquished-server +} + +_migrate() { + # delete pre unvanquished-data assets + if [ -d /var/lib/unvanquished ] && ! pacman -Qo /var/lib/unvanquished >/dev/null 2>&1; then + echo "Deleting old asset directory..." + + if [ -d /var/lib/unvanquished/main ]; then + rm -f /var/lib/unvanquished/main/*.pk3 + rmdir /var/lib/unvanquished/main + fi + + if [ -d /var/lib/unvanquished/pkg ]; then + rm -f /var/lib/unvanquished/pkg/*.pk3 + rmdir /var/lib/unvanquished/pkg + fi + + rmdir /var/lib/unvanquished + fi + if [ -d /var/cache/unvanquished ] && ! pacman -Qo /var/cache/unvanquished >/dev/null 2>&1; then + echo "Deleting old asset update cache..." + rm -r /var/cache/unvanquished + fi +} + +post_install() { + _add_server_user + _chown_server_home + _update_desktop_environment +} + +post_upgrade() { + _migrate +} + +pre_remove() { + true +} + +post_remove() { + _delete_server_user + _update_desktop_environment +} |