summaryrefslogtreecommitdiff
path: root/community/tremulous
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-12-05 23:15:23 +0000
committerroot <root@rshg054.dnsready.net>2011-12-05 23:15:23 +0000
commit55d1e19e71b453a0f47c599f281a2ad2644247d2 (patch)
treee4988a18e52a5f283c69611807002a1a20c918ed /community/tremulous
parent392d2d86b3657d90c3954a44dd6e3e5a4d12d455 (diff)
Mon Dec 5 23:15:23 UTC 2011
Diffstat (limited to 'community/tremulous')
-rw-r--r--community/tremulous/PKGBUILD109
-rw-r--r--community/tremulous/fix_fs26749.patch21
-rw-r--r--community/tremulous/tremded.sh17
-rw-r--r--community/tremulous/tremdedrc1
-rw-r--r--community/tremulous/tremulous.sh14
5 files changed, 109 insertions, 53 deletions
diff --git a/community/tremulous/PKGBUILD b/community/tremulous/PKGBUILD
index b26368a8b..3f127903e 100644
--- a/community/tremulous/PKGBUILD
+++ b/community/tremulous/PKGBUILD
@@ -1,69 +1,72 @@
-# $Id: PKGBUILD 6443 2009-12-10 14:33:11Z daenyth $
-# Contributor: Slash <demodevil5[at]yahoo[dot]com>
-# Contributor: Vesa Kaihlavirta <vegai@iki.fi>
-# Maintainer: Daenyth <Daenyth+Arch AT gmail DOT com>
+#Contributor: Daenyth <Daenyth+arch [AT] gmail [dot] com>
pkgname=tremulous
pkgver=1.1.0
-pkgrel=7
-pkgdesc="A completely free online team based FPS/RTS hybrid game based on the ioquake3 engine."
-url="http://tremulous.net/"
-license=("GPL")
+pkgrel=8
+pkgdesc="A free team based FPS/RTS hybrid built on the ioq3 engine. Includes community updates."
+url="http://tremulous.net"
arch=('i686' 'x86_64')
-depends=("sdl" "openal>=1.7.411" "tremulous-data=$pkgver")
-makedepends=(subversion mesa)
-source=('tremulous.launcher' 'tremded.launcher' 'tremulous.desktop' 'tremulous.xpm'
- "backport.patch::http://source.mercenariesguild.net/client/trunk/patches/backport-client-r1112.patch?revision=2"
- "fixfavorites.patch::http://source.mercenariesguild.net/client/trunk/patches/slacker-fixfavorites.patch?revision=15"
- "resolution.patch::http://source.mercenariesguild.net/client/trunk/patches/Lakitu7-backport_resolution_cvars.patch?revision=71"
- "sortping.patch::http://source.mercenariesguild.net/client/trunk/patches/Amanieu_sortping_fix_client.patch?revision=3")
-md5sums=('5d2a7f0459affe970fe2b33b7ef18780'
- '8775c2d5b9ec6ce9b9d85ab79ec9879d'
- '9974bde01b95b6d967beb76c31c0e742'
- '7e3a881608f1c7c0ccece1e07fcf92d8'
- '7b3bf98d1ae3ea89da58e3c7775bf452'
- '510384ba8699aceac13aaa15d722ced7'
- '4d39ef28a0924bdc33234a01fb54f846'
- '85315bd6d35519bd231e9771552a8e49')
-
-build() {
- cd $srcdir
+license=('GPL')
+depends=('sdl' 'openal>=1.7.411' 'libgl' "tremulous-data=$pkgver" "freetype2")
+makedepends=(mesa)
+provides=("tremulous-updated=$pkgver-$pkgrel")
+conflicts=('tremulous-updated')
+replaces=('trem-backport' 'tremulous-updated')
+source=(http://releases.mercenariesguild.net/client/mg-client-manual.txt
+ http://releases.mercenariesguild.net/client/mgclient_source_Release_1.011.tar.gz
+ http://releases.mercenariesguild.net/tremded/mg_tremded_source_1.01.tar.gz
+ http://projects.mercenariesguild.net/attachments/download/109/game.qvm
+ http://projects.mercenariesguild.net/attachments/download/111/lakitu7_qvm.txt
+ tremdedrc
+ tremulous.desktop
+ tremded.sh
+ tremulous.sh
+ tremulous.xpm
+ fix_fs26749.patch)
- # Check out the revision recommended by the developers
- svn co svn://svn.icculus.org/tremulous/trunk/ --config-dir ./ -r 1114 tremulous-src || return 1
+backup=('etc/tremdedrc')
+noextract=(mg_tremded_source_1.01.tar.gz)
- # Compile Source
- cd tremulous-src
+md5sums=('e0e1b6e03e7596da00a77fe638560402'
+ '95e526b961f875ba66b6fdd4842c913b'
+ '938bdf944dff667b74e2132a87a49780'
+ '90343619d140557d0c481a61ffa5756c'
+ 'a0b8970b33a27798c125f9152049013c'
+ 'f0056120d0192a0d4d591d1114439c52'
+ 'aef37632a2edcf74a53503a49530bad2'
+ 'b755d7c022cddc449ca2de508dfeee30'
+ '8e89473f9fdb481ad44e5cea5f6f681e'
+ '7e3a881608f1c7c0ccece1e07fcf92d8'
+ 'e85511d8a9e7309dc24fb90917463900')
- # Add patches recommended by the developers
- patch -Np0 -i $srcdir/backport.patch || return 1
- patch -Np0 -i $srcdir/fixfavorites.patch || return 1
- patch -Np0 -i $srcdir/resolution.patch || return 1
- patch -Np0 -i $srcdir/sortping.patch || return 1
+build() {
+ local _arch=${CARCH/i686/x86}
+ # Build and install the server
+ mkdir -p $srcdir/tremded
+ bsdtar -x -C $srcdir/tremded -f $srcdir/mg_tremded_source_1.01.tar.gz
+ cd $srcdir/tremded
make || return 1
-}
-
-package() {
- cd $srcdir/tremulous-src
-
- install -dm755 $pkgdir/opt/tremulous/
+ install -D -m755 build/release-linux-$_arch/tremded.$_arch $pkgdir/opt/tremulous/tremded.$_arch
+ install -D -m644 $srcdir/tremdedrc $pkgdir/etc/tremdedrc
+ install -D -m644 $srcdir/game.qvm $pkgdir/opt/tremulous/game.qvm
+ install -D -m755 $srcdir/tremded.sh $pkgdir/usr/bin/tremded
- # Install Binaries
- local _arch=${CARCH/i686/x86}
- install -m755 build/release-linux-$_arch/*.$_arch $pkgdir/opt/tremulous
-
- cd $srcdir
+ # Build and install the client
+ cd $srcdir/Release_1.011
+ patch -Np1 -i $srcdir/fix_fs26749.patch || return 1
+ make || return 1
+ install -Dm755 build/release-linux-$_arch/tremulous.$_arch $pkgdir/opt/tremulous/tremulous.$_arch
+ install -D -m755 $srcdir/tremulous.sh $pkgdir/usr/bin/tremulous
- # Install Client Launcher
- install -D -m755 tremulous.launcher $pkgdir/usr/bin/tremulous
+ # Install the documentation
+ install -Dm644 $srcdir/mg-client-manual.txt $pkgdir/usr/share/tremulous/mg-client-manual.txt
+ install -Dm644 $srcdir/lakitu7_qvm.txt $pkgdir/usr/share/tremulous/lakitu7_qvm.txt
- # Install Server Launcher
- install -D -m755 tremded.launcher $pkgdir/usr/bin/tremded
+ # Install the .desktop and icon files
+ install -D -m644 $srcdir/tremulous.xpm $pkgdir/usr/share/pixmaps/tremulous.xpm
+ install -D -m644 $srcdir/tremulous.desktop $pkgdir/usr/share/applications/tremulous.desktop
- # Install Desktop Icons
- install -D -m644 tremulous.desktop $pkgdir/usr/share/applications/tremulous.desktop
- install -D -m644 tremulous.xpm $pkgdir/usr/share/pixmaps/tremulous.xpm
}
# vim:set ts=2 sw=2 et:
diff --git a/community/tremulous/fix_fs26749.patch b/community/tremulous/fix_fs26749.patch
new file mode 100644
index 000000000..12a73138c
--- /dev/null
+++ b/community/tremulous/fix_fs26749.patch
@@ -0,0 +1,21 @@
+diff -ruN Release_1.011-old/src/qcommon/parse.c Release_1.011/src/qcommon/parse.c
+--- Release_1.011-old/src/qcommon/parse.c 2011-12-02 19:11:49.307368651 -0500
++++ Release_1.011/src/qcommon/parse.c 2011-12-02 19:13:27.556836387 -0500
+@@ -981,7 +981,7 @@
+ {
+ if (*string == '\"')
+ {
+- strcpy(string, string+1);
++ memmove(string, string+1, strlen(string));
+ }
+ if (string[strlen(string)-1] == '\"')
+ {
+@@ -1784,7 +1784,7 @@
+ if ((*ptr == '\\' || *ptr == '/') &&
+ (*(ptr+1) == '\\' || *(ptr+1) == '/'))
+ {
+- strcpy(ptr, ptr+1);
++ memmove(ptr, ptr+1, strlen(ptr));
+ }
+ else
+ {
diff --git a/community/tremulous/tremded.sh b/community/tremulous/tremded.sh
new file mode 100644
index 000000000..339bdd501
--- /dev/null
+++ b/community/tremulous/tremded.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+CARCH=`uname -m`
+ext=x86; [ "$CARCH" = 'x86_64' ] && ext=x86_64
+
+[ -f /etc/tremdedrc ] && . /etc/tremdedrc
+[ -f "$HOME/.tremdedrc" ] && . "$HOME/.tremdedrc"
+
+if [ ! -r "$HOME/.tremulous/base/vm/game.qvm" ]; then
+ echo "Cannot find game.qvm -- linking to installed version."
+ if [ ! -d "$HOME/.tremulous/base/vm" ]; then
+ mkdir -p "$HOME/.tremulous/base/vm/" || exit 1
+ fi
+ ln -s /opt/tremulous/game.qvm "$HOME/.tremulous/base/vm/game.qvm" || exit 1
+fi
+
+cd /opt/tremulous/
+./tremded.$ext "$TREM_ARGS" "$@"
diff --git a/community/tremulous/tremdedrc b/community/tremulous/tremdedrc
new file mode 100644
index 000000000..7fbe122f6
--- /dev/null
+++ b/community/tremulous/tremdedrc
@@ -0,0 +1 @@
+TREM_ARGS="+set dedicated 1 +exec server.cfg"
diff --git a/community/tremulous/tremulous.sh b/community/tremulous/tremulous.sh
new file mode 100644
index 000000000..01575befc
--- /dev/null
+++ b/community/tremulous/tremulous.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+CARCH=`uname -m`
+ext=x86; [ "$CARCH" = 'x86_64' ] && ext=x86_64
+
+if [ ! -r "$HOME/.tremulous/base/vm/game.qvm" ]; then
+ echo "Cannot find game.qvm -- linking to installed version."
+ if [ ! -d "$HOME/.tremulous/base/vm" ]; then
+ mkdir -p "$HOME/.tremulous/base/vm/" || exit 1
+ fi
+ ln -s /opt/tremulous/game.qvm "$HOME/.tremulous/base/vm/game.qvm" || exit 1
+fi
+
+cd /opt/tremulous/
+./tremulous.$ext "$@"