feat(modules): add openarena, tetris CLI, and doom modules

openarena: open-source Quake III Arena (pacman)
tetris: bastet + vitetris (pacman + AUR)
doom: Chocolate Doom + Freedoom game data (pacman)

Wired up in simple-install.sh, tui-install.sh, and install-modules.sh.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
Amir Alexander Abdelbaki 2026-05-21 23:51:33 +02:00
parent 33d2fe7715
commit 6d27c189f3
6 changed files with 48 additions and 1 deletions

View File

@ -116,6 +116,9 @@ count_steps() {
[[ "$sel" == *"spotify"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"prism"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"vintagestory"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"openarena"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"tetris"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"doom"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"localsend"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"croc"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"onlyoffice"* ]] && TOTAL=$(( TOTAL + 1 ))
@ -201,6 +204,9 @@ SELECTED=$(dialog --backtitle "$BACKTITLE" \
"spotify" "Spotify launcher + Spicetify theming" off \
"prism" "PrismLauncher Minecraft launcher (Flatpak)" off \
"vintagestory" "Vintage Story survival game (AUR)" off \
"openarena" "OpenArena open-source Quake III Arena" off \
"tetris" "Tetris CLI bastet · vitetris" off \
"doom" "Doom Chocolate Doom + Freedoom data" off \
"localsend" "LocalSend LAN file transfer (AUR)" off \
"croc" "croc cross-platform file transfer" off \
"onlyoffice" "OnlyOffice office suite (AUR)" off \
@ -266,6 +272,9 @@ SUMMARY=""
[[ "$SELECTED" == *"spotify"* ]] && SUMMARY+=" ✦ Spotify\n"
[[ "$SELECTED" == *"prism"* ]] && SUMMARY+=" ✦ PrismLauncher\n"
[[ "$SELECTED" == *"vintagestory"* ]] && SUMMARY+=" ✦ Vintage Story\n"
[[ "$SELECTED" == *"openarena"* ]] && SUMMARY+=" ✦ OpenArena\n"
[[ "$SELECTED" == *"tetris"* ]] && SUMMARY+=" ✦ Tetris CLI (bastet · vitetris)\n"
[[ "$SELECTED" == *"doom"* ]] && SUMMARY+=" ✦ Doom\n"
[[ "$SELECTED" == *"localsend"* ]] && SUMMARY+=" ✦ LocalSend\n"
[[ "$SELECTED" == *"croc"* ]] && SUMMARY+=" ✦ croc\n"
[[ "$SELECTED" == *"onlyoffice"* ]] && SUMMARY+=" ✦ OnlyOffice\n"
@ -333,6 +342,9 @@ DE_DIR="$MODULES/Desktop-Environments"
[[ "$SELECTED" == *"spotify"* ]] && run_module "Spotify" "$APPS/spotify.sh"
[[ "$SELECTED" == *"prism"* ]] && run_module "PrismLauncher" "$APPS/prismlauncher.sh"
[[ "$SELECTED" == *"vintagestory"* ]] && run_module "Vintage Story" "$APPS/vintagestory.sh"
[[ "$SELECTED" == *"openarena"* ]] && run_module "OpenArena" "$APPS/openarena.sh"
[[ "$SELECTED" == *"tetris"* ]] && run_module "Tetris CLI" "$APPS/tetris.sh"
[[ "$SELECTED" == *"doom"* ]] && run_module "Doom" "$APPS/doom.sh"
[[ "$SELECTED" == *"localsend"* ]] && run_module "LocalSend" "$APPS/localsend.sh"
[[ "$SELECTED" == *"croc"* ]] && run_module "croc" "$APPS/croc.sh"
[[ "$SELECTED" == *"onlyoffice"* ]] && run_module "OnlyOffice" "$APPS/onlyoffice.sh"

View File

@ -0,0 +1,5 @@
#!/bin/bash
set -euo pipefail
# chocolate-doom: faithful vanilla Doom port; freedoom: free game data (playable without IWADs)
sudo pacman -S --noconfirm --needed chocolate-doom freedoom

View File

@ -0,0 +1,3 @@
#!/bin/bash
set -euo pipefail
sudo pacman -S --noconfirm --needed openarena

View File

@ -0,0 +1,6 @@
#!/bin/bash
set -euo pipefail
sudo pacman -S --noconfirm --needed bastet
yay -S --answerdiff None --answerclean All --noconfirm vitetris

View File

@ -325,6 +325,9 @@ count_steps() {
[[ "$a" == *"spotify"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"prism"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"vintagestory"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"openarena"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"tetris"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"doom"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"localsend"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"croc"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"onlyoffice"* ]] && TOTAL=$(( TOTAL + 1 ))
@ -509,6 +512,9 @@ else
"spotify" "Spotify launcher + Spicetify theming" off \
"prism" "PrismLauncher Minecraft launcher (Flatpak)" off \
"vintagestory" "Vintage Story survival game (AUR)" off \
"openarena" "OpenArena open-source Quake III Arena" off \
"tetris" "Tetris CLI bastet · vitetris" off \
"doom" "Doom Chocolate Doom + Freedoom data" off \
\
"" "File Transfer & Office" header \
"localsend" "LocalSend LAN file transfer (AUR)" off \
@ -589,7 +595,7 @@ if ! $ANSWERFILE_MODE; then
for _app in ollama llama-cpp open-webui claude networking-cli disk-recovery \
himalaya gnuplot blender-povray toot db-clients mysql productivity \
yt-dlp sox imagemagick ffmpeg localtunnel butter tlp steam vesktop \
spotify prism vintagestory localsend croc onlyoffice \
spotify prism vintagestory openarena tetris doom localsend croc onlyoffice \
gimp inkscape krita xournal ardour audacity lmms mixxx cecilia \
kdenlive openshot shotcut \
anti-malware timeshift wireshark k8s \
@ -653,6 +659,9 @@ fi
[[ "$SELECTED_APPS" == *"spotify"* ]] && run_module "Spotify" "$APPS/spotify.sh"
[[ "$SELECTED_APPS" == *"prism"* ]] && run_module "PrismLauncher" "$APPS/prismlauncher.sh"
[[ "$SELECTED_APPS" == *"vintagestory"* ]] && run_module "Vintage Story" "$APPS/vintagestory.sh"
[[ "$SELECTED_APPS" == *"openarena"* ]] && run_module "OpenArena" "$APPS/openarena.sh"
[[ "$SELECTED_APPS" == *"tetris"* ]] && run_module "Tetris CLI" "$APPS/tetris.sh"
[[ "$SELECTED_APPS" == *"doom"* ]] && run_module "Doom" "$APPS/doom.sh"
[[ "$SELECTED_APPS" == *"localsend"* ]] && run_module "LocalSend" "$APPS/localsend.sh"
[[ "$SELECTED_APPS" == *"croc"* ]] && run_module "croc" "$APPS/croc.sh"
[[ "$SELECTED_APPS" == *"onlyoffice"* ]] && run_module "OnlyOffice" "$APPS/onlyoffice.sh"

View File

@ -137,6 +137,9 @@ count_steps() {
[[ "$a" == *"spotify"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"prism"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"vintagestory"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"openarena"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"tetris"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"doom"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"localsend"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"croc"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"onlyoffice"* ]] && TOTAL=$(( TOTAL + 1 ))
@ -348,6 +351,9 @@ else
"spotify" "Spotify launcher + Spicetify theming" off \
"prism" "PrismLauncher Minecraft launcher (Flatpak)" off \
"vintagestory" "Vintage Story survival game (AUR)" off \
"openarena" "OpenArena open-source Quake III Arena" off \
"tetris" "Tetris CLI bastet · vitetris" off \
"doom" "Doom Chocolate Doom + Freedoom data" off \
"localsend" "LocalSend LAN file transfer (AUR)" off \
"croc" "croc cross-platform file transfer" off \
"onlyoffice" "OnlyOffice office suite (AUR)" off \
@ -434,6 +440,9 @@ if ! $ANSWERFILE_MODE; then
[[ "$SELECTED_APPS" == *"spotify"* ]] && SUMMARY+=" ✦ Spotify + Spicetify\n"
[[ "$SELECTED_APPS" == *"prism"* ]] && SUMMARY+=" ✦ PrismLauncher\n"
[[ "$SELECTED_APPS" == *"vintagestory"* ]] && SUMMARY+=" ✦ Vintage Story\n"
[[ "$SELECTED_APPS" == *"openarena"* ]] && SUMMARY+=" ✦ OpenArena\n"
[[ "$SELECTED_APPS" == *"tetris"* ]] && SUMMARY+=" ✦ Tetris CLI (bastet · vitetris)\n"
[[ "$SELECTED_APPS" == *"doom"* ]] && SUMMARY+=" ✦ Doom\n"
[[ "$SELECTED_APPS" == *"localsend"* ]] && SUMMARY+=" ✦ LocalSend\n"
[[ "$SELECTED_APPS" == *"croc"* ]] && SUMMARY+=" ✦ croc\n"
[[ "$SELECTED_APPS" == *"onlyoffice"* ]] && SUMMARY+=" ✦ OnlyOffice\n"
@ -533,6 +542,9 @@ fi
[[ "$SELECTED_APPS" == *"spotify"* ]] && run_module "Spotify" "$APPS/spotify.sh"
[[ "$SELECTED_APPS" == *"prism"* ]] && run_module "PrismLauncher" "$APPS/prismlauncher.sh"
[[ "$SELECTED_APPS" == *"vintagestory"* ]] && run_module "Vintage Story" "$APPS/vintagestory.sh"
[[ "$SELECTED_APPS" == *"openarena"* ]] && run_module "OpenArena" "$APPS/openarena.sh"
[[ "$SELECTED_APPS" == *"tetris"* ]] && run_module "Tetris CLI" "$APPS/tetris.sh"
[[ "$SELECTED_APPS" == *"doom"* ]] && run_module "Doom" "$APPS/doom.sh"
[[ "$SELECTED_APPS" == *"localsend"* ]] && run_module "LocalSend" "$APPS/localsend.sh"
[[ "$SELECTED_APPS" == *"croc"* ]] && run_module "croc" "$APPS/croc.sh"
[[ "$SELECTED_APPS" == *"onlyoffice"* ]] && run_module "OnlyOffice" "$APPS/onlyoffice.sh"