summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn-Michael Mulesa2021-09-07 22:02:05 +1000
committerJohn-Michael Mulesa2021-09-07 22:02:05 +1000
commita7ba929b6e56b967e43320905092d6b340dedac4 (patch)
treeaf0292a44bac59d011f59647b38f773a51de0563
downloadaur-a7ba929b6e56b967e43320905092d6b340dedac4.tar.gz
Initial commit.
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD44
-rw-r--r--aoe3.desktop8
-rw-r--r--aoe3.install4
-rw-r--r--aoe3.pngbin0 -> 154982 bytes
-rw-r--r--aoe3.sh23
6 files changed, 99 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..eff2c5e0c27d
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = aoe3-wine-steam
+ pkgdesc = Age of Empires 3 using WINE with data via Steam
+ pkgver = 1.03
+ pkgrel = 1
+ url = https://store.steampowered.com/app/105450/Age_of_Empires_III_2007/
+ install = aoe3.install
+ arch = i686
+ arch = x86_64
+ license = custom
+ makedepends = steamcmd
+ depends = wine
+ depends = winetricks
+ source = aoe3.sh
+ source = aoe3.desktop
+ source = aoe3.png
+ sha256sums = c1bcb8d0a59a584bd6275f94ed9f2fb3d90fc75556dc401dcfea04910110063f
+ sha256sums = 7a53cc2f88e8ee8d4233428438870803f4e662a4b8ee61a3c05aa1fe8541745c
+ sha256sums = ec3d23d8b0a15a10ed15141fd236efb523f056745df3aabed29e0a6eb71689b9
+
+pkgname = aoe3-wine-steam
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..21ce5954e02e
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,44 @@
+# Maintainer: John-Michael Mulesa <jmulesa [at] gmail.com>
+
+pkgname=aoe3-wine-steam
+pkgver=1.03
+pkgrel=1
+arch=('i686' 'x86_64')
+makedepends=('steamcmd')
+depends=('wine' 'winetricks')
+source=("aoe3.sh" "aoe3.desktop" "aoe3.png")
+pkgdesc="Age of Empires 3 using WINE with data via Steam"
+install=aoe3.install
+license=('custom')
+url='https://store.steampowered.com/app/105450/Age_of_Empires_III_2007/'
+sha256sums=('c1bcb8d0a59a584bd6275f94ed9f2fb3d90fc75556dc401dcfea04910110063f'
+ '7a53cc2f88e8ee8d4233428438870803f4e662a4b8ee61a3c05aa1fe8541745c'
+ 'ec3d23d8b0a15a10ed15141fd236efb523f056745df3aabed29e0a6eb71689b9')
+
+prepare() {
+ mkdir -p $srcdir/aoe3
+
+ # Use steamcmd to get data.
+ printf "Enter your Steam username:"
+ read steam_username
+ steamcmd +@sSteamCmdForcePlatformType windows +@ShutdownOnFailedCommand 1 +force_install_dir $srcdir/aoe3 +login $steam_username "+app_update 105450 validate" +quit
+}
+
+package() {
+ mkdir -p $pkgdir/opt/aoe3
+
+ # Move required files to pkgdir
+ cp -r $srcdir/aoe3/bin/* $pkgdir/opt/aoe3/
+
+ # Install desktop file.
+ install -D -m 644 $srcdir/aoe3.desktop \
+ $pkgdir/usr/share/applications/aoe3.desktop
+
+ # Install icon file.
+ install -D -m 644 $srcdir/aoe3.png \
+ $pkgdir/usr/share/pixmaps/aoe3.png
+
+ # Install bash startup script.
+ install -D -m 755 $srcdir/aoe3.sh \
+ $pkgdir/usr/bin/aoe3
+}
diff --git a/aoe3.desktop b/aoe3.desktop
new file mode 100644
index 000000000000..98ff565ce1a9
--- /dev/null
+++ b/aoe3.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Age of Empires 3
+Comment=Age of Empires 3 Complete Collection
+Exec=/usr/bin/aoe3
+Icon=aoe3
+Terminal=false
+Type=Application
+Categories=Application;Game;
diff --git a/aoe3.install b/aoe3.install
new file mode 100644
index 000000000000..79eeec24f3e9
--- /dev/null
+++ b/aoe3.install
@@ -0,0 +1,4 @@
+post_install() {
+ echo "On the first run, game startup may take significantly longer while the wine prefix is prepared."
+ echo "'aoe3 -o' will run the base game, 'aoe3 -x' will run warchiefs, and 'aoe3 -y' (launcher default) will run asian dynasties."
+}
diff --git a/aoe3.png b/aoe3.png
new file mode 100644
index 000000000000..5116b04346b5
--- /dev/null
+++ b/aoe3.png
Binary files differ
diff --git a/aoe3.sh b/aoe3.sh
new file mode 100644
index 000000000000..604cb7df3fe4
--- /dev/null
+++ b/aoe3.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+export WINEPREFIX="$HOME"/.aoe3/wine
+if [ ! -d "$HOME"/.aoe3 ] ; then
+ mkdir -p "$HOME"/.aoe3/wine
+ wineboot -u
+ # vcrun6 fails to install; still fixing audio
+ winetricks corefonts d9vk quartz mfc42 l3codecx msxml4 riched20
+fi
+cd /opt/aoe3
+while getopts ":oxy" opt; do
+ case ${opt} in
+ o ) /usr/bin/wine age3.exe
+ ;;
+ x ) /usr/bin/wine age3x.exe
+ ;;
+ y ) /usr/bin/wine age3y.exe
+ ;;
+ h ) echo "Usage: aoe3 [-o: original age3.exe|-x warchiefs age3x.exe|-y asiandynasties age3y.exe (default)]"
+ ;;
+ esac
+ exit
+done
+/usr/bin/wine age3y.exe