summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorStelios Tsampas2023-09-06 17:59:15 +0300
committerStelios Tsampas2023-09-06 17:59:15 +0300
commit9931355a5ac7a8597ff8c5af1c187b2ebd657a98 (patch)
tree3e2283bfaefffccb1f74d4d290a78da4d476362c
parent476a37fd87a224b8821bebf2973b656f61784555 (diff)
downloadaur-9931355a5ac7a8597ff8c5af1c187b2ebd657a98.tar.gz
[rbdoom-3-bfg] Version 1.5.1
-rw-r--r--.SRCINFO19
-rw-r--r--PKGBUILD41
-rw-r--r--PKGBUILD.live42
-rw-r--r--rbdoom-3-bfg-launcher62
-rw-r--r--rbdoom-3-bfg-launcher.desktop11
-rw-r--r--rbdoom-3-bfg.desktop2
-rw-r--r--rbdoom-3-bfg.install8
7 files changed, 122 insertions, 63 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 3503f35cef83..655237599082 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = rbdoom-3-bfg
pkgdesc = Doom 3 BFG Edition with modern engine features like PBR, Baked Global Illumination, Soft Shadows
- pkgver = 1.4.0
- pkgrel = 1
+ pkgver = 1.5.1
+ pkgrel = 2
url = https://github.com/RobertBeckebans/RBDOOM-3-BFG
install = rbdoom-3-bfg.install
arch = x86_64
@@ -9,20 +9,23 @@ pkgbase = rbdoom-3-bfg
makedepends = git
makedepends = cmake
makedepends = glu
+ makedepends = vulkan-headers
+ makedepends = ninja
+ makedepends = directx-shader-compiler
depends = ffmpeg
depends = openal
depends = sdl2
optdepends = doom3bfg-data: packaged game data files
options = !lto
- source = git+https://github.com/RobertBeckebans/RBDOOM-3-BFG.git#tag=v1.4.0
- source = glslang::git+https://github.com/KhronosGroup/glslang.git
- source = rbdoom-3-bfg.desktop
+ source = git+https://github.com/RobertBeckebans/RBDOOM-3-BFG.git#tag=v1.5.1
source = rbdoom-3-bfg.png
+ source = rbdoom-3-bfg.desktop
source = rbdoom-3-bfg-launcher
+ source = rbdoom-3-bfg-launcher.desktop
sha256sums = SKIP
- sha256sums = SKIP
- sha256sums = 414085bd095261665a5cbf6f575b101ae32f24f9e2b00d4ce7eeaa2cd9a6de72
sha256sums = 0fb6a3bb9b47cad65d5012ba20dc9de3b1487f4ac1908ee847e6087511b7f09e
- sha256sums = f2690f82beedee7f1f4c981851437e6e0141482a694b44828dd04d372eb934e9
+ sha256sums = cba5d97ebf99e231623ba0c5b55e7ba0b25d0a2a8e319020236b5b52d1e89774
+ sha256sums = 0c32340a3cd348cfa73a3198fc8f93b793a918dda35b3d04036180c81a65dd5b
+ sha256sums = 83bc72d3565a79c69a1f9313ab66a61ce0982801548e318fd1bacd4a2c64be79
pkgname = rbdoom-3-bfg
diff --git a/PKGBUILD b/PKGBUILD
index 11a9b48eaa3d..eedbe07f529b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,9 +3,9 @@
# Based on the rbdoom3-bfg-git package by M0Rf30
pkgname=rbdoom-3-bfg
-_srctag=1.4.0
+_srctag=1.5.1
pkgver=${_srctag//-/.}
-pkgrel=1
+pkgrel=2
pkgdesc="Doom 3 BFG Edition with modern engine features like PBR, Baked Global Illumination, Soft Shadows"
arch=('x86_64')
url="https://github.com/RobertBeckebans/RBDOOM-3-BFG"
@@ -19,7 +19,9 @@ makedepends=(
git
cmake
glu
-# vulkan-headers
+ vulkan-headers
+ ninja
+ directx-shader-compiler
)
optdepends=(
'doom3bfg-data: packaged game data files'
@@ -28,48 +30,49 @@ install=$pkgname.install
options=(!lto)
source=(
git+https://github.com/RobertBeckebans/RBDOOM-3-BFG.git#tag=v${_srctag}
- glslang::git+https://github.com/KhronosGroup/glslang.git
- rbdoom-3-bfg.desktop
rbdoom-3-bfg.png
+ rbdoom-3-bfg.desktop
rbdoom-3-bfg-launcher
+ rbdoom-3-bfg-launcher.desktop
)
sha256sums=('SKIP'
- 'SKIP'
- '414085bd095261665a5cbf6f575b101ae32f24f9e2b00d4ce7eeaa2cd9a6de72'
'0fb6a3bb9b47cad65d5012ba20dc9de3b1487f4ac1908ee847e6087511b7f09e'
- 'f2690f82beedee7f1f4c981851437e6e0141482a694b44828dd04d372eb934e9')
+ 'cba5d97ebf99e231623ba0c5b55e7ba0b25d0a2a8e319020236b5b52d1e89774'
+ '0c32340a3cd348cfa73a3198fc8f93b793a918dda35b3d04036180c81a65dd5b'
+ '83bc72d3565a79c69a1f9313ab66a61ce0982801548e318fd1bacd4a2c64be79')
prepare() {
cd RBDOOM-3-BFG
- for submodule in neo/extern/glslang; do
- git submodule init "${submodule}"
- git config submodule."${submodule}".url ../"${submodule##*/}"
- git submodule update "${submodule}"
- done
+ git remote set-url origin https://github.com/RobertBeckebans/RBDOOM-3-BFG.git
+ git submodule update --init --filter=tree:0 --recursive
}
build() {
- cd RBDOOM-3-BFG
cmake \
- -S neo \
+ -S RBDOOM-3-BFG/neo \
-B build \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DUSE_VULKAN=OFF \
- -DUSE_SYSTEM_LIBGLEW=OFF \
+ -DWINDOWS10=OFF \
+ -DUSE_DX12=OFF \
+ -DUSE_VULKAN=ON \
-DUSE_SYSTEM_LIBJPEG=OFF \
-DUSE_SYSTEM_LIBPNG=OFF \
-DUSE_SYSTEM_RAPIDJSON=OFF \
-DUSE_SYSTEM_ZLIB=OFF \
-DUSE_PRECOMPILED_HEADERS=OFF \
+ -GNinja \
-Wno-dev
- cmake --build build
+ cmake --build build --verbose
}
package() {
- install -Dm755 -t "$pkgdir"/usr/bin/ RBDOOM-3-BFG/build/RBDoom3BFG
+ mkdir -p "$pkgdir"/usr/share/games/doom3bfg
+ cp -r RBDOOM-3-BFG/base "$pkgdir"/usr/share/games/doom3bfg/
+ install -Dm755 -t "$pkgdir"/usr/bin/ build/RBDoom3BFG
install -Dm755 -t "$pkgdir"/usr/bin/ rbdoom-3-bfg-launcher
install -Dm644 -t "$pkgdir"/usr/share/applications/ rbdoom-3-bfg.desktop
+ install -Dm644 -t "$pkgdir"/usr/share/applications/ rbdoom-3-bfg-launcher.desktop
install -Dm644 -t "$pkgdir"/usr/share/pixmaps/ rbdoom-3-bfg.png
}
diff --git a/PKGBUILD.live b/PKGBUILD.live
index 94f9e271dbbe..bc3bec0d7451 100644
--- a/PKGBUILD.live
+++ b/PKGBUILD.live
@@ -3,7 +3,7 @@
# Based on the rbdoom3-bfg-git package by M0Rf30
pkgname=rbdoom-3-bfg
-pkgver=1.4.0.r11.d292e461
+pkgver=1.5.1.r38.a51833e4
pkgrel=1
pkgdesc="Doom 3 BFG Edition with modern engine features like PBR, Baked Global Illumination, Soft Shadows"
arch=('x86_64')
@@ -18,25 +18,30 @@ makedepends=(
git
cmake
glu
-# vulkan-headers
+ vulkan-headers
+ ninja
+ directx-shader-compiler
)
optdepends=(
'doom3bfg-data: packaged game data files'
+ 'mergerfs: required by the included launcher script to setup the correct file structure'
+ 'zenity: UI for the included launcher script'
+ 'yad: alternative UI for the included launcher script'
)
install=$pkgname.install
options=(!lto)
source=(
git+https://github.com/RobertBeckebans/RBDOOM-3-BFG.git
- glslang::git+https://github.com/KhronosGroup/glslang.git
- rbdoom-3-bfg.desktop
rbdoom-3-bfg.png
+ rbdoom-3-bfg.desktop
rbdoom-3-bfg-launcher
+ rbdoom-3-bfg-launcher.desktop
)
sha256sums=('SKIP'
- 'SKIP'
- '414085bd095261665a5cbf6f575b101ae32f24f9e2b00d4ce7eeaa2cd9a6de72'
'0fb6a3bb9b47cad65d5012ba20dc9de3b1487f4ac1908ee847e6087511b7f09e'
- 'f2690f82beedee7f1f4c981851437e6e0141482a694b44828dd04d372eb934e9')
+ 'cba5d97ebf99e231623ba0c5b55e7ba0b25d0a2a8e319020236b5b52d1e89774'
+ '0c32340a3cd348cfa73a3198fc8f93b793a918dda35b3d04036180c81a65dd5b'
+ '83bc72d3565a79c69a1f9313ab66a61ce0982801548e318fd1bacd4a2c64be79')
pkgver() {
cd RBDOOM-3-BFG
@@ -45,35 +50,36 @@ pkgver() {
prepare() {
cd RBDOOM-3-BFG
- for submodule in neo/extern/glslang; do
- git submodule init "${submodule}"
- git config submodule."${submodule}".url ../"${submodule##*/}"
- git submodule update "${submodule}"
- done
+ git remote set-url origin https://github.com/RobertBeckebans/RBDOOM-3-BFG.git
+ git submodule update --init --filter=tree:0 --recursive
}
build() {
- cd RBDOOM-3-BFG
cmake \
- -S neo \
+ -S RBDOOM-3-BFG/neo \
-B build \
-DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DUSE_VULKAN=OFF \
- -DUSE_SYSTEM_LIBGLEW=OFF \
+ -DWINDOWS10=OFF \
+ -DUSE_DX12=OFF \
+ -DUSE_VULKAN=ON \
-DUSE_SYSTEM_LIBJPEG=OFF \
-DUSE_SYSTEM_LIBPNG=OFF \
-DUSE_SYSTEM_RAPIDJSON=OFF \
-DUSE_SYSTEM_ZLIB=OFF \
-DUSE_PRECOMPILED_HEADERS=OFF \
+ -GNinja \
-Wno-dev
- cmake --build build
+ cmake --build build --verbose
}
package() {
- install -Dm755 -t "$pkgdir"/usr/bin/ RBDOOM-3-BFG/build/RBDoom3BFG
+ mkdir -p "$pkgdir"/usr/share/games/doom3bfg
+ cp -r RBDOOM-3-BFG/base "$pkgdir"/usr/share/games/doom3bfg/
+ install -Dm755 -t "$pkgdir"/usr/bin/ build/RBDoom3BFG
install -Dm755 -t "$pkgdir"/usr/bin/ rbdoom-3-bfg-launcher
install -Dm644 -t "$pkgdir"/usr/share/applications/ rbdoom-3-bfg.desktop
+ install -Dm644 -t "$pkgdir"/usr/share/applications/ rbdoom-3-bfg-launcher.desktop
install -Dm644 -t "$pkgdir"/usr/share/pixmaps/ rbdoom-3-bfg.png
}
diff --git a/rbdoom-3-bfg-launcher b/rbdoom-3-bfg-launcher
index adc2f004adda..e933fd4bc345 100644
--- a/rbdoom-3-bfg-launcher
+++ b/rbdoom-3-bfg-launcher
@@ -1,27 +1,63 @@
#!/usr/bin/bash
-conf="$HOME/.rbdoom3bfg/launcher.conf"
+path_name=rbdoom3bfg-launcher
+conf_dir="${XDG_CONFIG_HOME:-$HOME/.config}"/"$path_name"
+data_dir="${XDG_DATA_HOME:-$HOME/.local/share}"/"$path_name"
+if [ -f /usr/bin/yad ]; then
+ gui="/usr/bin/yad"
+ file_select="$gui --file --directory"
+fi
+if [ -f /usr/bin/zenity ]; then
+ gui="/usr/bin/zenity"
+ file_select="$gui --file-selection --directory"
+fi
+
+if [ ! -d "$conf_dir" ]; then
+ mkdir -p "$conf_dir"
+fi
+
+conf="$conf_dir"/launcher.conf
+old_conf="$HOME"/.rbdoom3bfg/launcher.conf
+if [ ! -f "$conf" ] && [ -f "$old_conf" ]; then
+ mv "$old_conf" "$conf"
+fi
if [ -f "$conf" ]; then
source "$conf"
else
- conf_dir=$(dirname "$conf")
- if [ ! -d "$conf_dir" ]; then
- mkdir -p "$conf_dir"
- fi
echo "install_dir=\"\"" > "$conf"
fi
basepath=""
-if [ -z "$install_dir" ]; then
- printf "%s: install_dir is not set.\n\n" "$(basename "$0")"
- printf "\tThe default install locations will be searched.\n"
- printf "\tIf RBDoom3BFG fails to start, specify the Doom 3 BFG \n"
- printf "\tinstallation directory in %s.\n\n" "$conf"
-else
- basepath="+set fs_basepath $install_dir"
+if [ -z "$install_dir" ]; then
+ if [ -z "$gui" ]; then
+ printf "%s: install_dir is not set.\n\n" "$(basename "$0")"
+ printf "\tThe default install locations will be searched.\n"
+ printf "\tIf RBDoom3BFG fails to start, specify the Doom 3 BFG \n"
+ printf "\tinstallation directory in %s.\n\n" "$conf"
+ else
+ info_text="install_dir is not set in the configuration file \n$conf\n"
+ info_text+="Without it, the default locations will be searched for game files.\n"
+ info_text+="\nDo you want to set it now?\n"
+ if "$gui" --question --text="$info_text"; then
+ install_dir="$($file_select)"
+ if [ -n "$install_dir" ]; then
+ echo "install_dir=\"$install_dir\"" >> "$conf"
+ fi
+ fi
+ fi
+fi
+
+if [ -n "$install_dir" ]; then
+ if [ ! -d "$data_dir" ]; then
+ mkdir -p "$data_dir"
+ fi
+ mergerfs -o fsname=RBDoom3BFG /usr/share/games/doom3bfg:"$install_dir" "$data_dir"
+ basepath="+set fs_basepath $data_dir"
fi
# Disable terminal support too, if the user knows
# what they are doing, they don't need the launcher anyways
-exec RBDoom3BFG +set in_tty 0 $basepath "$@"
+RBDoom3BFG +set in_tty 0 $basepath "$@"
+
+umount "$data_dir"
diff --git a/rbdoom-3-bfg-launcher.desktop b/rbdoom-3-bfg-launcher.desktop
new file mode 100644
index 000000000000..f9f88884e62c
--- /dev/null
+++ b/rbdoom-3-bfg-launcher.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=RBDOOM 3 BFG Launcher
+Exec=rbdoom-3-bfg-launcher
+Icon=rbdoom-3-bfg
+StartupNotify=true
+Terminal=false
+Type=Application
+Comment=Doom 3 BFG Edition with modern engine features
+Categories=Game;ActionGame;
+Path=
diff --git a/rbdoom-3-bfg.desktop b/rbdoom-3-bfg.desktop
index 9b90f5a1c155..da2845fb1e8b 100644
--- a/rbdoom-3-bfg.desktop
+++ b/rbdoom-3-bfg.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Encoding=UTF-8
Name=RBDOOM 3 BFG
-Exec=rbdoom-3-bfg-launcher
+Exec=RBDoom3BFG
Icon=rbdoom-3-bfg
StartupNotify=true
Terminal=false
diff --git a/rbdoom-3-bfg.install b/rbdoom-3-bfg.install
index eeb089c60291..f8fe7f931ff4 100644
--- a/rbdoom-3-bfg.install
+++ b/rbdoom-3-bfg.install
@@ -2,15 +2,15 @@ post_install() {
cat <<EOF
RBDoom 3 BFG requires the game data files to play.
Either install the optional doom3-bfg-data package
-or copy the \"base\" directory of any Doom 3 BFG install
-to either ~/.rbdoom3bfg or /usr/share/games/doom3bfg.
+or copy the "base" directory of any Doom 3 BFG install
+to either ~/.local/share/rbdoom3bfg or /usr/share/games/doom3bfg.
If your doom3bfg-data package includes multiple *.lang files under
/usr/share/games/doom3bfg/base/strings, you may find the game starting
up in Japanese or another unwanted language on launch.
-To repair this, make a ~/.rbdoom3bfg/base/default.cfg file with the
-following line as its contents, English as the example:
+To repair this, make a ~/.loca/share/rbdoom3bfg/base/default.cfg
+file with the following line as its contents, English as the example:
seta sys_lang "english"
EOF
}