Files
ProxMenux/scripts/menus/pbs_menu.sh
T
MacRimi 98ae1f3626 feat(pbs): post-install menu for Proxmox Backup Server
- Open the post-install menu from the PBS menu
- List only the customizable options that apply to PBS
- Offer the PBS no-subscription repository through the native repository API
- Upgrade PBS with the package list shown before applying it
- Remove and restore the subscription notice on the PBS web interface
- Install Figurine on PBS without the Proxmox VE aliases
- Offer the Helper-Scripts PBS post-install and microcode scripts
- Tune firewall bridges after the systemd udev rules in the automated post-install
- Add PBS repository policy tests and syntax checks
- Document the PBS differences on the post-install page
- Use backups in the Spanish PBS update message
2026-10-17 18:13:44 +02:00

56 lines
2.2 KiB
Bash

#!/bin/bash
# ==========================================================
# ProxMenux - Proxmox Backup Server menu
# ==========================================================
# PBS exposes compatible host tools and its own post-install profile;
# PVE guest optimizations stay in the PVE menu.
# ==========================================================
BASE_DIR="/usr/local/share/proxmenux"
LOCAL_SCRIPTS="$BASE_DIR/scripts"
source "$BASE_DIR/utils.sh"
source "$LOCAL_SCRIPTS/global/platform-functions.sh"
load_language
initialize_cache
if ! pmx_is_pbs; then
msg_error "$(translate 'This menu requires Proxmox Backup Server.')"
exit 1
fi
pbs_show() {
local title="$1" output
shift
output=$(mktemp)
if "$@" > "$output" 2>&1; then
dialog --backtitle "ProxMenux" --title "$title" --textbox "$output" 24 110
else
dialog --backtitle "ProxMenux" --title "$(translate 'Command failed')" --textbox "$output" 24 110
fi
rm -f "$output"
}
while true; do
choice=$(dialog --clear --backtitle "ProxMenux" --title "Proxmox Backup Server" \
--menu "$(translate 'Select an option:')" 19 75 9 \
1 "$(translate "Settings post-install Proxmox")" \
2 "$(translate 'PBS version and packages')" \
3 "$(translate 'PBS datastores')" \
4 "$(translate 'Recent PBS tasks')" \
5 "$(translate 'System Utilities Installer')" \
6 "$(translate 'Update PBS using configured repositories')" \
s "$(translate 'Settings')" \
0 "$(translate 'Exit')" 2>&1 >/dev/tty) || break
case "$choice" in
1) exec bash "$LOCAL_SCRIPTS/menus/menu_post_install.sh" ;;
2) pbs_show "$(translate 'PBS version and packages')" proxmox-backup-manager versions --verbose ;;
3) pbs_show "$(translate 'PBS datastores')" proxmox-backup-manager datastore list ;;
4) pbs_show "$(translate 'Recent PBS tasks')" proxmox-backup-manager task list --all true --limit 20 ;;
5) bash "$LOCAL_SCRIPTS/utilities/system_utils.sh" ;;
6) bash "$LOCAL_SCRIPTS/utilities/pbs_update.sh" ;;
s) exec bash "$LOCAL_SCRIPTS/menus/config_menu.sh" ;;
0) break ;;
esac
done
clear
msg_ok "$(translate "Thank you for using ProxMenux. Goodbye!")"