setup: add Open WebUI module

Installs open-webui from AUR and enables open-webui.service.
Serves the browser UI at http://localhost:8080; Ollama module
should be installed first for full LLM backend functionality.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
main
The_miro 2026-05-18 11:01:20 +02:00
parent 36366a623b
commit 36a938c3ec
3 changed files with 18 additions and 0 deletions

View File

@ -86,6 +86,7 @@ count_steps() {
TOTAL=0
[[ "$sel" == *"ollama"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"llama-cpp"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"open-webui"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"claude"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"networking-cli"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$sel" == *"disk-recovery"* ]] && TOTAL=$(( TOTAL + 1 ))
@ -148,6 +149,7 @@ SELECTED=$(dialog --backtitle "$BACKTITLE" \
\
"ollama" "Ollama local LLM runner + API server" off \
"llama-cpp" "llama.cpp standalone inference CLI + server" off \
"open-webui" "Open WebUI browser UI for Ollama / LLM backends" off \
"claude" "Claude Code Anthropic CLI via npm" off \
"networking-cli" "Networking CLI nmap · nethogs · mitmproxy · httpie" off \
"disk-recovery" "Disk Recovery ddrescue · f3" off \
@ -191,6 +193,7 @@ SELECTED=$(dialog --backtitle "$BACKTITLE" \
SUMMARY=""
[[ "$SELECTED" == *"ollama"* ]] && SUMMARY+=" ✦ Ollama\n"
[[ "$SELECTED" == *"llama-cpp"* ]] && SUMMARY+=" ✦ llama.cpp\n"
[[ "$SELECTED" == *"open-webui"* ]] && SUMMARY+=" ✦ Open WebUI\n"
[[ "$SELECTED" == *"claude"* ]] && SUMMARY+=" ✦ Claude Code\n"
[[ "$SELECTED" == *"networking-cli"* ]] && SUMMARY+=" ✦ Networking CLI (nmap, nethogs, mitmproxy, httpie)\n"
[[ "$SELECTED" == *"disk-recovery"* ]] && SUMMARY+=" ✦ Disk Recovery (ddrescue, f3)\n"
@ -236,6 +239,7 @@ count_steps "$SELECTED"
[[ "$SELECTED" == *"ollama"* ]] && run_module "Ollama" "$APPS/ollama.sh"
[[ "$SELECTED" == *"llama-cpp"* ]] && run_module "llama.cpp" "$APPS/llama-cpp.sh"
[[ "$SELECTED" == *"open-webui"* ]] && run_module "Open WebUI" "$APPS/open-webui.sh"
[[ "$SELECTED" == *"claude"* ]] && run_module "Claude Code" "$APPS/claude.sh"
[[ "$SELECTED" == *"networking-cli"* ]] && run_module "Networking CLI" "$APPS/networking-cli.sh"
[[ "$SELECTED" == *"disk-recovery"* ]] && run_module "Disk Recovery" "$APPS/disk-recovery.sh"

View File

@ -0,0 +1,10 @@
#!/bin/bash
set -euo pipefail
# Open WebUI — browser UI for Ollama and other LLM backends.
# Ollama module should be installed first for full functionality.
yay -S --answerdiff None --answerclean All --noconfirm open-webui
sudo systemctl enable --now open-webui.service
echo "Open WebUI running at http://localhost:8080"

View File

@ -96,6 +96,7 @@ count_steps() {
[[ "$c" == *"de"* && "$de" != "none" ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"ollama"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"llama-cpp"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"open-webui"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"claude"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"networking-cli"* ]] && TOTAL=$(( TOTAL + 1 ))
[[ "$a" == *"disk-recovery"* ]] && TOTAL=$(( TOTAL + 1 ))
@ -184,6 +185,7 @@ SELECTED_APPS=$(dialog --backtitle "$BACKTITLE" \
--checklist "Optional applications — installed after base components:" 40 76 32 \
"ollama" "Ollama local LLM runner + API server" off \
"llama-cpp" "llama.cpp standalone inference CLI + server" off \
"open-webui" "Open WebUI browser UI for Ollama / LLM backends" off \
"claude" "Claude Code Anthropic CLI via npm" off \
"networking-cli" "Networking CLI nmap · nethogs · mitmproxy · httpie" off \
"disk-recovery" "Disk Recovery ddrescue · f3" off \
@ -233,6 +235,7 @@ if [[ -n "$SELECTED_APPS" ]]; then
SUMMARY+="\n Applications:\n"
[[ "$SELECTED_APPS" == *"ollama"* ]] && SUMMARY+=" ✦ Ollama\n"
[[ "$SELECTED_APPS" == *"llama-cpp"* ]] && SUMMARY+=" ✦ llama.cpp\n"
[[ "$SELECTED_APPS" == *"open-webui"* ]] && SUMMARY+=" ✦ Open WebUI\n"
[[ "$SELECTED_APPS" == *"claude"* ]] && SUMMARY+=" ✦ Claude Code\n"
[[ "$SELECTED_APPS" == *"networking-cli"* ]] && SUMMARY+=" ✦ Networking CLI (nmap, nethogs, mitmproxy, httpie)\n"
[[ "$SELECTED_APPS" == *"disk-recovery"* ]] && SUMMARY+=" ✦ Disk Recovery (ddrescue, f3)\n"
@ -293,6 +296,7 @@ fi
# ── Installation: applications ────────────────────────────────────────────────
[[ "$SELECTED_APPS" == *"ollama"* ]] && run_module "Ollama" "$APPS/ollama.sh"
[[ "$SELECTED_APPS" == *"llama-cpp"* ]] && run_module "llama.cpp" "$APPS/llama-cpp.sh"
[[ "$SELECTED_APPS" == *"open-webui"* ]] && run_module "Open WebUI" "$APPS/open-webui.sh"
[[ "$SELECTED_APPS" == *"claude"* ]] && run_module "Claude Code" "$APPS/claude.sh"
[[ "$SELECTED_APPS" == *"networking-cli"* ]] && run_module "Networking CLI" "$APPS/networking-cli.sh"
[[ "$SELECTED_APPS" == *"disk-recovery"* ]] && run_module "Disk Recovery" "$APPS/disk-recovery.sh"