From 079afa46009e529fd9ae3530f57403265abdc9c3 Mon Sep 17 00:00:00 2001 From: Sam Heinz <54530346+asylumexp@users.noreply.github.com> Date: Tue, 12 May 2026 15:28:43 +1000 Subject: [PATCH] add ensure_whiptail function This is required as some arm64 systems will not have whiptail installed, as it is not installed by default. --- misc/build.func | 3 +-- misc/core.func | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/misc/build.func b/misc/build.func index 1b1741da0..8f21f071c 100644 --- a/misc/build.func +++ b/misc/build.func @@ -2939,6 +2939,7 @@ install_script() { pve_check shell_check root_check + ensure_whiptail arch_check ssh_check maxkeys_check @@ -5074,8 +5075,6 @@ create_lxc_container() { msg_ok "Downloaded ARM64 LXC template" } - # Architecture-aware template download wrapper. - # Optional $1 overrides destination path (for local-storage fallback). download_template() { local dest="${1:-$TEMPLATE_PATH}" if [[ "$ARCH" == "arm64" ]]; then diff --git a/misc/core.func b/misc/core.func index 7d44395d6..3257ace21 100644 --- a/misc/core.func +++ b/misc/core.func @@ -1718,6 +1718,25 @@ function get_lxc_ip() { export LOCAL_IP } +# ------------------------------------------------------------------------------ +# ensure_whiptail() +# +# - Ensures whiptail is installed +# - Some ARM64 systems will not have whiptail installed. +# - Exits with error message if installation fails +# ------------------------------------------------------------------------------ +ensure_whiptail() { + command -v whiptail >/dev/null 2>&1 && return 0 + + msg_info "Installing whiptail" + apt_update_safe + $STD apt-get install -y whiptail || { + msg_error "Failed to install whiptail" + exit 115 + } + msg_ok "Installed whiptail" +} + # ============================================================================== # SIGNAL TRAPS # ==============================================================================