diff options
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | PKGBUILD | 55 | ||||
-rw-r--r-- | wreckfest.desktop | 8 | ||||
-rw-r--r-- | wreckfest.install | 3 | ||||
-rw-r--r-- | wreckfest.sh | 20 |
5 files changed, 107 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..fad0ff636665 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,21 @@ +pkgbase = wreckfest-wine-steam + pkgdesc = Wreckfest using WINE with data via Steam + pkgver = 1.27 + pkgrel = 1 + url = https://store.steampowered.com/app/228380/Wreckfest/ + install = wreckfest.install + arch = i686 + arch = x86_64 + license = custom + makedepends = steamcmd + makedepends = icoutils + depends = wine + depends = winetricks + source = wreckfest.sh + source = wreckfest.desktop + source = Goldberg_Lan_Steam_Emu_master--a24a9c26.zip::https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/jobs/1590301114/artifacts/download + sha256sums = 18c0153c64618b01106732bd6b3fa511c1f99a1ca1a2eb58f83c5cc281d0b7e5 + sha256sums = b794e5f02c2346e977cb5a5c5ecd8963daf12d10d7c54a84676e20ad199b7941 + sha256sums = 3bfe422a3daf85a02fe6458e4351a4f40f29f513ec8df2c838c7e197844e51cb + +pkgname = wreckfest-wine-steam diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..fbef9e9b7a4b --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,55 @@ +# Maintainer: John-Michael Mulesa <jmulesa [at] gmail.com> + +pkgname=wreckfest-wine-steam +_pkgname=wreckfest +pkgver=1.27 +pkgrel=1 +_steamid=228380 +arch=('i686' 'x86_64') +makedepends=('steamcmd' 'icoutils') +depends=('wine' 'winetricks') +source=("${_pkgname}.sh" "${_pkgname}.desktop" + "Goldberg_Lan_Steam_Emu_master--a24a9c26.zip::https://gitlab.com/Mr_Goldberg/goldberg_emulator/-/jobs/1590301114/artifacts/download") +pkgdesc="Wreckfest using WINE with data via Steam" +license=('custom') +install=wreckfest.install +url='https://store.steampowered.com/app/228380/Wreckfest/' +sha256sums=('18c0153c64618b01106732bd6b3fa511c1f99a1ca1a2eb58f83c5cc281d0b7e5' + 'b794e5f02c2346e977cb5a5c5ecd8963daf12d10d7c54a84676e20ad199b7941' + '3bfe422a3daf85a02fe6458e4351a4f40f29f513ec8df2c838c7e197844e51cb') + +prepare() { + mkdir -p $srcdir/${_pkgname} + + # Use steamcmd to get data. + printf "Enter your Steam username:" + read steam_username + steamcmd +@sSteamCmdForcePlatformType windows +@ShutdownOnFailedCommand 1 +force_install_dir $srcdir/${_pkgname} +login $steam_username "+app_update ${_steamid} validate" +quit + wrestool -x -t -14 -o . ${_pkgname}/Wreckfest.exe + icotool -x -o . *.ico +} + +package() { + mkdir -p $pkgdir/opt/${_pkgname} + + # Move required files to pkgdir + cp -r $srcdir/${_pkgname}/* $pkgdir/opt/${_pkgname}/ + rm -rf $pkgdir/opt/${_pkgname}/steamapps + rm $pkgdir/opt/${_pkgname}/*.vdf + $srcdir/linux/tools/find_interfaces.sh $pkgdir/opt/${_pkgname}/steam_api64.dll > $pkgdir/opt/${_pkgname}/steam_interfaces.txt || true + cp $srcdir/steam_api64.dll $pkgdir/opt/${_pkgname}/ + cp $srcdir/steam_api.dll $pkgdir/opt/${_pkgname}/ + echo "${_steamid}" > $pkgdir/opt/${_pkgname}/steam_appid.txt + + # Install desktop file. + install -D -m 644 $srcdir/${_pkgname}.desktop \ + $pkgdir/usr/share/applications/${_pkgname}.desktop + + # Install icon file. + install -D -m 644 $srcdir/Wreckfest.exe_*_256x256x32.png \ + $pkgdir/usr/share/pixmaps/${_pkgname}.png + + # Install bash startup script. + install -D -m 755 $srcdir/${_pkgname}.sh \ + $pkgdir/usr/bin/${_pkgname} +} diff --git a/wreckfest.desktop b/wreckfest.desktop new file mode 100644 index 000000000000..13e967956da5 --- /dev/null +++ b/wreckfest.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=Wreckfest +Comment=Wreckfest WINE +Exec=/usr/bin/wreckfest +Icon=wreckfest +Terminal=false +Type=Application +Categories=Application;Game; diff --git a/wreckfest.install b/wreckfest.install new file mode 100644 index 000000000000..2aa0d9fe8645 --- /dev/null +++ b/wreckfest.install @@ -0,0 +1,3 @@ +post_install() { + echo "On the first run, game startup may take significantly longer while the wine prefix is prepared." +} diff --git a/wreckfest.sh b/wreckfest.sh new file mode 100644 index 000000000000..69339d1a4fc6 --- /dev/null +++ b/wreckfest.sh @@ -0,0 +1,20 @@ +#!/bin/bash +export WINEPREFIX="$HOME"/.wreckfest/wine +if [ ! -d "$HOME"/.wreckfest ] ; then + mkdir -p "$HOME"/.wreckfest/wine + wineboot -u + winetricks dxvk +fi +cd /opt/wreckfest +while getopts ":lm" opt; do + case ${opt} in + l ) /usr/bin/wine Wreckfest.exe + ;; + m ) /usr/bin/wine Wreckfest_x64.exe + ;; + h ) echo "Usage: wreckfest [-l: legacy 32-bit Wreckfest.exe|-m: modern 64-bit Wreckfest_x64.exe (default)]" + ;; + esac + exit +done +/usr/bin/wine Wreckfest_x64.exe |