Awesome! Thanks for the consideration!
Search Criteria
Package Details: unrealtournament 469c-4
Package Actions
Git Clone URL: | https://aur.archlinux.org/unrealtournament.git (read-only, click to copy) |
---|---|
Package Base: | unrealtournament |
Description: | The classic Unreal Tournament from 1999 (Retail CD or DVD required) |
Upstream URL: | http://www.unrealtournament.com/ |
Keywords: | game unreal ut |
Licenses: | custom |
Submitter: | XenGi |
Maintainer: | XenGi |
Last Packager: | XenGi |
Votes: | 13 |
Popularity: | 0.171355 |
First Submitted: | 2016-03-08 14:36 (UTC) |
Last Updated: | 2023-06-12 10:08 (UTC) |
Dependencies (7)
- libfmod
- libxmp (libxmp-git)
- mpg123 (mpg321, mpg123-svn)
- openal (openal-git)
- sdl2 (sdl2-git)
- sdl2_ttf
- innoextract (innoextract-git) (optional) – Extract GOG release
Required by (5)
Sources (4)
travisghansen commented on 2023-06-12 17:07 (UTC)
XenGi commented on 2023-06-12 09:40 (UTC) (edited on 2023-06-12 10:09 (UTC) by XenGi)
thx @travisghansen I integrated your changes into the package. I didn't change the games install path because mappacks depend on it being stable.
travisghansen commented on 2023-06-12 06:09 (UTC)
You can add me as a co-maintainer but this is what I've put together:
diff --git a/.SRCINFO b/.SRCINFO
index 6a29d92..df8bdc4 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -6,15 +6,22 @@ pkgbase = unrealtournament
arch = i686
arch = x86_64
license = custom
+ depends = libfmod
+ depends = libxmp
+ depends = mpg123
+ depends = openal
+ depends = sdl2
+ depends = sdl2_ttf
optdepends = innoextract: Extract GOG release
- noextract = OldUnreal-UTPatch469c-Linux.tar.bz2
+ noextract = OldUnreal-UTPatch469c-Linux-x86.tar.bz2
+ noextract = OldUnreal-UTPatch469c-Linux-amd64.tar.bz2
source = ut.desktop
source = ut.svg.zstd
sha256sums = fea5efdcac67564f2b5b8ef215115990739243a53a5f86e67f9414081d5b28dc
sha256sums = 8fc6bc71f20b8395d75fad8b30d18fc6c9d39fee1f9633be090ad8fd779e8827
- source_i686 = OldUnreal-UTPatch469c-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-x86.tar.bz2
+ source_i686 = https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-x86.tar.bz2
sha256sums_i686 = 30978800c100e8c5a20fbc66a04b9e12f843424b3a811b04e6fb8e1b6b5d6543
- source_x86_64 = OldUnreal-UTPatch469c-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-amd64.tar.bz2
+ source_x86_64 = https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v469c/OldUnreal-UTPatch469c-Linux-amd64.tar.bz2
sha256sums_x86_64 = 4c99bde06d26b724f14471d374d4d6105dbdc98c56ec2a40af3fa541956eeed9
pkgname = unrealtournament
diff --git a/PKGBUILD b/PKGBUILD
index 1abd024..d4183d5 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,16 +8,17 @@ pkgdesc="The classic Unreal Tournament from 1999 (Retail CD or DVD required)"
arch=('i686' 'x86_64')
url="http://www.unrealtournament.com/"
license=('custom')
+depends=('libfmod' 'libxmp' 'mpg123' 'openal' 'sdl2' 'sdl2_ttf')
optdepends=('innoextract: Extract GOG release')
source=("ut.desktop"
"ut.svg.zstd")
-source_i686+=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-x86.tar.bz2")
-source_x86_64+=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2::https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-amd64.tar.bz2")
-noextract=("OldUnreal-UTPatch${pkgver}-Linux.tar.bz2")
+source_i686+=("https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-x86.tar.bz2")
+source_x86_64+=("https://github.com/OldUnreal/UnrealTournamentPatches/releases/download/v${pkgver}/OldUnreal-UTPatch${pkgver}-Linux-amd64.tar.bz2")
+noextract=("OldUnreal-UTPatch${pkgver}-Linux-x86.tar.bz2" "OldUnreal-UTPatch${pkgver}-Linux-amd64.tar.bz2")
sha256sums=('fea5efdcac67564f2b5b8ef215115990739243a53a5f86e67f9414081d5b28dc'
'8fc6bc71f20b8395d75fad8b30d18fc6c9d39fee1f9633be090ad8fd779e8827')
-sha256sums_i686+=('30978800c100e8c5a20fbc66a04b9e12f843424b3a811b04e6fb8e1b6b5d6543')
-sha256sums_x86_64+=('4c99bde06d26b724f14471d374d4d6105dbdc98c56ec2a40af3fa541956eeed9')
+sha256sums_i686=('30978800c100e8c5a20fbc66a04b9e12f843424b3a811b04e6fb8e1b6b5d6543')
+sha256sums_x86_64=('4c99bde06d26b724f14471d374d4d6105dbdc98c56ec2a40af3fa541956eeed9')
prepare() {
# Mount the UT (GOTY) cd/image or unpack the GOG distribution with the innoextract tool.
@@ -54,16 +55,30 @@ EOF
package() {
# Set game destination
- export _game_dir="/opt/ut"
+ export _game_dir="/opt/${pkgname}"
+
+ [ "$CARCH" = "i686" ] && _system_dir=${_game_dir}/System
+ [ "$CARCH" = "x86_64" ] && _system_dir=${_game_dir}/System64
+
+ [ "$CARCH" = "i686" ] && _srctar=OldUnreal-UTPatch${pkgver}-Linux-x86.tar.bz2
+ [ "$CARCH" = "x86_64" ] && _srctar=OldUnreal-UTPatch${pkgver}-Linux-amd64.tar.bz2
# Create game directory
install --mode=755 -d -- ${pkgdir}${_game_dir}/{Music,Sounds,Maps}
# Unpack patch into game directory
- tar xaf ${srcdir}/OldUnreal-UTPatch${pkgver}-Linux.tar.bz2 -C ${pkgdir}${_game_dir}
+ tar xaf ${srcdir}/${_srctar} -C ${pkgdir}${_game_dir}
# fix permissions
find ${pkgdir}${_game_dir} -type d -exec chmod 755 {} \;
+ # https://github.com/OldUnreal/UnrealTournamentPatches#linux-installation
+ # distro deps
+ rm ${pkgdir}${_system_dir}/libfmod.so*
+ rm ${pkgdir}${_system_dir}/libmpg123.so*
+ rm ${pkgdir}${_system_dir}/libopenal.so*
+ rm ${pkgdir}${_system_dir}/libSDL2*
+ rm ${pkgdir}${_system_dir}/libxmp.so*
+
# Copy the Music and Sounds directories from the distribution directory into the game directory
install --mode=644 -t ${pkgdir}${_game_dir}/Music ${srcdir}/dist_dir/Music/*
install --mode=644 -t ${pkgdir}${_game_dir}/Sounds ${srcdir}/dist_dir/Sounds/*
@@ -81,9 +96,8 @@ package() {
# Extract all compressed maps (i.e., maps with a .uz extension) into your game's Maps directory as follows.
# If there are no compressed maps in your game distribution folder, you may ignore this step.
#for i in /mnt/Maps/*.uz; do ./System64/ucc-bin decompress $i; done
- [ "$CARCH" = "i686" ] && _system_dir=${_game_dir}/System
- [ "$CARCH" = "x86_64" ] && _system_dir=${_game_dir}/System64
- find ${srcdir}/dist_dir/Maps/ -name "*.uz" -exec ${pkgdir}${_system_dir}/ucc-bin decompress {} \;
+ find ${srcdir}/dist_dir/Maps/ -name "*.uz" -exec ${pkgdir}${_system_dir}/ucc-bin decompress {} -nohomedir \;
+ mv ${pkgdir}${_system_dir}/*.unr ${pkgdir}${_game_dir}/Maps
install --mode 755 -d -- ${pkgdir}/usr/bin
ln -s ${_system_dir}/ut-bin ${pkgdir}/usr/bin/ut
travisghansen commented on 2023-06-12 01:56 (UTC)
I just tried to install this with yay and all the maps ending up in my home dir as well. Not sure what the fix is but I can mess with it for a bit and see if I can get it to package correctly.
XenGi commented on 2023-06-03 15:56 (UTC) (edited on 2023-06-03 15:58 (UTC) by XenGi)
@alex.pyattaev thx for testing. No idea how this could get through my tests. It should work now. I fixed all the permissions and ownerships too. The bonuspacks are also happy now. unrealtournament-bonuspack1 is the only one which is still not able to install because it tries to overwrite /opt/ut/System/epiccustommodels.u
and /opt/ut/System/relics.u
.
alex.pyattaev commented on 2023-06-02 05:04 (UTC)
Hi! We've tried this package and found a couple of issues: 1. when installer is used via yay, it fails to find /Music however, when used via makepkg directly, it finds all the files, but unpacks them into the user's home instead of /opt/ut/ . Naturally, one needs to manually copy the maps etc into /opt/ut/Maps for stuff to work. 2. Certain files such as multimesh.u and de.u are not copied to /opt/ut, as a result game fails to host multiplayer sessions. Again, manually copying them solves the issue.
XenGi commented on 2023-05-03 19:35 (UTC) (edited on 2023-06-03 15:59 (UTC) by XenGi)
The package is now purely based on the OldUnreal patch and the installation is massively simplified. Let me know if anything doesn't work. Happy fragging!
XenGi commented on 2023-05-03 10:17 (UTC)
I'll try to revamp the whole package in the next few days. Based on the OldUnreal patches much of the stuff in the PKGBUILD is not needed anymore.
freeartist commented on 2022-10-21 20:58 (UTC)
installed but not launch https://controlc.com/74531477
xordspar0 commented on 2022-06-24 15:58 (UTC)
ossp isn't necessary with the OldUnreal patches. There's an OpenAL sound driver now.
Pinned Comments
XenGi commented on 2023-05-03 19:35 (UTC) (edited on 2023-06-03 15:59 (UTC) by XenGi)
The package is now purely based on the OldUnreal patch and the installation is massively simplified. Let me know if anything doesn't work. Happy fragging!