mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-06-22 15:31:19 +02:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d4d76f7927 | |||
| ca6eacdd92 | |||
| 9996ed71ba |
@@ -486,6 +486,14 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
</details>
|
||||
|
||||
## 2026-06-22
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- [arm64] Port scripts between snowshare & thelounge to support arm64 [@asylumexp](https://github.com/asylumexp) ([#15280](https://github.com/community-scripts/ProxmoxVE/pull/15280))
|
||||
|
||||
## 2026-06-21
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-6144}"
|
||||
var_disk="${var_disk:-25}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-20}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-7}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
variables
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-10240}"
|
||||
var_disk="${var_disk:-20}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
var_fuse="${var_fuse:-1}"
|
||||
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-6}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
var_gpu="${var_gpu:-yes}"
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ var_ram="${var_ram:-10240}"
|
||||
var_disk="${var_disk:-25}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-512}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
+1
-1
@@ -12,7 +12,7 @@ var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
@@ -14,10 +14,10 @@ network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y sqlite3
|
||||
$STD apt install -y sqlite3 libicu-dev
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
fetch_and_deploy_gh_release "Sonarr" "Sonarr/Sonarr" "prebuild" "latest" "/opt/Sonarr" "Sonarr.main.*.linux-x64.tar.gz"
|
||||
fetch_and_deploy_gh_release "Sonarr" "Sonarr/Sonarr" "prebuild" "latest" "/opt/Sonarr" "Sonarr.main.*.linux-$(arch_resolve "x64" "arm64").tar.gz"
|
||||
mkdir -p /var/lib/sonarr/
|
||||
chmod 775 /var/lib/sonarr/
|
||||
|
||||
|
||||
@@ -18,10 +18,11 @@ msg_info "Installing Dependencies"
|
||||
$STD apt install -y \
|
||||
ffmpeg \
|
||||
gosu \
|
||||
sqlite3
|
||||
sqlite3 \
|
||||
libicu-dev
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
fetch_and_deploy_gh_release "sportarr" "Sportarr/Sportarr" "prebuild" "latest" "/opt/sportarr" "Sportarr-linux-x64-*.tar.gz"
|
||||
fetch_and_deploy_gh_release "sportarr" "Sportarr/Sportarr" "prebuild" "latest" "/opt/sportarr" "Sportarr-linux-$(arch_resolve "x64" "arm64")-*.tar.gz"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/opt/sportarr/.env
|
||||
|
||||
@@ -333,7 +333,7 @@ EOF
|
||||
$STD systemctl enable -q --now step-ca
|
||||
msg_ok "Started step-ca as a Daemon"
|
||||
|
||||
fetch_and_deploy_gh_release "step-badger" "lukasz-lobocki/step-badger" "prebuild" "latest" "/opt/step-badger" "step-badger_Linux_x86_64.tar.gz"
|
||||
fetch_and_deploy_gh_release "step-badger" "lukasz-lobocki/step-badger" "prebuild" "latest" "/opt/step-badger" "step-badger_Linux_$(arch_resolve "x86_64" "arm64").tar.gz"
|
||||
ln -s /opt/step-badger/step-badger /usr/local/bin/step-badger
|
||||
|
||||
motd_ssh
|
||||
|
||||
@@ -26,7 +26,7 @@ msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="corepack,yarn" setup_nodejs
|
||||
|
||||
fetch_and_deploy_gh_release "readium" "readium/cli" "prebuild" "latest" "/opt/readium" "readium_linux_x86_64.tar.gz"
|
||||
fetch_and_deploy_gh_release "readium" "readium/cli" "prebuild" "latest" "/opt/readium" "readium_linux_$(arch_resolve "x86_64" "arm64").tar.gz"
|
||||
ln -sf /opt/readium/readium /usr/local/bin/readium
|
||||
fetch_and_deploy_gl_release "storyteller" "storyteller-platform/storyteller" "tarball" "latest" "/opt/storyteller"
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
fetch_and_deploy_gh_release "stylus" "mmastrac/stylus" "singlefile" "latest" "/usr/bin/" "*_linux_amd64"
|
||||
fetch_and_deploy_gh_release "stylus" "mmastrac/stylus" "singlefile" "latest" "/usr/bin/" "*_linux_$(arch_resolve)"
|
||||
|
||||
msg_info "Configuring Stylus"
|
||||
$STD stylus init /opt/stylus/
|
||||
|
||||
@@ -20,7 +20,7 @@ msg_ok "Installed Dependencies"
|
||||
msg_info "Installing Tdarr"
|
||||
mkdir -p /opt/tdarr
|
||||
cd /opt/tdarr
|
||||
RELEASE=$(curl_with_retry "https://f000.backblazeb2.com/file/tdarrs/versions.json" "-" | grep -oP '(?<="Tdarr_Updater": ")[^"]+' | grep linux_x64 | head -n 1)
|
||||
RELEASE=$(curl_with_retry "https://f000.backblazeb2.com/file/tdarrs/versions.json" "-" | grep -oP '(?<="Tdarr_Updater": ")[^"]+' | grep "linux_$(arch_resolve "x64" "arm64")" | head -n 1)
|
||||
curl_with_retry "$RELEASE" "Tdarr_Updater.zip"
|
||||
$STD unzip Tdarr_Updater.zip
|
||||
chmod +x Tdarr_Updater
|
||||
|
||||
@@ -54,6 +54,11 @@ if ! pveversion | grep -Eq "pve-manager/8\.[0-4](\.[0-9]+)*"; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
echo -e "${RD}Intel HW acceleration is only available on x86 (Intel) systems.${CL}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --title "Add Intel HW Acceleration" --yesno "This Will Add Intel HW Acceleration to an existing LXC Container. Proceed?" 8 72
|
||||
NODE=$(hostname)
|
||||
PREV_MENU=()
|
||||
|
||||
@@ -139,6 +139,12 @@ if ! command -v pveversion >/dev/null 2>&1; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
header_info
|
||||
msg_error "CPU microcode updates are only available for x86 (Intel/AMD) systems."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --title "Proxmox VE Processor Microcode" --yesno "This will check for CPU microcode packages with the option to install. Proceed?" 10 58
|
||||
|
||||
msg_info "Checking CPU Vendor"
|
||||
|
||||
@@ -157,6 +157,12 @@ if [ ! -f /etc/proxmox-backup/user.cfg ]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
header_info
|
||||
msg_error "CPU microcode updates are only available for x86 (Intel/AMD) systems."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
whiptail --backtitle "Proxmox Backup Server Helper Scripts" \
|
||||
--title "Proxmox Backup Server Processor Microcode" \
|
||||
--yesno "This script searches for CPU microcode packages and offers the option to install them.\nProceed?" 10 68
|
||||
|
||||
@@ -175,4 +175,10 @@ while true; do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
header_info
|
||||
msg_error "This upgrade script targets the amd64 Proxmox repositories and is not supported on ARM64."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
start_routines
|
||||
|
||||
@@ -199,4 +199,10 @@ while true; do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
header_info
|
||||
msg_error "This upgrade script targets the amd64 Proxmox repositories and is not supported on ARM64."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
start_routines
|
||||
|
||||
@@ -73,6 +73,8 @@ require_whiptail() {
|
||||
fi
|
||||
}
|
||||
|
||||
arch_is_arm64() { [[ "$(dpkg --print-architecture 2>/dev/null)" == "arm64" ]]; }
|
||||
|
||||
# ---- main ----
|
||||
main() {
|
||||
header_info
|
||||
@@ -135,6 +137,12 @@ EOF
|
||||
no) msg_error "Selected no to Correcting Debian Sources" ;;
|
||||
esac
|
||||
|
||||
if arch_is_arm64; then
|
||||
msg_ok "ARM64 detected - skipping Proxmox repository setup"
|
||||
post_routines_common
|
||||
return
|
||||
fi
|
||||
|
||||
# --- Enterprise repo ---
|
||||
read -r state file <<<"$(repo_state_list pbs-enterprise)"
|
||||
case $state in
|
||||
@@ -209,6 +217,12 @@ EOF
|
||||
no) msg_error "Selected no to Correcting Debian Sources" ;;
|
||||
esac
|
||||
|
||||
if arch_is_arm64; then
|
||||
msg_ok "ARM64 detected - skipping Proxmox repository setup"
|
||||
post_routines_common
|
||||
return
|
||||
fi
|
||||
|
||||
# --- Enterprise repo ---
|
||||
if component_exists_in_sources "pbs-enterprise"; then
|
||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PBS Enterprise Repository" --menu \
|
||||
|
||||
@@ -53,6 +53,11 @@ if ! dpkg -s proxmox-mailgateway-container >/dev/null 2>&1 &&
|
||||
exit 232
|
||||
fi
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
msg_error "Proxmox Mail Gateway does not support ARM64."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
repo_state() {
|
||||
# $1 = repo name (e.g. pmg-enterprise, pmg-no-subscription, pmgtest)
|
||||
local repo="$1"
|
||||
|
||||
@@ -48,6 +48,8 @@ msg_error() {
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/api.func) 2>/dev/null || true
|
||||
declare -f init_tool_telemetry &>/dev/null && init_tool_telemetry "post-pve-install" "pve"
|
||||
|
||||
arch_is_arm64() { [[ "$(dpkg --print-architecture 2>/dev/null)" == "arm64" ]]; }
|
||||
|
||||
get_pve_version() {
|
||||
local pve_ver
|
||||
pve_ver="$(pveversion | awk -F'/' '{print $2}' | awk -F'-' '{print $1}')"
|
||||
@@ -125,6 +127,12 @@ EOF
|
||||
no) msg_error "Selected no to Correcting Proxmox VE Sources" ;;
|
||||
esac
|
||||
|
||||
if arch_is_arm64; then
|
||||
msg_ok "ARM64 detected - skipping Proxmox repository setup"
|
||||
post_routines_common
|
||||
return
|
||||
fi
|
||||
|
||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PVE-ENTERPRISE" --menu "The 'pve-enterprise' repository is only available to users who have purchased a Proxmox VE subscription.\n \nDisable 'pve-enterprise' repository?" 14 58 2 \
|
||||
"yes" " " \
|
||||
"no" " " 3>&2 2>&1 1>&3)
|
||||
@@ -282,6 +290,12 @@ EOF
|
||||
esac
|
||||
fi
|
||||
|
||||
if arch_is_arm64; then
|
||||
msg_ok "ARM64 detected - skipping Proxmox repository setup"
|
||||
post_routines_common
|
||||
return
|
||||
fi
|
||||
|
||||
# ---- PVE-ENTERPRISE ----
|
||||
if component_exists_in_sources "pve-enterprise"; then
|
||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" \
|
||||
|
||||
@@ -131,6 +131,12 @@ if ! command -v pveversion >/dev/null 2>&1; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$(dpkg --print-architecture 2>/dev/null)" = "arm64" ]; then
|
||||
header_info
|
||||
msg_error "This upgrade script targets the amd64 Proxmox VE repositories and is not supported on ARM64."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! pveversion | grep -Eq "pve-manager/(7\.4-(16|17|18|19))"; then
|
||||
header_info
|
||||
msg_error "This version of Proxmox Virtual Environment is not supported"
|
||||
|
||||
Reference in New Issue
Block a user