summaryrefslogtreecommitdiff
path: root/community/tremulous
diff options
context:
space:
mode:
Diffstat (limited to 'community/tremulous')
-rw-r--r--community/tremulous/PKGBUILD77
-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.desktop8
-rw-r--r--community/tremulous/tremulous.sh14
-rw-r--r--community/tremulous/tremulous.xpm90
7 files changed, 228 insertions, 0 deletions
diff --git a/community/tremulous/PKGBUILD b/community/tremulous/PKGBUILD
new file mode 100644
index 000000000..91b84c9e5
--- /dev/null
+++ b/community/tremulous/PKGBUILD
@@ -0,0 +1,77 @@
+# $Id: PKGBUILD 86782 2013-03-22 00:57:25Z eric $
+#Contributor: Daenyth <Daenyth+arch [AT] gmail [dot] com>
+
+pkgname=tremulous
+pkgver=1.1.0
+pkgrel=9
+pkgdesc="A free team based FPS/RTS hybrid built on the ioq3 engine. Includes community updates."
+url="http://tremulous.net"
+arch=('i686' 'x86_64')
+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)
+
+backup=('etc/tremdedrc')
+noextract=(mg_tremded_source_1.01.tar.gz)
+
+md5sums=('e0e1b6e03e7596da00a77fe638560402'
+ '95e526b961f875ba66b6fdd4842c913b'
+ '938bdf944dff667b74e2132a87a49780'
+ '90343619d140557d0c481a61ffa5756c'
+ 'a0b8970b33a27798c125f9152049013c'
+ 'f0056120d0192a0d4d591d1114439c52'
+ 'aef37632a2edcf74a53503a49530bad2'
+ 'b755d7c022cddc449ca2de508dfeee30'
+ '8e89473f9fdb481ad44e5cea5f6f681e'
+ '7e3a881608f1c7c0ccece1e07fcf92d8'
+ 'e85511d8a9e7309dc24fb90917463900')
+
+build() {
+ local _arch=${CARCH/i686/x86}
+
+ # Build the server
+ mkdir -p "$srcdir/tremded"
+ bsdtar -x -C "$srcdir/tremded" -f "$srcdir/mg_tremded_source_1.01.tar.gz"
+ cd "$srcdir/tremded"
+ make
+# Build the client
+ cd "$srcdir/Release_1.011"
+ patch -Np1 -i "$srcdir/fix_fs26749.patch"
+ make
+}
+
+package() {
+ cd "$srcdir/tremded"
+ 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"
+
+ cd "$srcdir/Release_1.011"
+ install -Dm755 build/release-linux-$_arch/tremulous.$_arch "$pkgdir/opt/tremulous/tremulous.$_arch"
+ install -D -m755 "$srcdir/tremulous.sh" "$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 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"
+}
+
+# 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.desktop b/community/tremulous/tremulous.desktop
new file mode 100644
index 000000000..357c357bd
--- /dev/null
+++ b/community/tremulous/tremulous.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Tremulous
+Comment=A free team based FPS/RTS hybrid built on the ioq3 engine. Includes community updates.
+Icon=/usr/share/pixmaps/tremulous.xpm
+Exec=tremulous
+Terminal=false
+Categories=Game;ActionGame;
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 "$@"
diff --git a/community/tremulous/tremulous.xpm b/community/tremulous/tremulous.xpm
new file mode 100644
index 000000000..5e070c862
--- /dev/null
+++ b/community/tremulous/tremulous.xpm
@@ -0,0 +1,90 @@
+/* XPM */
+static char * tremulous_xpm[] = {
+"48 48 39 1",
+" c None",
+". c #0F0F0F",
+"+ c #181818",
+"@ c #000000",
+"# c #282828",
+"$ c #212121",
+"% c #060606",
+"& c #1D1D1D",
+"* c #252525",
+"= c #080808",
+"- c #0E0E0E",
+"; c #050505",
+"> c #0B0B0B",
+", c #0C0C0C",
+"' c #232323",
+") c #1F1F1F",
+"! c #030303",
+"~ c #0D0D0D",
+"{ c #040404",
+"] c #020202",
+"^ c #141414",
+"/ c #1E1E1E",
+"( c #131313",
+"_ c #111111",
+": c #010101",
+"< c #191919",
+"[ c #090909",
+"} c #292929",
+"| c #070707",
+"1 c #121212",
+"2 c #1B1B1B",
+"3 c #161616",
+"4 c #0A0A0A",
+"5 c #222222",
+"6 c #242424",
+"7 c #1A1A1A",
+"8 c #151515",
+"9 c #101010",
+"0 c #171717",
+" ",
+" ... ",
+" +@@@@@# ",
+" $@@@@@@% ",
+" &@@@@@@@@ * ",
+" =- ;@@@@@@@@> ,@- ",
+" @@' ;@@@@@@@@@ ,@@ ",
+" )@! ;@@@@@@@@@ ~@@; ",
+" ;@{ ]@@@@@@@@@~ ,@@; ",
+" ^@@] /@@@@@@@@@@@( -@@; ",
+" .@@; /@@@@@@@@@@@ -@@@/ ",
+" _@@] /@@@@@@@@@@@ #:@@@_ ",
+" @@@; /@@@@@@@@@@< :@@@- ",
+" :@@! ]@@@@@@@@@ @@@@- ",
+" $@@@; ;@@@@@@@@[ ~]@@@- ",
+" %@@@; }!@@@@@@@@- }|@@@@, ",
+" !@@@; 1@@@@@@@@@@ 2@@@@@~ ",
+" ;@@@% [@@@@@@@@@@@@@@@@, ",
+" @@@@{|||:@@@@@@@@@@@@@@!- ",
+" -@@@@@@@@@@@@@@@@@@@@@] ",
+" .@@@@@@@@@@@@@@@@@@@{ ",
+" ]@@@@@@@@@@@@@@@@@ ",
+" .@@@@@@@@@@@@@@@@ ",
+" +@@@@@@@@@@@@@@@@@@@@@@@@@@/ ",
+" =@@@@@@@@@@@@@@@@@@@@@@@@@/ ",
+" .=@@@@@@@@@@@@@@@@@@% ",
+" ,@@@@@@@@@@@@@@@@@@@@@ ",
+" 2>]@@@@@@@@@@@@@@@@@@@@@@@3 ",
+" *:@@@@@@@@@@@@@@@@@@@@@@@@@^ ",
+" @@@||| 4]@@@@@@@@@@@@@@@@@ ",
+" 556 _@@@@@@@@@@@@@@@@3 ",
+" >@@@@@@@@@@@@@@@@+ ",
+" ;@@@@@@@@@@@@@@@@@7 ",
+" &@@@@@@@@@@@@@@@@@@@+ ",
+" @@@@@@@@@@@@@@@@@@@@@/ ",
+" 8@@@@@@@@@@@@@@@[ =@@| ",
+" ;@@:::@@@@@@@@@[ %@@[ ",
+" @@9 (@@@@@@@4 =@@ ",
+" ,@@ {:@@: {@! ",
+" !@@ << 3@@0 ",
+" !@- 3@@6 ",
+" ]@( (@[ ",
+" 7@@ ]@ ",
+" 7@@ * ",
+" 7@} ",
+" 7@ ",
+" . ",
+" "};