mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-09-13 07:10:51 +02:00
Compare commits
24 Commits
2025-06-20
...
2025-06-22
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5cf8765d9a | ||
|
|
b6a98288cc | ||
|
|
89cfb38459 | ||
|
|
82179752ee | ||
|
|
d495095d21 | ||
|
|
6cc901eba6 | ||
|
|
75b6aa9dac | ||
|
|
aab85ab654 | ||
|
|
5e87af5e8f | ||
|
|
8bd6d89bff | ||
|
|
ddf3019021 | ||
|
|
ef871c44ff | ||
|
|
5fcc97142f | ||
|
|
c6cbb495d2 | ||
|
|
cd84cf974c | ||
|
|
a2b8a87cc4 | ||
|
|
c684472cb4 | ||
|
|
930e4bd556 | ||
|
|
c6c03d4728 | ||
|
|
e024099beb | ||
|
|
08648aca15 | ||
|
|
70a1cfbe28 | ||
|
|
3d99d74685 | ||
|
|
6cc090b693 |
19
CHANGELOG.md
19
CHANGELOG.md
@@ -14,6 +14,25 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
|||||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
||||||
|
|
||||||
|
|
||||||
|
## 2025-06-23
|
||||||
|
|
||||||
|
## 2025-06-22
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- [core]: fix timing issues while template update & timezone setup at create new LXC [@MickLesk](https://github.com/MickLesk) ([#5358](https://github.com/community-scripts/ProxmoxVE/pull/5358))
|
||||||
|
- alpine: increase hdd to 1gb [@MickLesk](https://github.com/MickLesk) ([#5377](https://github.com/community-scripts/ProxmoxVE/pull/5377))
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- fix: casing and naming error after #5254 [@GoetzGoerisch](https://github.com/GoetzGoerisch) ([#5380](https://github.com/community-scripts/ProxmoxVE/pull/5380))
|
||||||
|
- fix: install_adminer > setup_adminer [@MickLesk](https://github.com/MickLesk) ([#5356](https://github.com/community-scripts/ProxmoxVE/pull/5356))
|
||||||
|
- gitea: Update gitea.sh to stop update failures [@tystuyfzand](https://github.com/tystuyfzand) ([#5361](https://github.com/community-scripts/ProxmoxVE/pull/5361))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Immich: unpin release; use fetch & deploy function for update [@vhsdream](https://github.com/vhsdream) ([#5355](https://github.com/community-scripts/ProxmoxVE/pull/5355))
|
||||||
|
|
||||||
## 2025-06-21
|
## 2025-06-21
|
||||||
|
|
||||||
## 2025-06-20
|
## 2025-06-20
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ APP="Alpine"
|
|||||||
var_tags="${var_tags:-os;alpine}"
|
var_tags="${var_tags:-os;alpine}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-512}"
|
||||||
var_disk="${var_disk:-0.5}"
|
var_disk="${var_disk:-1}"
|
||||||
var_os="${var_os:-alpine}"
|
var_os="${var_os:-alpine}"
|
||||||
var_version="${var_version:-3.21}"
|
var_version="${var_version:-3.21}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|||||||
@@ -29,10 +29,11 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://github.com/go-gitea/gitea/releases/latest | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
|
RELEASE=$(curl -fsSL https://github.com/go-gitea/gitea/releases/latest | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
|
||||||
msg_info "Updating $APP to ${RELEASE}"
|
msg_info "Updating $APP to ${RELEASE}"
|
||||||
curl -fsSL "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64" -o $(basename "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64")
|
FILENAME="gitea-$RELEASE-linux-amd64"
|
||||||
|
curl -fsSL "https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64" -o $FILENAME
|
||||||
systemctl stop gitea
|
systemctl stop gitea
|
||||||
rm -rf /usr/local/bin/gitea
|
rm -rf /usr/local/bin/gitea
|
||||||
mv gitea* /usr/local/bin/gitea
|
mv $FILENAME /usr/local/bin/gitea
|
||||||
chmod +x /usr/local/bin/gitea
|
chmod +x /usr/local/bin/gitea
|
||||||
systemctl start gitea
|
systemctl start gitea
|
||||||
msg_ok "Updated $APP Successfully"
|
msg_ok "Updated $APP Successfully"
|
||||||
|
|||||||
216
ct/immich.sh
216
ct/immich.sh
@@ -181,116 +181,114 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/immich-app/immich/releases?per_page=1 | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
if [[ -f ~/.immich && "$RELEASE" == "$(cat ~/.immich)" ]]; then
|
||||||
msg_info "Stopping ${APP} services"
|
msg_ok "No update required. ${APP} is already at v${RELEASE}"
|
||||||
systemctl stop immich-web
|
exit
|
||||||
systemctl stop immich-ml
|
|
||||||
msg_ok "Stopped ${APP}"
|
|
||||||
INSTALL_DIR="/opt/${APP}"
|
|
||||||
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
|
|
||||||
SRC_DIR="${INSTALL_DIR}/source"
|
|
||||||
APP_DIR="${INSTALL_DIR}/app"
|
|
||||||
ML_DIR="${APP_DIR}/machine-learning"
|
|
||||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
|
||||||
VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
|
|
||||||
|
|
||||||
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
|
|
||||||
msg_info "Updating VectorChord"
|
|
||||||
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
|
|
||||||
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
|
|
||||||
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
|
|
||||||
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
|
|
||||||
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
|
|
||||||
-e "/vchordrq.prewarm_dim/d" |
|
|
||||||
sudo -u postgres psql
|
|
||||||
fi
|
|
||||||
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
|
|
||||||
$STD apt install -y ./vchord.deb
|
|
||||||
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
|
|
||||||
systemctl restart postgresql
|
|
||||||
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
|
|
||||||
$STD sudo -u postgres psql -d immich -c "REINDEX DATABASE;"
|
|
||||||
fi
|
|
||||||
echo "$VCHORD_RELEASE" >~/.vchord_version
|
|
||||||
rm ./vchord.deb
|
|
||||||
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
|
|
||||||
rm -rf "${APP_DIR:?}"/*
|
|
||||||
rm -rf "$SRC_DIR"
|
|
||||||
immich_zip=$(mktemp)
|
|
||||||
curl -fsSL "https://github.com/immich-app/immich/archive/refs/tags/v${RELEASE}.zip" -o "$immich_zip"
|
|
||||||
msg_info "Updating ${APP} web and microservices"
|
|
||||||
unzip -q "$immich_zip"
|
|
||||||
mv "$APP-$RELEASE"/ "$SRC_DIR"
|
|
||||||
mkdir -p "$ML_DIR"
|
|
||||||
cd "$SRC_DIR"/server
|
|
||||||
if [[ "$RELEASE" == "1.135.1" ]]; then
|
|
||||||
rm ./src/schema/migrations/1750323941566-UnsetPrewarmDimParameter.ts
|
|
||||||
fi
|
|
||||||
$STD npm install -g node-gyp node-pre-gyp
|
|
||||||
$STD npm ci
|
|
||||||
$STD npm run build
|
|
||||||
$STD npm prune --omit=dev --omit=optional
|
|
||||||
cd "$SRC_DIR"/open-api/typescript-sdk
|
|
||||||
$STD npm ci
|
|
||||||
$STD npm run build
|
|
||||||
cd "$SRC_DIR"/web
|
|
||||||
$STD npm ci
|
|
||||||
$STD npm run build
|
|
||||||
cd "$SRC_DIR"
|
|
||||||
cp -a server/{node_modules,dist,bin,resources,package.json,package-lock.json,start*.sh} "$APP_DIR"/
|
|
||||||
cp -a web/build "$APP_DIR"/www
|
|
||||||
cp LICENSE "$APP_DIR"
|
|
||||||
msg_ok "Updated ${APP} web and microservices"
|
|
||||||
|
|
||||||
cd "$SRC_DIR"/machine-learning
|
|
||||||
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
|
|
||||||
$STD /usr/local/bin/uv venv "$VIRTUAL_ENV"
|
|
||||||
if [[ -f ~/.openvino ]]; then
|
|
||||||
msg_info "Updating HW-accelerated machine-learning"
|
|
||||||
/usr/local/bin/uv -q sync --extra openvino --no-cache --active
|
|
||||||
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
|
|
||||||
msg_ok "Updated HW-accelerated machine-learning"
|
|
||||||
else
|
|
||||||
msg_info "Updating machine-learning"
|
|
||||||
/usr/local/bin/uv -q sync --extra cpu --no-cache --active
|
|
||||||
msg_ok "Updated machine-learning"
|
|
||||||
fi
|
|
||||||
cd "$SRC_DIR"
|
|
||||||
cp -a machine-learning/{ann,immich_ml} "$ML_DIR"
|
|
||||||
mv "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
|
|
||||||
if [[ -f ~/.openvino ]]; then
|
|
||||||
sed -i "/intra_op/s/int = 0/int = os.cpu_count() or 0/" "$ML_DIR"/immich_ml/config.py
|
|
||||||
fi
|
|
||||||
ln -sf "$APP_DIR"/resources "$INSTALL_DIR"
|
|
||||||
cd "$APP_DIR"
|
|
||||||
grep -Rl /usr/src | xargs -n1 sed -i "s|\/usr/src|$INSTALL_DIR|g"
|
|
||||||
grep -RlE "'/build'" | xargs -n1 sed -i "s|'/build'|'$APP_DIR'|g"
|
|
||||||
sed -i "s@\"/cache\"@\"$INSTALL_DIR/cache\"@g" "$ML_DIR"/immich_ml/config.py
|
|
||||||
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$APP_DIR"/upload
|
|
||||||
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$ML_DIR"/upload
|
|
||||||
ln -s "$GEO_DIR" "$APP_DIR"
|
|
||||||
|
|
||||||
msg_info "Updating Immich CLI"
|
|
||||||
$STD npm install --build-from-source sharp
|
|
||||||
rm -rf "$APP_DIR"/node_modules/@img/sharp-{libvips*,linuxmusl-x64}
|
|
||||||
$STD npm i -g @immich/cli
|
|
||||||
msg_ok "Updated Immich CLI"
|
|
||||||
|
|
||||||
chown -R immich:immich "$INSTALL_DIR"
|
|
||||||
echo "$RELEASE" >/opt/"${APP}"_version.txt
|
|
||||||
msg_ok "Updated ${APP} to v${RELEASE}"
|
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
|
||||||
rm -f "$immich_zip"
|
|
||||||
$STD apt-get -y autoremove
|
|
||||||
$STD apt-get -y autoclean
|
|
||||||
msg_ok "Cleaned"
|
|
||||||
else
|
|
||||||
msg_ok "${APP} is already at v${RELEASE}"
|
|
||||||
fi
|
fi
|
||||||
|
msg_info "Stopping ${APP} services"
|
||||||
|
systemctl stop immich-web
|
||||||
|
systemctl stop immich-ml
|
||||||
|
msg_ok "Stopped ${APP}"
|
||||||
|
INSTALL_DIR="/opt/${APP}"
|
||||||
|
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
|
||||||
|
SRC_DIR="${INSTALL_DIR}/source"
|
||||||
|
APP_DIR="${INSTALL_DIR}/app"
|
||||||
|
ML_DIR="${APP_DIR}/machine-learning"
|
||||||
|
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||||
|
VCHORD_RELEASE="$(curl -fsSL https://api.github.com/repos/tensorchord/vectorchord/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')"
|
||||||
|
|
||||||
|
if [[ ! -f ~/.vchord_version ]] || [[ "$VCHORD_RELEASE" != "$(cat ~/.vchord_version)" ]]; then
|
||||||
|
msg_info "Updating VectorChord"
|
||||||
|
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
|
||||||
|
$STD sudo -u postgres pg_dumpall --clean --if-exists --username=postgres | gzip >/etc/postgresql/immich-db-vchord0.3.0.sql.gz
|
||||||
|
chown postgres /etc/postgresql/immich-db-vchord0.3.0.sql.gz
|
||||||
|
$STD sudo -u postgres gunzip --stdout /etc/postgresql/immich-db-vchord0.3.0.sql.gz |
|
||||||
|
sed -e "s/SELECT pg_catalog.set_config('search_path', '', false);/SELECT pg_catalog.set_config('search_path', 'public, pg_catalog', true);/g" \
|
||||||
|
-e "/vchordrq.prewarm_dim/d" |
|
||||||
|
sudo -u postgres psql
|
||||||
|
fi
|
||||||
|
curl -fsSL "https://github.com/tensorchord/vectorchord/releases/download/${VCHORD_RELEASE}/postgresql-16-vchord_${VCHORD_RELEASE}-1_amd64.deb" -o vchord.deb
|
||||||
|
$STD apt install -y ./vchord.deb
|
||||||
|
$STD sudo -u postgres psql -d immich -c "ALTER EXTENSION vchord UPDATE;"
|
||||||
|
systemctl restart postgresql
|
||||||
|
if [[ ! -f ~/.vchord_version ]] || [[ ! "$(cat ~/.vchord_version)" > "0.3.0" ]]; then
|
||||||
|
$STD sudo -u postgres psql -d immich -c "REINDEX DATABASE;"
|
||||||
|
fi
|
||||||
|
echo "$VCHORD_RELEASE" >~/.vchord_version
|
||||||
|
rm ./vchord.deb
|
||||||
|
msg_ok "Updated VectorChord to v${VCHORD_RELEASE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
cp "$ML_DIR"/ml_start.sh "$INSTALL_DIR"
|
||||||
|
rm -rf "${APP_DIR:?}"/*
|
||||||
|
mkdir -p "$ML_DIR"
|
||||||
|
rm -rf "$SRC_DIR"
|
||||||
|
|
||||||
|
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "latest" "$SRC_DIR"
|
||||||
|
|
||||||
|
msg_info "Updating ${APP} web and microservices"
|
||||||
|
cd "$SRC_DIR"/server
|
||||||
|
if [[ "$RELEASE" == "1.135.1" ]]; then
|
||||||
|
rm ./src/schema/migrations/1750323941566-UnsetPrewarmDimParameter.ts
|
||||||
|
fi
|
||||||
|
$STD npm install -g node-gyp node-pre-gyp
|
||||||
|
$STD npm ci
|
||||||
|
$STD npm run build
|
||||||
|
$STD npm prune --omit=dev --omit=optional
|
||||||
|
cd "$SRC_DIR"/open-api/typescript-sdk
|
||||||
|
$STD npm ci
|
||||||
|
$STD npm run build
|
||||||
|
cd "$SRC_DIR"/web
|
||||||
|
$STD npm ci
|
||||||
|
$STD npm run build
|
||||||
|
cd "$SRC_DIR"
|
||||||
|
cp -a server/{node_modules,dist,bin,resources,package.json,package-lock.json,start*.sh} "$APP_DIR"/
|
||||||
|
cp -a web/build "$APP_DIR"/www
|
||||||
|
cp LICENSE "$APP_DIR"
|
||||||
|
msg_ok "Updated ${APP} web and microservices"
|
||||||
|
|
||||||
|
cd "$SRC_DIR"/machine-learning
|
||||||
|
export VIRTUAL_ENV="${ML_DIR}"/ml-venv
|
||||||
|
$STD /usr/local/bin/uv venv "$VIRTUAL_ENV"
|
||||||
|
if [[ -f ~/.openvino ]]; then
|
||||||
|
msg_info "Updating HW-accelerated machine-learning"
|
||||||
|
/usr/local/bin/uv -q sync --extra openvino --no-cache --active
|
||||||
|
patchelf --clear-execstack "${VIRTUAL_ENV}/lib/python3.11/site-packages/onnxruntime/capi/onnxruntime_pybind11_state.cpython-311-x86_64-linux-gnu.so"
|
||||||
|
msg_ok "Updated HW-accelerated machine-learning"
|
||||||
|
else
|
||||||
|
msg_info "Updating machine-learning"
|
||||||
|
/usr/local/bin/uv -q sync --extra cpu --no-cache --active
|
||||||
|
msg_ok "Updated machine-learning"
|
||||||
|
fi
|
||||||
|
cd "$SRC_DIR"
|
||||||
|
cp -a machine-learning/{ann,immich_ml} "$ML_DIR"
|
||||||
|
mv "$INSTALL_DIR"/ml_start.sh "$ML_DIR"
|
||||||
|
if [[ -f ~/.openvino ]]; then
|
||||||
|
sed -i "/intra_op/s/int = 0/int = os.cpu_count() or 0/" "$ML_DIR"/immich_ml/config.py
|
||||||
|
fi
|
||||||
|
ln -sf "$APP_DIR"/resources "$INSTALL_DIR"
|
||||||
|
cd "$APP_DIR"
|
||||||
|
grep -Rl /usr/src | xargs -n1 sed -i "s|\/usr/src|$INSTALL_DIR|g"
|
||||||
|
grep -RlE "'/build'" | xargs -n1 sed -i "s|'/build'|'$APP_DIR'|g"
|
||||||
|
sed -i "s@\"/cache\"@\"$INSTALL_DIR/cache\"@g" "$ML_DIR"/immich_ml/config.py
|
||||||
|
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$APP_DIR"/upload
|
||||||
|
ln -s "${UPLOAD_DIR:-/opt/immich/upload}" "$ML_DIR"/upload
|
||||||
|
ln -s "$GEO_DIR" "$APP_DIR"
|
||||||
|
|
||||||
|
msg_info "Updating Immich CLI"
|
||||||
|
$STD npm install --build-from-source sharp
|
||||||
|
rm -rf "$APP_DIR"/node_modules/@img/sharp-{libvips*,linuxmusl-x64}
|
||||||
|
$STD npm i -g @immich/cli
|
||||||
|
msg_ok "Updated Immich CLI"
|
||||||
|
|
||||||
|
chown -R immich:immich "$INSTALL_DIR"
|
||||||
|
echo "$RELEASE" >/opt/"${APP}"_version.txt
|
||||||
|
msg_ok "Updated ${APP} to v${RELEASE}"
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
systemctl restart immich-ml immich-web
|
systemctl restart immich-ml immich-web
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|||||||
2
frontend/public/json/alpine.json
generated
2
frontend/public/json/alpine.json
generated
@@ -21,7 +21,7 @@
|
|||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 1,
|
"cpu": 1,
|
||||||
"ram": 512,
|
"ram": 512,
|
||||||
"hdd": 0.5,
|
"hdd": 1,
|
||||||
"os": "alpine",
|
"os": "alpine",
|
||||||
"version": "3.21"
|
"version": "3.21"
|
||||||
}
|
}
|
||||||
|
|||||||
204
frontend/public/json/versions.json
generated
204
frontend/public/json/versions.json
generated
@@ -1,19 +1,109 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"name": "OliveTin/OliveTin",
|
||||||
|
"version": "2025.6.22",
|
||||||
|
"date": "2025-06-22T22:41:11Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "qbittorrent/qBittorrent",
|
||||||
|
"version": "release-5.1.1",
|
||||||
|
"date": "2025-06-22T21:41:17Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pocket-id/pocket-id",
|
||||||
|
"version": "v1.4.1",
|
||||||
|
"date": "2025-06-22T19:38:08Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "msgbyte/tianji",
|
||||||
|
"version": "v1.22.3",
|
||||||
|
"date": "2025-06-22T18:29:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "clusterzx/paperless-ai",
|
||||||
|
"version": "v3.0.7",
|
||||||
|
"date": "2025-06-22T17:49:29Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "fuma-nama/fumadocs",
|
||||||
|
"version": "create-fumadocs-app@15.5.4",
|
||||||
|
"date": "2025-06-22T13:12:24Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "TandoorRecipes/recipes",
|
||||||
|
"version": "1.5.35",
|
||||||
|
"date": "2025-06-22T08:30:10Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Jackett/Jackett",
|
||||||
|
"version": "v0.22.2037",
|
||||||
|
"date": "2025-06-22T05:55:32Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "inventree/InvenTree",
|
||||||
|
"version": "0.17.14",
|
||||||
|
"date": "2025-06-21T23:43:04Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "plexguide/Huntarr.io",
|
||||||
|
"version": "8.1.7",
|
||||||
|
"date": "2025-06-21T23:25:45Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "HabitRPG/habitica",
|
||||||
|
"version": "v5.37.0",
|
||||||
|
"date": "2025-06-21T14:05:12Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "fallenbagel/jellyseerr",
|
"name": "fallenbagel/jellyseerr",
|
||||||
"version": "preview-dns-cache-manager",
|
"version": "preview-fix-proxy-auth",
|
||||||
"date": "2025-06-20T23:03:23Z"
|
"date": "2025-06-21T13:43:58Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "rcourtman/Pulse",
|
||||||
|
"version": "v3.30.0",
|
||||||
|
"date": "2025-06-17T16:00:01Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "rogerfar/rdt-client",
|
||||||
|
"version": "v2.0.114",
|
||||||
|
"date": "2025-06-21T11:20:21Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Luligu/matterbridge",
|
||||||
|
"version": "3.0.7",
|
||||||
|
"date": "2025-06-21T09:24:21Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "theonedev/onedev",
|
||||||
|
"version": "v11.11.1",
|
||||||
|
"date": "2025-06-21T07:32:15Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "runtipi/runtipi",
|
||||||
|
"version": "nightly",
|
||||||
|
"date": "2025-06-21T09:03:46Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pocketbase/pocketbase",
|
||||||
|
"version": "v0.28.4",
|
||||||
|
"date": "2025-06-21T08:29:04Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "dgtlmoon/changedetection.io",
|
||||||
|
"version": "0.50.4",
|
||||||
|
"date": "2025-06-21T07:47:02Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "coder/code-server",
|
||||||
|
"version": "v4.101.1",
|
||||||
|
"date": "2025-06-21T02:47:08Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "go-gitea/gitea",
|
"name": "go-gitea/gitea",
|
||||||
"version": "v1.24.2",
|
"version": "v1.24.2",
|
||||||
"date": "2025-06-20T20:37:55Z"
|
"date": "2025-06-20T20:37:55Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "coder/code-server",
|
|
||||||
"version": "v4.101.0",
|
|
||||||
"date": "2025-06-20T20:21:50Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "immich-app/immich",
|
"name": "immich-app/immich",
|
||||||
"version": "v1.135.3",
|
"version": "v1.135.3",
|
||||||
@@ -34,11 +124,6 @@
|
|||||||
"version": "v1.25.0",
|
"version": "v1.25.0",
|
||||||
"date": "2025-06-20T19:15:43Z"
|
"date": "2025-06-20T19:15:43Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "msgbyte/tianji",
|
|
||||||
"version": "v1.22.1",
|
|
||||||
"date": "2025-06-20T18:12:20Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "mongodb/mongo",
|
"name": "mongodb/mongo",
|
||||||
"version": "r8.1.2-rc0",
|
"version": "r8.1.2-rc0",
|
||||||
@@ -54,16 +139,16 @@
|
|||||||
"version": "v4.0.15.2941",
|
"version": "v4.0.15.2941",
|
||||||
"date": "2025-06-20T17:20:54Z"
|
"date": "2025-06-20T17:20:54Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.2.5",
|
||||||
|
"date": "2025-05-28T06:49:43Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "bunkerity/bunkerweb",
|
"name": "bunkerity/bunkerweb",
|
||||||
"version": "testing",
|
"version": "testing",
|
||||||
"date": "2025-06-16T18:10:42Z"
|
"date": "2025-06-16T18:10:42Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "plexguide/Huntarr.io",
|
|
||||||
"version": "8.1.6",
|
|
||||||
"date": "2025-06-20T14:50:59Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "docker/compose",
|
"name": "docker/compose",
|
||||||
"version": "v2.37.2",
|
"version": "v2.37.2",
|
||||||
@@ -84,11 +169,6 @@
|
|||||||
"version": "v12.7.0",
|
"version": "v12.7.0",
|
||||||
"date": "2025-06-20T08:31:16Z"
|
"date": "2025-06-20T08:31:16Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Jackett/Jackett",
|
|
||||||
"version": "v0.22.2032",
|
|
||||||
"date": "2025-06-20T05:57:27Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "arunavo4/gitea-mirror",
|
"name": "arunavo4/gitea-mirror",
|
||||||
"version": "v2.16.3",
|
"version": "v2.16.3",
|
||||||
@@ -104,16 +184,6 @@
|
|||||||
"version": "v2.17.1",
|
"version": "v2.17.1",
|
||||||
"date": "2025-06-19T19:35:01Z"
|
"date": "2025-06-19T19:35:01Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "pocket-id/pocket-id",
|
|
||||||
"version": "v1.4.0",
|
|
||||||
"date": "2025-06-19T18:30:11Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.2.5",
|
|
||||||
"date": "2025-05-28T06:49:43Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "rclone/rclone",
|
"name": "rclone/rclone",
|
||||||
"version": "v1.70.1",
|
"version": "v1.70.1",
|
||||||
@@ -174,11 +244,6 @@
|
|||||||
"version": "v3.12.7",
|
"version": "v3.12.7",
|
||||||
"date": "2025-06-18T14:22:53Z"
|
"date": "2025-06-18T14:22:53Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "clusterzx/paperless-ai",
|
|
||||||
"version": "v3.0.6",
|
|
||||||
"date": "2025-06-18T14:18:13Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "openhab/openhab-core",
|
"name": "openhab/openhab-core",
|
||||||
"version": "5.0.0.M3",
|
"version": "5.0.0.M3",
|
||||||
@@ -219,11 +284,6 @@
|
|||||||
"version": "v6.12.7",
|
"version": "v6.12.7",
|
||||||
"date": "2025-06-18T03:44:24Z"
|
"date": "2025-06-18T03:44:24Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "rcourtman/Pulse",
|
|
||||||
"version": "v3.30.0",
|
|
||||||
"date": "2025-06-17T16:00:01Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "grafana/grafana",
|
"name": "grafana/grafana",
|
||||||
"version": "v11.5.6",
|
"version": "v11.5.6",
|
||||||
@@ -234,11 +294,6 @@
|
|||||||
"version": "jenkins-2.515",
|
"version": "jenkins-2.515",
|
||||||
"date": "2025-06-17T19:17:56Z"
|
"date": "2025-06-17T19:17:56Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "HabitRPG/habitica",
|
|
||||||
"version": "v5.36.6",
|
|
||||||
"date": "2025-06-17T18:12:31Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "project-zot/zot",
|
"name": "project-zot/zot",
|
||||||
"version": "v2.1.5",
|
"version": "v2.1.5",
|
||||||
@@ -299,21 +354,11 @@
|
|||||||
"version": "version/2025.6.2",
|
"version": "version/2025.6.2",
|
||||||
"date": "2025-06-16T17:54:39Z"
|
"date": "2025-06-16T17:54:39Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "runtipi/runtipi",
|
|
||||||
"version": "nightly",
|
|
||||||
"date": "2025-06-16T17:35:17Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "emqx/emqx",
|
"name": "emqx/emqx",
|
||||||
"version": "e5.9.1-alpha.1",
|
"version": "e5.9.1-alpha.1",
|
||||||
"date": "2025-06-16T15:34:01Z"
|
"date": "2025-06-16T15:34:01Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "fuma-nama/fumadocs",
|
|
||||||
"version": "fumadocs-openapi@9.0.12",
|
|
||||||
"date": "2025-06-16T15:09:27Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "open-webui/open-webui",
|
"name": "open-webui/open-webui",
|
||||||
"version": "v0.6.15",
|
"version": "v0.6.15",
|
||||||
@@ -399,11 +444,6 @@
|
|||||||
"version": "v2.25.1",
|
"version": "v2.25.1",
|
||||||
"date": "2025-06-14T23:32:15Z"
|
"date": "2025-06-14T23:32:15Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "theonedev/onedev",
|
|
||||||
"version": "v11.11.0",
|
|
||||||
"date": "2025-06-14T13:23:36Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "semaphoreui/semaphore",
|
"name": "semaphoreui/semaphore",
|
||||||
"version": "v2.15.0",
|
"version": "v2.15.0",
|
||||||
@@ -419,11 +459,6 @@
|
|||||||
"version": "2025.6.1",
|
"version": "2025.6.1",
|
||||||
"date": "2025-06-13T20:16:18Z"
|
"date": "2025-06-13T20:16:18Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Luligu/matterbridge",
|
|
||||||
"version": "3.0.6",
|
|
||||||
"date": "2025-06-13T15:02:37Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "wazuh/wazuh",
|
"name": "wazuh/wazuh",
|
||||||
"version": "coverity-w25-4.13.0",
|
"version": "coverity-w25-4.13.0",
|
||||||
@@ -459,21 +494,11 @@
|
|||||||
"version": "v1.12.0-rc.4",
|
"version": "v1.12.0-rc.4",
|
||||||
"date": "2025-06-12T00:27:41Z"
|
"date": "2025-06-12T00:27:41Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "TandoorRecipes/recipes",
|
|
||||||
"version": "2.0.0-alpha-4",
|
|
||||||
"date": "2025-05-14T05:01:45Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "MediaBrowser/Emby.Releases",
|
"name": "MediaBrowser/Emby.Releases",
|
||||||
"version": "4.8.11.0",
|
"version": "4.8.11.0",
|
||||||
"date": "2025-03-10T06:39:11Z"
|
"date": "2025-03-10T06:39:11Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "dgtlmoon/changedetection.io",
|
|
||||||
"version": "0.50.3",
|
|
||||||
"date": "2025-06-11T15:19:52Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "autobrr/autobrr",
|
"name": "autobrr/autobrr",
|
||||||
"version": "v1.63.1",
|
"version": "v1.63.1",
|
||||||
@@ -514,11 +539,6 @@
|
|||||||
"version": "v1.84.2",
|
"version": "v1.84.2",
|
||||||
"date": "2025-06-09T23:43:27Z"
|
"date": "2025-06-09T23:43:27Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "pocketbase/pocketbase",
|
|
||||||
"version": "v0.28.3",
|
|
||||||
"date": "2025-06-09T18:11:46Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Brandawg93/PeaNUT",
|
"name": "Brandawg93/PeaNUT",
|
||||||
"version": "v5.8.0",
|
"version": "v5.8.0",
|
||||||
@@ -554,11 +574,6 @@
|
|||||||
"version": "v1.10.0",
|
"version": "v1.10.0",
|
||||||
"date": "2025-06-07T08:31:48Z"
|
"date": "2025-06-07T08:31:48Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "OliveTin/OliveTin",
|
|
||||||
"version": "2025.6.6",
|
|
||||||
"date": "2025-06-06T21:39:22Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "diced/zipline",
|
"name": "diced/zipline",
|
||||||
"version": "v4.1.2",
|
"version": "v4.1.2",
|
||||||
@@ -639,11 +654,6 @@
|
|||||||
"version": "1.26.3",
|
"version": "1.26.3",
|
||||||
"date": "2025-06-02T22:00:14Z"
|
"date": "2025-06-02T22:00:14Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "inventree/InvenTree",
|
|
||||||
"version": "0.17.13",
|
|
||||||
"date": "2025-06-02T12:44:20Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "usememos/memos",
|
"name": "usememos/memos",
|
||||||
"version": "v0.24.4",
|
"version": "v0.24.4",
|
||||||
@@ -759,11 +769,6 @@
|
|||||||
"version": "RELEASE.2025-05-24T17-08-30Z",
|
"version": "RELEASE.2025-05-24T17-08-30Z",
|
||||||
"date": "2025-05-24T21:42:19Z"
|
"date": "2025-05-24T21:42:19Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "rogerfar/rdt-client",
|
|
||||||
"version": "v2.0.113",
|
|
||||||
"date": "2025-05-23T01:47:35Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "0xERR0R/blocky",
|
"name": "0xERR0R/blocky",
|
||||||
"version": "v0.26.2",
|
"version": "v0.26.2",
|
||||||
@@ -944,11 +949,6 @@
|
|||||||
"version": "v2.6.3",
|
"version": "v2.6.3",
|
||||||
"date": "2025-04-27T09:05:42Z"
|
"date": "2025-04-27T09:05:42Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "qbittorrent/qBittorrent",
|
|
||||||
"version": "release-5.1.0",
|
|
||||||
"date": "2025-04-27T08:53:48Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "photoprism/photoprism",
|
"name": "photoprism/photoprism",
|
||||||
"version": "250426-27ec7a128",
|
"version": "250426-27ec7a128",
|
||||||
|
|||||||
@@ -282,7 +282,7 @@ GEO_DIR="${INSTALL_DIR}/geodata"
|
|||||||
mkdir -p "$INSTALL_DIR"
|
mkdir -p "$INSTALL_DIR"
|
||||||
mkdir -p {"${APP_DIR}","${UPLOAD_DIR}","${GEO_DIR}","${ML_DIR}","${INSTALL_DIR}"/cache}
|
mkdir -p {"${APP_DIR}","${UPLOAD_DIR}","${GEO_DIR}","${ML_DIR}","${INSTALL_DIR}"/cache}
|
||||||
|
|
||||||
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v1.135.0" "$SRC_DIR"
|
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "latest" "$SRC_DIR"
|
||||||
|
|
||||||
msg_info "Installing ${APPLICATION} (more patience please)"
|
msg_info "Installing ${APPLICATION} (more patience please)"
|
||||||
|
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ msg_ok "Set up PostgreSQL DB"
|
|||||||
|
|
||||||
read -r -p "${TAB3}Would you like to add Adminer? <y/N> " prompt
|
read -r -p "${TAB3}Would you like to add Adminer? <y/N> " prompt
|
||||||
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
|
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
|
||||||
install_adminer
|
setup_adminer
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Installing Linkwarden (Patience)"
|
msg_info "Installing Linkwarden (Patience)"
|
||||||
|
|||||||
@@ -1057,7 +1057,9 @@ EOF
|
|||||||
msg_info "Starting LXC Container"
|
msg_info "Starting LXC Container"
|
||||||
pct start "$CTID"
|
pct start "$CTID"
|
||||||
msg_ok "Started LXC Container"
|
msg_ok "Started LXC Container"
|
||||||
|
|
||||||
msg_info "Customizing LXC Container"
|
msg_info "Customizing LXC Container"
|
||||||
|
: "${tz:=Etc/UTC}"
|
||||||
if [ "$var_os" == "alpine" ]; then
|
if [ "$var_os" == "alpine" ]; then
|
||||||
sleep 3
|
sleep 3
|
||||||
pct exec "$CTID" -- /bin/sh -c 'cat <<EOF >/etc/apk/repositories
|
pct exec "$CTID" -- /bin/sh -c 'cat <<EOF >/etc/apk/repositories
|
||||||
@@ -1067,19 +1069,22 @@ EOF'
|
|||||||
pct exec "$CTID" -- ash -c "apk add bash newt curl openssh nano mc ncurses >/dev/null"
|
pct exec "$CTID" -- ash -c "apk add bash newt curl openssh nano mc ncurses >/dev/null"
|
||||||
else
|
else
|
||||||
sleep 3
|
sleep 3
|
||||||
# Set locale and timezone before update
|
|
||||||
pct exec "$CTID" -- bash -c "sed -i '/$LANG/ s/^# //' /etc/locale.gen"
|
pct exec "$CTID" -- bash -c "sed -i '/$LANG/ s/^# //' /etc/locale.gen"
|
||||||
pct exec "$CTID" -- bash -c "locale_line=\$(grep -v '^#' /etc/locale.gen | grep -E '^[a-zA-Z]' | awk '{print \$1}' | head -n 1) && \
|
pct exec "$CTID" -- bash -c "locale_line=\$(grep -v '^#' /etc/locale.gen | grep -E '^[a-zA-Z]' | awk '{print \$1}' | head -n 1) && \
|
||||||
echo LANG=\$locale_line >/etc/default/locale && \
|
echo LANG=\$locale_line >/etc/default/locale && \
|
||||||
locale-gen >/dev/null && \
|
locale-gen >/dev/null && \
|
||||||
export LANG=\$locale_line"
|
export LANG=\$locale_line"
|
||||||
|
|
||||||
pct exec "$CTID" -- bash -c "echo $tz >/etc/timezone && ln -sf /usr/share/zoneinfo/$tz /etc/localtime"
|
if pct exec "$CTID" -- test -e "/usr/share/zoneinfo/$tz"; then
|
||||||
|
pct exec "$CTID" -- bash -c "echo $tz >/etc/timezone && ln -sf /usr/share/zoneinfo/$tz /etc/localtime"
|
||||||
|
else
|
||||||
|
msg_info "Skipping timezone setup – zone '$tz' not found in container"
|
||||||
|
fi
|
||||||
|
|
||||||
# Install curl
|
|
||||||
pct exec "$CTID" -- bash -c "apt-get update >/dev/null && apt-get install -y sudo curl mc gnupg2 >/dev/null"
|
pct exec "$CTID" -- bash -c "apt-get update >/dev/null && apt-get install -y sudo curl mc gnupg2 >/dev/null"
|
||||||
fi
|
fi
|
||||||
msg_ok "Customized LXC Container"
|
msg_ok "Customized LXC Container"
|
||||||
|
|
||||||
lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/install/"$var_install".sh)" $?
|
lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/install/"$var_install".sh)" $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -156,13 +156,19 @@ if [ -f /etc/pve/corosync.conf ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Update LXC template list
|
# Update LXC template list
|
||||||
msg_info "Updating LXC Template List"
|
TEMPLATE_SEARCH="${PCT_OSTYPE}-${PCT_OSVERSION:-}"
|
||||||
|
|
||||||
if ! timeout 10 pveam update >/dev/null 2>&1; then
|
msg_info "Updating LXC Template List"
|
||||||
msg_error "Failed to update LXC template list. Please check your Proxmox host's internet connection and DNS resolution."
|
if ! timeout 15 pveam update >/dev/null 2>&1; then
|
||||||
exit 201
|
TEMPLATE_FALLBACK=$(pveam list "$TEMPLATE_STORAGE" | awk "/$TEMPLATE_SEARCH/ {print \$2}" | sort -t - -k 2 -V | tail -n1)
|
||||||
|
if [[ -z "$TEMPLATE_FALLBACK" ]]; then
|
||||||
|
msg_error "Failed to update LXC template list and no local template matching '$TEMPLATE_SEARCH' found."
|
||||||
|
exit 201
|
||||||
|
fi
|
||||||
|
msg_info "Skipping template update – using local fallback: $TEMPLATE_FALLBACK"
|
||||||
|
else
|
||||||
|
msg_ok "LXC Template List Updated"
|
||||||
fi
|
fi
|
||||||
$STD msg_ok "LXC Template List Updated"
|
|
||||||
|
|
||||||
# Get LXC template string
|
# Get LXC template string
|
||||||
TEMPLATE_SEARCH="${PCT_OSTYPE}-${PCT_OSVERSION:-}"
|
TEMPLATE_SEARCH="${PCT_OSTYPE}-${PCT_OSVERSION:-}"
|
||||||
|
|||||||
@@ -516,7 +516,7 @@ DESCRIPTION=$(
|
|||||||
<img src='https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width:81px;height:112px;'/>
|
<img src='https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width:81px;height:112px;'/>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<h2 style='font-size: 24px; margin: 20px 0;'>OpenWRT VM</h2>
|
<h2 style='font-size: 24px; margin: 20px 0;'>OpenWrt VM</h2>
|
||||||
|
|
||||||
<p style='margin: 16px 0;'>
|
<p style='margin: 16px 0;'>
|
||||||
<a href='https://ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>
|
<a href='https://ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>
|
||||||
|
|||||||
@@ -403,7 +403,7 @@ DESCRIPTION=$(
|
|||||||
<img src='https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width:81px;height:112px;'/>
|
<img src='https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/images/logo-81x112.png' alt='Logo' style='width:81px;height:112px;'/>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<h2 style='font-size: 24px; margin: 20px 0;'>OpenWRT VM</h2>
|
<h2 style='font-size: 24px; margin: 20px 0;'>Homeassistant VM</h2>
|
||||||
|
|
||||||
<p style='margin: 16px 0;'>
|
<p style='margin: 16px 0;'>
|
||||||
<a href='https://ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>
|
<a href='https://ko-fi.com/community_scripts' target='_blank' rel='noopener noreferrer'>
|
||||||
|
|||||||
Reference in New Issue
Block a user