mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-03-20 00:43:00 +01:00
Compare commits
11 Commits
refactor/t
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fd96117bc4 | ||
|
|
2cbba485b3 | ||
|
|
25c21835cc | ||
|
|
8c35c68c9c | ||
|
|
d9addf78a3 | ||
|
|
245433f535 | ||
|
|
0c70fa5a5b | ||
|
|
d45129c039 | ||
|
|
fa57b7a1d3 | ||
|
|
d0af062c18 | ||
|
|
23290f4042 |
16
CHANGELOG.md
16
CHANGELOG.md
@@ -431,14 +431,28 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fix: remove extra backslash to match single quoted here-doc [@Zelnes](https://github.com/Zelnes) ([#13108](https://github.com/community-scripts/ProxmoxVE/pull/13108))
|
||||
- Reactive-Resume: Upgrade Node to 24 and enable Corepack [@MickLesk](https://github.com/MickLesk) ([#13093](https://github.com/community-scripts/ProxmoxVE/pull/13093))
|
||||
- Increase Tracearr RAM; derive APP_VERSION [@MickLesk](https://github.com/MickLesk) ([#13087](https://github.com/community-scripts/ProxmoxVE/pull/13087))
|
||||
- ProjectSend: Update application access URL [@tremor021](https://github.com/tremor021) ([#13078](https://github.com/community-scripts/ProxmoxVE/pull/13078))
|
||||
- Dispatcharr: use npm install --no-audit --progress=false [@MickLesk](https://github.com/MickLesk) ([#13074](https://github.com/community-scripts/ProxmoxVE/pull/13074))
|
||||
- core: reorder hwaccel setup and adjust GPU group usermod [@MickLesk](https://github.com/MickLesk) ([#13072](https://github.com/community-scripts/ProxmoxVE/pull/13072))
|
||||
|
||||
- #### ✨ New Features
|
||||
|
||||
- tools.func: display pin reason in release-check messages [@MickLesk](https://github.com/MickLesk) ([#13095](https://github.com/community-scripts/ProxmoxVE/pull/13095))
|
||||
- NocoDB: Unpin Version to latest [@MickLesk](https://github.com/MickLesk) ([#13094](https://github.com/community-scripts/ProxmoxVE/pull/13094))
|
||||
|
||||
### 💾 Core
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- tools.func: use dpkg-query for reliable JDK version detection [@MickLesk](https://github.com/MickLesk) ([#13101](https://github.com/community-scripts/ProxmoxVE/pull/13101))
|
||||
|
||||
### 📚 Documentation
|
||||
|
||||
- github: add PocketBase bot workflow [@MickLesk](https://github.com/MickLesk) ([#13075](https://github.com/community-scripts/ProxmoxVE/pull/13075))
|
||||
- Update link from helper-scripts.com to community-scripts.org [@adnanvaldes](https://github.com/adnanvaldes) ([#13098](https://github.com/community-scripts/ProxmoxVE/pull/13098))
|
||||
- github: add PocketBase bot workflow [@MickLesk](https://github.com/MickLesk) ([#13075](https://github.com/community-scripts/ProxmoxVE/pull/13075))
|
||||
|
||||
## 2026-03-18
|
||||
|
||||
|
||||
@@ -130,7 +130,7 @@ Choose your preferred installation method:
|
||||
|
||||
The fastest way to get started:
|
||||
|
||||
1. Visit **[helper-scripts.com](https://helper-scripts.com/)** 🌐
|
||||
1. Visit **[community-scripts.org](https://community-scripts.org/)** 🌐
|
||||
2. Search for your desired script (e.g., "Home Assistant", "Docker")
|
||||
3. Copy the bash command displayed on the script page
|
||||
4. Open your **Proxmox Shell** and paste the command
|
||||
|
||||
@@ -110,7 +110,7 @@ EOF
|
||||
fi
|
||||
|
||||
RELEASE="v2.5.6"
|
||||
if check_for_gh_release "Immich" "immich-app/immich" "${RELEASE}"; then
|
||||
if check_for_gh_release "Immich" "immich-app/immich" "${RELEASE}" "each release is tested individually before the version is updated. Please do not open issues for this"; then
|
||||
if [[ $(cat ~/.immich) > "2.5.1" ]]; then
|
||||
msg_info "Enabling Maintenance Mode"
|
||||
cd /opt/immich/app/bin
|
||||
@@ -125,7 +125,7 @@ EOF
|
||||
msg_ok "Stopped Services"
|
||||
VCHORD_RELEASE="0.5.3"
|
||||
[[ -f ~/.vchord_version ]] && mv ~/.vchord_version ~/.vectorchord
|
||||
if check_for_gh_release "VectorChord" "tensorchord/VectorChord" "${VCHORD_RELEASE}"; then
|
||||
if check_for_gh_release "VectorChord" "tensorchord/VectorChord" "${VCHORD_RELEASE}" "updated together with Immich after testing"; then
|
||||
fetch_and_deploy_gh_release "VectorChord" "tensorchord/VectorChord" "binary" "${VCHORD_RELEASE}" "/tmp" "postgresql-16-vchord_*_amd64.deb"
|
||||
systemctl restart postgresql
|
||||
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vector UPDATE;"
|
||||
|
||||
@@ -23,17 +23,18 @@ function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
RELEASE="0.301.1"
|
||||
#RELEASE="0.301.1"
|
||||
if [[ ! -f /etc/systemd/system/nocodb.service ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "nocodb" "nocodb/nocodb" "${RELEASE}"; then
|
||||
#if check_for_gh_release "nocodb" "nocodb/nocodb" "${RELEASE}"; then
|
||||
if check_for_gh_release "nocodb" "nocodb/nocodb"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop nocodb
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "${RELEASE}" "/opt/nocodb/" "Noco-linux-x64"
|
||||
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "latest" "/opt/nocodb/" "Noco-linux-x64"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start nocodb
|
||||
|
||||
@@ -30,7 +30,7 @@ function update_script() {
|
||||
fi
|
||||
|
||||
RELEASE="v5.2.0"
|
||||
if check_for_gh_release "OpenCloud" "opencloud-eu/opencloud" "${RELEASE}"; then
|
||||
if check_for_gh_release "OpenCloud" "opencloud-eu/opencloud" "${RELEASE}" "each release is tested individually before the version is updated. Please do not open issues for this"; then
|
||||
msg_info "Stopping services"
|
||||
systemctl stop opencloud opencloud-wopi
|
||||
msg_ok "Stopped services"
|
||||
|
||||
@@ -29,7 +29,7 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
setup_mariadb
|
||||
if check_for_gh_release "plant-it" "MDeLuise/plant-it" "${RELEASE}"; then
|
||||
if check_for_gh_release "plant-it" "MDeLuise/plant-it" "${RELEASE}" "last version that includes the web frontend"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop plant-it
|
||||
msg_info "Stopped Service"
|
||||
|
||||
@@ -34,10 +34,14 @@ function update_script() {
|
||||
msg_ok "Stopped services"
|
||||
|
||||
cp /opt/reactive-resume/.env /opt/reactive-resume.env.bak
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "reactive-resume" "amruthpillai/reactive-resume" "tarball" "latest" "/opt/reactive-resume"
|
||||
|
||||
msg_info "Updating Reactive Resume (Patience)"
|
||||
cd /opt/reactive-resume
|
||||
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
|
||||
corepack enable
|
||||
corepack prepare --activate
|
||||
export CI="true"
|
||||
export NODE_ENV="production"
|
||||
$STD pnpm install --frozen-lockfile
|
||||
|
||||
@@ -13,11 +13,11 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "0.301.1" "/opt/nocodb/" "Noco-linux-x64"
|
||||
fetch_and_deploy_gh_release "nocodb" "nocodb/nocodb" "singlefile" "latest" "/opt/nocodb/" "Noco-linux-x64"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/nocodb.service
|
||||
echo "[Unit]
|
||||
[Unit]
|
||||
Description=nocodb
|
||||
|
||||
[Service]
|
||||
|
||||
@@ -36,7 +36,7 @@ ExecStart=/usr/local/bin/prometheus \
|
||||
--config.file=/etc/prometheus/prometheus.yml \
|
||||
--storage.tsdb.path=/var/lib/prometheus/ \
|
||||
--web.listen-address=0.0.0.0:9090
|
||||
ExecReload=/bin/kill -HUP \$MAINPID
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
@@ -15,7 +15,7 @@ update_os
|
||||
|
||||
PG_VERSION="16" setup_postgresql
|
||||
PG_DB_NAME="reactive_resume" PG_DB_USER="reactive_resume" setup_postgresql_db
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y chromium
|
||||
@@ -25,6 +25,9 @@ fetch_and_deploy_gh_release "reactive-resume" "amruthpillai/reactive-resume" "ta
|
||||
|
||||
msg_info "Building Reactive Resume (Patience)"
|
||||
cd /opt/reactive-resume
|
||||
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
|
||||
corepack enable
|
||||
corepack prepare --activate
|
||||
export NODE_ENV="production"
|
||||
export CI="true"
|
||||
$STD pnpm install --frozen-lockfile
|
||||
|
||||
@@ -282,7 +282,7 @@ get_cached_version() {
|
||||
cat "/var/cache/app-versions/${app}_version.txt"
|
||||
return 0
|
||||
fi
|
||||
return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
@@ -1100,9 +1100,8 @@ get_system_arch() {
|
||||
# ------------------------------------------------------------------------------
|
||||
create_temp_dir() {
|
||||
local tmp_dir=$(mktemp -d)
|
||||
# Callers should handle their own cleanup (rm -rf "$tmpdir")
|
||||
# Do NOT set trap here — it would overwrite global traps and only fire
|
||||
# when create_temp_dir() itself returns, not the calling function
|
||||
# Set trap to cleanup on EXIT, ERR, INT, TERM
|
||||
trap "rm -rf '$tmp_dir'" EXIT ERR INT TERM
|
||||
echo "$tmp_dir"
|
||||
}
|
||||
|
||||
@@ -2272,6 +2271,7 @@ check_for_gh_release() {
|
||||
local app="$1"
|
||||
local source="$2"
|
||||
local pinned_version_in="${3:-}" # optional
|
||||
local pin_reason="${4:-}" # optional reason shown to user
|
||||
local app_lc=""
|
||||
app_lc="$(echo "${app,,}" | tr -d ' ')"
|
||||
local current_file="$HOME/.${app_lc}"
|
||||
@@ -2445,7 +2445,11 @@ check_for_gh_release() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
msg_ok "No update available: ${app} is already on pinned version (${current})"
|
||||
if [[ -n "$pin_reason" ]]; then
|
||||
msg_ok "No update available: ${app} (${current}) - update held back: ${pin_reason}"
|
||||
else
|
||||
msg_ok "No update available: ${app} (${current}) - update temporarily held back due to issues with newer releases"
|
||||
fi
|
||||
return 1
|
||||
fi
|
||||
|
||||
@@ -2484,6 +2488,7 @@ check_for_codeberg_release() {
|
||||
local app="$1"
|
||||
local source="$2"
|
||||
local pinned_version_in="${3:-}" # optional
|
||||
local pin_reason="${4:-}" # optional reason shown to user
|
||||
local app_lc="${app,,}"
|
||||
local current_file="$HOME/.${app_lc}"
|
||||
|
||||
@@ -2563,7 +2568,11 @@ check_for_codeberg_release() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
msg_ok "No update available: ${app} is already on pinned version (${current})"
|
||||
if [[ -n "$pin_reason" ]]; then
|
||||
msg_ok "No update available: ${app} (${current}) - update held back: ${pin_reason}"
|
||||
else
|
||||
msg_ok "No update available: ${app} (${current}) - update temporarily held back due to issues with newer releases"
|
||||
fi
|
||||
return 1
|
||||
fi
|
||||
|
||||
@@ -5352,7 +5361,7 @@ function setup_java() {
|
||||
"main"
|
||||
fi
|
||||
|
||||
# Get currently installed version (use dpkg-query to avoid column truncation)
|
||||
# Get currently installed version
|
||||
local INSTALLED_VERSION=""
|
||||
INSTALLED_VERSION=$(dpkg-query -W -f '${Package}\n' 2>/dev/null | grep -oP '^temurin-\K[0-9]+(?=-jdk$)' | head -n1 || echo "")
|
||||
|
||||
@@ -7833,8 +7842,8 @@ function setup_uv() {
|
||||
local TMP_DIR=$(mktemp -d)
|
||||
local CACHED_VERSION
|
||||
|
||||
# trap for TMP Cleanup (RETURN instead of EXIT to avoid overwriting global traps)
|
||||
trap "rm -rf '$TMP_DIR'" RETURN
|
||||
# trap for TMP Cleanup
|
||||
trap "rm -rf '$TMP_DIR'" EXIT
|
||||
|
||||
CACHED_VERSION=$(get_cached_version "uv")
|
||||
|
||||
@@ -8104,8 +8113,6 @@ function setup_docker() {
|
||||
local docker_installed=false
|
||||
local portainer_installed=false
|
||||
local USE_DOCKER_REPO="${USE_DOCKER_REPO:-false}"
|
||||
local DOCKER_CURRENT_VERSION=""
|
||||
local DOCKER_LATEST_VERSION=""
|
||||
|
||||
# Check if Docker is already installed
|
||||
if command -v docker &>/dev/null; then
|
||||
|
||||
Reference in New Issue
Block a user