diff options
author | Stelios Tsampas | 2023-09-06 17:59:15 +0300 |
---|---|---|
committer | Stelios Tsampas | 2023-09-06 17:59:15 +0300 |
commit | 9931355a5ac7a8597ff8c5af1c187b2ebd657a98 (patch) | |
tree | 3e2283bfaefffccb1f74d4d290a78da4d476362c | |
parent | 476a37fd87a224b8821bebf2973b656f61784555 (diff) | |
download | aur-9931355a5ac7a8597ff8c5af1c187b2ebd657a98.tar.gz |
[rbdoom-3-bfg] Version 1.5.1
-rw-r--r-- | .SRCINFO | 19 | ||||
-rw-r--r-- | PKGBUILD | 41 | ||||
-rw-r--r-- | PKGBUILD.live | 42 | ||||
-rw-r--r-- | rbdoom-3-bfg-launcher | 62 | ||||
-rw-r--r-- | rbdoom-3-bfg-launcher.desktop | 11 | ||||
-rw-r--r-- | rbdoom-3-bfg.desktop | 2 | ||||
-rw-r--r-- | rbdoom-3-bfg.install | 8 |
7 files changed, 122 insertions, 63 deletions
@@ -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 @@ -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 } |