summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Szczuczko2015-06-10 19:31:34 +0100
committerAlex Szczuczko2015-06-10 19:31:34 +0100
commit27360d45e30a10efafc3fdff1c629252e9a6bce4 (patch)
treed71da10de18ec80a94a129ccee02dc89d5338137
downloadaur-27360d45e30a10efafc3fdff1c629252e9a6bce4.tar.gz
Initial import
-rw-r--r--.SRCINFO27
-rw-r--r--.gitignore7
-rw-r--r--PKGBUILD74
-rw-r--r--launch-thiswarofmine.sh33
-rw-r--r--thiswarofmine-gog.desktop12
5 files changed, 153 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..43752ee9a0ea
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,27 @@
+pkgbase = thiswarofmine-gog
+ pkgdesc = Experience war not as a soldier, but as a group of civilians in a besieged city.
+ pkgver = 1.2.0.3
+ pkgrel = 1
+ url = http://www.gog.com/game/this_war_of_mine
+ arch = i686
+ arch = x86_64
+ license = custom:commercial
+ depends = openal
+ depends = gcc-libs
+ depends = glibc
+ depends = libx11
+ depends = libxau
+ depends = libxcb
+ depends = libxdmcp
+ depends = libxext
+ depends = libgl
+ options = !strip
+ source = thiswarofmine-gog.desktop
+ source = launch-thiswarofmine.sh
+ source = gog_this_war_of_mine_1.2.0.3.tar.gz::file://gog_this_war_of_mine_1.2.0.3.tar.gz
+ sha256sums = ce9720a6f72402c354bfc12dace96609b847c96c496c2f706080a3696d38ae4e
+ sha256sums = b1ac5ee88d49466585a65db109000c2c5c9cadb315aba06504abdd6ae79b168e
+ sha256sums = 5b5d00a35a1d933ad4bcfefa35c86631d57cf8c72d1535e12cb4daed5a6287c6
+
+pkgname = thiswarofmine-gog
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..eb262a6faa46
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+*.swp
+*.tar.gz
+*.tar.xz
+*.tar
+/extracttest
+/pkg
+/src
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a79f33daa015
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,74 @@
+# Maintainer: Alex Szczuczko <alex@szc.ca>
+
+pkgname=thiswarofmine-gog
+pkgver=1.2.0.3
+pkgrel=1
+pkgdesc="Experience war not as a soldier, but as a group of civilians in a besieged city."
+arch=("i686" "x86_64")
+url="http://www.gog.com/game/this_war_of_mine"
+license=("custom:commercial")
+options=(!strip)
+depends=()
+source=("${pkgname}.desktop"
+ "launch-thiswarofmine.sh"
+ "gog_this_war_of_mine_${pkgver}.tar.gz::file://gog_this_war_of_mine_${pkgver}.tar.gz")
+sha256sums=("ce9720a6f72402c354bfc12dace96609b847c96c496c2f706080a3696d38ae4e"
+ "b1ac5ee88d49466585a65db109000c2c5c9cadb315aba06504abdd6ae79b168e"
+ "5b5d00a35a1d933ad4bcfefa35c86631d57cf8c72d1535e12cb4daed5a6287c6")
+
+# Modify depends for the arch type
+if [ "$CARCH" = "x86_64" ]
+then
+ depends+=("lib32-openal" "lib32-gcc-libs" "lib32-glibc" "lib32-libx11" "lib32-libxau" "lib32-libxcb" "lib32-libxdmcp" "lib32-libxext" "lib32-libgl")
+else
+ depends+=("openal" "gcc-libs" "glibc" "libx11" "libxau" "libxcb" "libxdmcp" "libxext" "libgl")
+fi
+
+# Disable compression of the package
+PKGEXT='.pkg.tar'
+
+package() {
+ # Binaries
+ install -Dm755 "$srcdir/This War Of Mine/game/This War of Mine" "$pkgdir/opt/$pkgname/This War of Mine"
+ ln -s "/usr/lib32/libopenal.so" "$pkgdir/opt/$pkgname/libOpenAL.so"
+
+ # Launcher
+ install -m755 -t "$pkgdir/opt/$pkgname/" "$srcdir/launch-thiswarofmine.sh"
+
+ # Data
+ find "$srcdir/This War Of Mine/game/" -maxdepth 1 -type f "(" -name "*.dat" -or -name "*.idx" ")" -print0 | \
+ xargs -0 install -m644 -t "$pkgdir/opt/$pkgname/"
+
+ # Docs
+ install -m755 -d "$pkgdir/opt/$pkgname/docs"
+ install -m644 -t "$pkgdir/opt/$pkgname/docs" \
+ "$srcdir/This War Of Mine/game/Changelog.txt" \
+ "$srcdir/This War Of Mine/docs/End User License Agreement.txt"
+
+ # Icon
+ install -m644 -t "$pkgdir/opt/$pkgname/" "$srcdir/This War Of Mine/support/gog-this-war-of-mine.png"
+
+ #
+ # System integration
+ #
+
+ # /bin
+ install -m755 -d "$pkgdir/usr/bin/"
+ ln -s "/opt/$pkgname/launch-thiswarofmine.sh" "$pkgdir/usr/bin/$pkgname"
+
+ # License
+ install -m755 -d "$pkgdir/usr/share/licenses/$pkgname/"
+ ln -s "/opt/$pkgname/docs/End User License Agreement.txt" "$pkgdir/usr/share/licenses/$pkgname/EULA"
+
+ # Icon
+ install -m755 -d "$pkgdir/usr/share/pixmaps/"
+ ln -s "/opt/$pkgname/gog-this-war-of-mine.png" "$pkgdir/usr/share/pixmaps/${pkgname}.png"
+
+ # .desktop File
+ install -m755 -d "$pkgdir/usr/share/applications/"
+ install -m644 -t "$pkgdir/usr/share/applications/" "$srcdir/${pkgname}.desktop"
+
+ # Doc
+ install -m755 -d "$pkgdir/usr/share/doc/"
+ ln -s "/opt/$pkgname/docs" "$pkgdir/usr/share/doc/$pkgname"
+}
diff --git a/launch-thiswarofmine.sh b/launch-thiswarofmine.sh
new file mode 100644
index 000000000000..4de4c2658c1a
--- /dev/null
+++ b/launch-thiswarofmine.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+# This is a wrapper that works around the application's single-user design for multi-user systems.
+
+set -e
+set -u
+
+game_dir="/opt/thiswarofmine-gog"
+: ${XDG_DATA_HOME:=$HOME/.local/share}
+user_dir="$XDG_DATA_HOME/thiswarofmine-gog"
+
+make_user_dir() {
+ echo "Creating a user directory for the game. This only needs to be done once, future runs will skip this step."
+
+ mkdir -p "$user_dir/"
+
+ # Read-only
+ find "$game_dir/" -maxdepth 1 -print0 | xargs -0 ln -s -t "$user_dir/"
+
+ echo "User directory has been created."
+}
+
+launch_game() {
+ cd "$user_dir"
+ ./"This War of Mine"
+}
+
+if [ ! -f "$user_dir/This War of Mine" ]
+then
+ make_user_dir
+fi
+
+launch_game
diff --git a/thiswarofmine-gog.desktop b/thiswarofmine-gog.desktop
new file mode 100644
index 000000000000..26378a14f583
--- /dev/null
+++ b/thiswarofmine-gog.desktop
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Icon=/usr/share/pixmaps/thiswarofmine-gog.png
+Exec=/usr/bin/thiswarofmine-gog
+Terminal=false
+StartupNotify=false
+
+Name=This War of Mine
+Comment=Experience war not as a soldier, but as a group of civilians in a besieged city.
+
+Categories=Game;