mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-21 04:55:15 +00:00
Compare commits
2 Commits
github-act
...
omada_remo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b26ad4dcb9 | ||
|
|
e404a1213c |
18
CHANGELOG.md
18
CHANGELOG.md
@@ -10,26 +10,8 @@
|
|||||||
> [!CAUTION]
|
> [!CAUTION]
|
||||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||||
|
|
||||||
## 2025-11-21
|
|
||||||
|
|
||||||
## 2025-11-20
|
## 2025-11-20
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
|
||||||
|
|
||||||
- #### 🐞 Bug Fixes
|
|
||||||
|
|
||||||
- core: change 'uv cache clear' to 'uv cache clean' [@MickLesk](https://github.com/MickLesk) ([#9299](https://github.com/community-scripts/ProxmoxVE/pull/9299))
|
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- Immich v2.3.1: OpenVINO tuning, OCR fixes, Maintenance mode, workflows/plugin framework [@vhsdream](https://github.com/vhsdream) ([#9310](https://github.com/community-scripts/ProxmoxVE/pull/9310))
|
|
||||||
- kasm: add: update [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9253](https://github.com/community-scripts/ProxmoxVE/pull/9253))
|
|
||||||
- tools/pve: expand PVE support to 9.0–9.1 (post-install & netdata) [@MickLesk](https://github.com/MickLesk) ([#9298](https://github.com/community-scripts/ProxmoxVE/pull/9298))
|
|
||||||
|
|
||||||
- #### 💥 Breaking Changes
|
|
||||||
|
|
||||||
- Omada - AVX-only support [@MickLesk](https://github.com/MickLesk) ([#9295](https://github.com/community-scripts/ProxmoxVE/pull/9295))
|
|
||||||
|
|
||||||
## 2025-11-19
|
## 2025-11-19
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
### 🚀 Updated Scripts
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
module proxmox-api
|
module proxmox-api
|
||||||
|
|
||||||
go 1.24.0
|
go 1.23.2
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/gorilla/mux v1.8.1
|
github.com/gorilla/mux v1.8.1
|
||||||
@@ -17,7 +17,7 @@ require (
|
|||||||
github.com/xdg-go/scram v1.1.2 // indirect
|
github.com/xdg-go/scram v1.1.2 // indirect
|
||||||
github.com/xdg-go/stringprep v1.0.4 // indirect
|
github.com/xdg-go/stringprep v1.0.4 // indirect
|
||||||
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
|
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
|
||||||
golang.org/x/crypto v0.45.0 // indirect
|
golang.org/x/crypto v0.35.0 // indirect
|
||||||
golang.org/x/sync v0.18.0 // indirect
|
golang.org/x/sync v0.11.0 // indirect
|
||||||
golang.org/x/text v0.31.0 // indirect
|
golang.org/x/text v0.22.0 // indirect
|
||||||
)
|
)
|
||||||
|
|||||||
12
api/go.sum
12
api/go.sum
@@ -27,16 +27,16 @@ go.mongodb.org/mongo-driver v1.17.2 h1:gvZyk8352qSfzyZ2UMWcpDpMSGEr1eqE4T793Sqyh
|
|||||||
go.mongodb.org/mongo-driver v1.17.2/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
|
go.mongodb.org/mongo-driver v1.17.2/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
|
||||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||||
golang.org/x/crypto v0.45.0 h1:jMBrvKuj23MTlT0bQEOBcAE0mjg8mK9RXFhRH6nyF3Q=
|
golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs=
|
||||||
golang.org/x/crypto v0.45.0/go.mod h1:XTGrrkGJve7CYK7J8PEww4aY7gM3qMCElcJQ8n8JdX4=
|
golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ=
|
||||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
|
||||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
|
||||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
golang.org/x/sync v0.18.0 h1:kr88TuHDroi+UVf+0hZnirlk8o8T+4MrK6mr60WkH/I=
|
golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
|
||||||
golang.org/x/sync v0.18.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
@@ -48,8 +48,8 @@ golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
|||||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||||
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
|
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
|
||||||
golang.org/x/text v0.31.0 h1:aC8ghyu4JhP8VojJ2lEHBnochRno1sgL6nEi9WGFGMM=
|
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
|
||||||
golang.org/x/text v0.31.0/go.mod h1:tKRAlv61yKIjGGHX/4tP1LTbc13YSec1pxVEWXzfoeM=
|
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
|
||||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
|
||||||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
||||||
|
|||||||
29
ct/immich.sh
29
ct/immich.sh
@@ -61,15 +61,6 @@ EOF
|
|||||||
msg_ok "Installed libmimalloc3"
|
msg_ok "Installed libmimalloc3"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ! -f /etc/apt/sources.list.d/mise.list ]]; then
|
|
||||||
msg_info "Installing Mise"
|
|
||||||
curl -fSs https://mise.jdx.dev/gpg-key.pub | tee /etc/apt/keyrings/mise-archive-keyring.pub 1>/dev/null
|
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.pub arch=amd64] https://mise.jdx.dev/deb stable main" | tee /etc/apt/sources.list.d/mise.list
|
|
||||||
$STD apt update
|
|
||||||
$STD apt install -y mise
|
|
||||||
msg_ok "Installed Mise"
|
|
||||||
fi
|
|
||||||
|
|
||||||
STAGING_DIR=/opt/staging
|
STAGING_DIR=/opt/staging
|
||||||
BASE_DIR=${STAGING_DIR}/base-images
|
BASE_DIR=${STAGING_DIR}/base-images
|
||||||
SOURCE_DIR=${STAGING_DIR}/image-source
|
SOURCE_DIR=${STAGING_DIR}/image-source
|
||||||
@@ -102,7 +93,7 @@ EOF
|
|||||||
msg_ok "Image-processing libraries up to date"
|
msg_ok "Image-processing libraries up to date"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
RELEASE="2.3.1"
|
RELEASE="2.2.3"
|
||||||
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
if check_for_gh_release "immich" "immich-app/immich" "${RELEASE}"; then
|
||||||
msg_info "Stopping Services"
|
msg_info "Stopping Services"
|
||||||
systemctl stop immich-web
|
systemctl stop immich-web
|
||||||
@@ -130,7 +121,6 @@ EOF
|
|||||||
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
|
UPLOAD_DIR="$(sed -n '/^IMMICH_MEDIA_LOCATION/s/[^=]*=//p' /opt/immich/.env)"
|
||||||
SRC_DIR="${INSTALL_DIR}/source"
|
SRC_DIR="${INSTALL_DIR}/source"
|
||||||
APP_DIR="${INSTALL_DIR}/app"
|
APP_DIR="${INSTALL_DIR}/app"
|
||||||
PLUGIN_DIR="${APP_DIR}/corePlugin"
|
|
||||||
ML_DIR="${APP_DIR}/machine-learning"
|
ML_DIR="${APP_DIR}/machine-learning"
|
||||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||||
|
|
||||||
@@ -155,7 +145,9 @@ EOF
|
|||||||
rm -rf "${APP_DIR:?}"/*
|
rm -rf "${APP_DIR:?}"/*
|
||||||
)
|
)
|
||||||
|
|
||||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
rm -rf "$SRC_DIR"
|
||||||
|
|
||||||
|
fetch_and_deploy_gh_release "immich" "immich-app/immich" "tarball" "v${RELEASE}" "$SRC_DIR"
|
||||||
|
|
||||||
msg_info "Updating ${APP} web and microservices"
|
msg_info "Updating ${APP} web and microservices"
|
||||||
cd "$SRC_DIR"/server
|
cd "$SRC_DIR"/server
|
||||||
@@ -188,18 +180,7 @@ EOF
|
|||||||
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
|
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
|
||||||
cd "$APP_DIR"
|
cd "$APP_DIR"
|
||||||
mv "$INSTALL_DIR"/start.sh "$APP_DIR"/bin
|
mv "$INSTALL_DIR"/start.sh "$APP_DIR"/bin
|
||||||
|
msg_ok "Updated ${APP} web and microservices"
|
||||||
# plugins
|
|
||||||
cd "$SRC_DIR"
|
|
||||||
$STD mise trust --ignore ./mise.toml
|
|
||||||
$STD mise trust ./plugins/mise.toml
|
|
||||||
cd plugins
|
|
||||||
$STD mise install
|
|
||||||
$STD mise run build
|
|
||||||
mkdir -p "$PLUGIN_DIR"
|
|
||||||
cp -r ./dist "$PLUGIN_DIR"/dist
|
|
||||||
cp ./manifest.json "$PLUGIN_DIR"
|
|
||||||
msg_ok "Updated ${APP} server, web, cli and plugins"
|
|
||||||
|
|
||||||
cd "$SRC_DIR"/machine-learning
|
cd "$SRC_DIR"/machine-learning
|
||||||
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
|
mkdir -p "$ML_DIR" && chown -R immich:immich "$ML_DIR"
|
||||||
|
|||||||
47
ct/kasm.sh
47
ct/kasm.sh
@@ -25,51 +25,14 @@ function update_script() {
|
|||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -d /opt/kasm/current ]]; then
|
if [[ ! -d /var ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
msg_info "Updating LXC"
|
||||||
msg_info "Checking for new version"
|
$STD apt update
|
||||||
CURRENT_VERSION=$(readlink -f /opt/kasm/current | awk -F'/' '{print $4}')
|
$STD apt -y upgrade
|
||||||
KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1)
|
msg_ok "Updated LXC"
|
||||||
if [[ -z "$KASM_URL" ]]; then
|
|
||||||
msg_error "Unable to detect latest Kasm release URL."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
|
|
||||||
msg_info "Checked for new version"
|
|
||||||
|
|
||||||
msg_info "Removing outdated docker-compose plugin"
|
|
||||||
[ -f ~/.docker/cli-plugins/docker-compose ] && rm -rf ~/.docker/cli-plugins/docker-compose
|
|
||||||
msg_ok "Removed outdated docker-compose plugin"
|
|
||||||
|
|
||||||
if [[ -z "$CURRENT_VERSION" ]] || [[ "$KASM_VERSION" != "$CURRENT_VERSION" ]]; then
|
|
||||||
msg_info "Updating Kasm"
|
|
||||||
cd /tmp
|
|
||||||
|
|
||||||
msg_warn "WARNING: This script will run an external installer from a third-party source (https://www.kasmweb.com/)."
|
|
||||||
msg_warn "The following code is NOT maintained or audited by our repository."
|
|
||||||
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
|
|
||||||
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ upgrade.sh inside tar.gz $KASM_URL"
|
|
||||||
echo
|
|
||||||
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
|
|
||||||
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
|
|
||||||
msg_error "Aborted by user. No changes have been made."
|
|
||||||
exit 10
|
|
||||||
fi
|
|
||||||
curl -fsSL -o "/tmp/kasm_release_${KASM_VERSION}.tar.gz" "$KASM_URL"
|
|
||||||
tar -xf "kasm_release_${KASM_VERSION}.tar.gz"
|
|
||||||
chmod +x /tmp/kasm_release/install.sh
|
|
||||||
rm -f /tmp/kasm_release_${KASM_VERSION}.tar.gz
|
|
||||||
|
|
||||||
bash /tmp/kasm_release/upgrade.sh --proxy-port 443
|
|
||||||
rm -rf /tmp/kasm_release
|
|
||||||
msg_ok "Updated Successfully"
|
|
||||||
else
|
|
||||||
msg_ok "No update required. Kasm is already at v${KASM_VERSION}"
|
|
||||||
|
|
||||||
fi
|
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
],
|
],
|
||||||
"date_created": "2025-05-26",
|
"date_created": "2025-05-26",
|
||||||
"type": "ct",
|
"type": "ct",
|
||||||
"updateable": true,
|
"updateable": false,
|
||||||
"privileged": true,
|
"privileged": true,
|
||||||
"config_path": "",
|
"config_path": "",
|
||||||
"interface_port": 443,
|
"interface_port": 443,
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
],
|
],
|
||||||
"date_created": "2025-08-26",
|
"date_created": "2025-08-26",
|
||||||
"type": "ct",
|
"type": "ct",
|
||||||
"updateable": false,
|
"updateable": true,
|
||||||
"privileged": false,
|
"privileged": false,
|
||||||
"interface_port": 8888,
|
"interface_port": 8888,
|
||||||
"documentation": "https://docs.searxng.org/",
|
"documentation": "https://docs.searxng.org/",
|
||||||
|
|||||||
@@ -1,134 +1,14 @@
|
|||||||
[
|
[
|
||||||
{
|
|
||||||
"name": "TasmoAdmin/TasmoAdmin",
|
|
||||||
"version": "v4.3.2",
|
|
||||||
"date": "2025-10-18T12:11:00Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "rcourtman/Pulse",
|
|
||||||
"version": "v4.32.2",
|
|
||||||
"date": "2025-11-20T22:25:40Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "project-zot/zot",
|
|
||||||
"version": "v2.1.11",
|
|
||||||
"date": "2025-11-20T20:14:44Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "readeck/readeck",
|
|
||||||
"version": "0.21.0",
|
|
||||||
"date": "2025-11-20T18:35:59Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "saltstack/salt",
|
|
||||||
"version": "v3007.9",
|
|
||||||
"date": "2025-11-20T17:58:32Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "msgbyte/tianji",
|
|
||||||
"version": "v1.30.12",
|
|
||||||
"date": "2025-11-20T16:13:19Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "meilisearch/meilisearch",
|
|
||||||
"version": "prototype-v1.26.0.arm-native-docker-build-1",
|
|
||||||
"date": "2025-11-20T15:38:39Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "duplicati/duplicati",
|
|
||||||
"version": "v2.2.0.101-2.2.0.101_canary_2025-11-20",
|
|
||||||
"date": "2025-11-20T14:50:45Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "NodeBB/NodeBB",
|
|
||||||
"version": "v4.6.3",
|
|
||||||
"date": "2025-11-20T14:13:22Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "n8n-io/n8n",
|
|
||||||
"version": "n8n@1.120.4",
|
|
||||||
"date": "2025-11-19T12:57:55Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "SigNoz/signoz",
|
|
||||||
"version": "v0.102.1",
|
|
||||||
"date": "2025-11-20T12:20:18Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "kimai/kimai",
|
|
||||||
"version": "2.44.0",
|
|
||||||
"date": "2025-11-20T11:01:01Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "itsmng/itsm-ng",
|
|
||||||
"version": "v2.1.1",
|
|
||||||
"date": "2025-11-20T10:54:07Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "fuma-nama/fumadocs",
|
|
||||||
"version": "fumadocs-ui@16.0.15",
|
|
||||||
"date": "2025-11-20T10:52:04Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "mattermost/mattermost",
|
|
||||||
"version": "v10.11.7",
|
|
||||||
"date": "2025-11-17T08:40:53Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Athou/commafeed",
|
|
||||||
"version": "5.12.0",
|
|
||||||
"date": "2025-11-20T06:18:58Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Jackett/Jackett",
|
|
||||||
"version": "v0.24.336",
|
|
||||||
"date": "2025-11-20T05:55:54Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "documenso/documenso",
|
|
||||||
"version": "v2.0.14",
|
|
||||||
"date": "2025-11-20T04:12:40Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "immich-app/immich",
|
|
||||||
"version": "v2.3.1",
|
|
||||||
"date": "2025-11-20T03:10:27Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "nextcloud/nextcloudpi",
|
|
||||||
"version": "v1.56.0",
|
|
||||||
"date": "2025-11-20T02:28:35Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "BerriAI/litellm",
|
|
||||||
"version": "v1.80.0.dev6",
|
|
||||||
"date": "2025-11-20T02:03:21Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "jeedom/core",
|
|
||||||
"version": "4.4.20",
|
|
||||||
"date": "2025-11-20T00:27:04Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "steveiliop56/tinyauth",
|
|
||||||
"version": "v4.0.1",
|
|
||||||
"date": "2025-10-15T16:53:55Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "coder/code-server",
|
|
||||||
"version": "v4.106.2",
|
|
||||||
"date": "2025-11-20T00:23:05Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.4.5",
|
|
||||||
"date": "2025-11-12T15:24:23Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "esphome/esphome",
|
"name": "esphome/esphome",
|
||||||
"version": "2025.11.0",
|
"version": "2025.11.0",
|
||||||
"date": "2025-11-19T22:37:46Z"
|
"date": "2025-11-19T22:37:46Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "immich-app/immich",
|
||||||
|
"version": "v2.3.0",
|
||||||
|
"date": "2025-11-19T22:36:35Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "TandoorRecipes/recipes",
|
"name": "TandoorRecipes/recipes",
|
||||||
"version": "2.3.5",
|
"version": "2.3.5",
|
||||||
@@ -149,6 +29,16 @@
|
|||||||
"version": "v2.7.12",
|
"version": "v2.7.12",
|
||||||
"date": "2025-05-29T17:08:26Z"
|
"date": "2025-05-29T17:08:26Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "BerriAI/litellm",
|
||||||
|
"version": "v1.77.3-stable-patch-2",
|
||||||
|
"date": "2025-11-19T19:00:37Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "coder/code-server",
|
||||||
|
"version": "v4.106.0",
|
||||||
|
"date": "2025-11-19T18:01:23Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "tailscale/tailscale",
|
"name": "tailscale/tailscale",
|
||||||
"version": "v1.90.8",
|
"version": "v1.90.8",
|
||||||
@@ -159,6 +49,11 @@
|
|||||||
"version": "0.51.3",
|
"version": "0.51.3",
|
||||||
"date": "2025-11-19T15:45:28Z"
|
"date": "2025-11-19T15:45:28Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "NodeBB/NodeBB",
|
||||||
|
"version": "v4.6.2",
|
||||||
|
"date": "2025-11-19T15:31:59Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "BookStackApp/BookStack",
|
"name": "BookStackApp/BookStack",
|
||||||
"version": "v25.11.2",
|
"version": "v25.11.2",
|
||||||
@@ -189,6 +84,21 @@
|
|||||||
"version": "v0.13.0",
|
"version": "v0.13.0",
|
||||||
"date": "2025-11-19T14:16:07Z"
|
"date": "2025-11-19T14:16:07Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "nextcloud/nextcloudpi",
|
||||||
|
"version": "v1.56.0",
|
||||||
|
"date": "2025-11-19T14:11:24Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "mattermost/mattermost",
|
||||||
|
"version": "v10.11.7",
|
||||||
|
"date": "2025-11-17T08:40:53Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "n8n-io/n8n",
|
||||||
|
"version": "n8n@1.120.4",
|
||||||
|
"date": "2025-11-19T12:57:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "AdguardTeam/AdGuardHome",
|
"name": "AdguardTeam/AdGuardHome",
|
||||||
"version": "v0.107.69",
|
"version": "v0.107.69",
|
||||||
@@ -204,11 +114,21 @@
|
|||||||
"version": "v7.5.0",
|
"version": "v7.5.0",
|
||||||
"date": "2025-11-19T08:36:29Z"
|
"date": "2025-11-19T08:36:29Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "SigNoz/signoz",
|
||||||
|
"version": "v0.102.0",
|
||||||
|
"date": "2025-11-19T06:53:59Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "morpheus65535/bazarr",
|
"name": "morpheus65535/bazarr",
|
||||||
"version": "v1.5.3",
|
"version": "v1.5.3",
|
||||||
"date": "2025-09-20T12:12:33Z"
|
"date": "2025-09-20T12:12:33Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Jackett/Jackett",
|
||||||
|
"version": "v0.24.327",
|
||||||
|
"date": "2025-11-19T05:55:51Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "element-hq/synapse",
|
"name": "element-hq/synapse",
|
||||||
"version": "v1.143.0rc1",
|
"version": "v1.143.0rc1",
|
||||||
@@ -219,6 +139,16 @@
|
|||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
"date": "2025-06-14T17:45:06Z"
|
"date": "2025-06-14T17:45:06Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "jeedom/core",
|
||||||
|
"version": "4.4.20",
|
||||||
|
"date": "2025-11-19T00:27:10Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "steveiliop56/tinyauth",
|
||||||
|
"version": "v4.0.1",
|
||||||
|
"date": "2025-10-15T16:53:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "gtsteffaniak/filebrowser",
|
"name": "gtsteffaniak/filebrowser",
|
||||||
"version": "v1.0.1-stable",
|
"version": "v1.0.1-stable",
|
||||||
@@ -239,6 +169,11 @@
|
|||||||
"version": "v3.0.1",
|
"version": "v3.0.1",
|
||||||
"date": "2025-11-18T18:50:35Z"
|
"date": "2025-11-18T18:50:35Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.4.5",
|
||||||
|
"date": "2025-11-12T15:24:23Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "seerr-team/seerr",
|
"name": "seerr-team/seerr",
|
||||||
"version": "preview-test-fix-subscriptions",
|
"version": "preview-test-fix-subscriptions",
|
||||||
@@ -259,6 +194,11 @@
|
|||||||
"version": "8.4.0",
|
"version": "8.4.0",
|
||||||
"date": "2025-11-18T15:06:37Z"
|
"date": "2025-11-18T15:06:37Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "fuma-nama/fumadocs",
|
||||||
|
"version": "create-fumadocs-app@16.0.17",
|
||||||
|
"date": "2025-11-18T12:28:43Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "NginxProxyManager/nginx-proxy-manager",
|
"name": "NginxProxyManager/nginx-proxy-manager",
|
||||||
"version": "v2.13.5",
|
"version": "v2.13.5",
|
||||||
@@ -279,6 +219,11 @@
|
|||||||
"version": "coverity-w47-4.14.2",
|
"version": "coverity-w47-4.14.2",
|
||||||
"date": "2025-11-18T07:24:43Z"
|
"date": "2025-11-18T07:24:43Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "documenso/documenso",
|
||||||
|
"version": "v2.0.13",
|
||||||
|
"date": "2025-11-18T05:59:02Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "0xERR0R/blocky",
|
"name": "0xERR0R/blocky",
|
||||||
"version": "v0.28.2",
|
"version": "v0.28.2",
|
||||||
@@ -314,6 +259,11 @@
|
|||||||
"version": "v1.4.5",
|
"version": "v1.4.5",
|
||||||
"date": "2025-11-17T15:20:35Z"
|
"date": "2025-11-17T15:20:35Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "meilisearch/meilisearch",
|
||||||
|
"version": "latest",
|
||||||
|
"date": "2025-11-17T09:29:20Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "rabbitmq/rabbitmq-server",
|
"name": "rabbitmq/rabbitmq-server",
|
||||||
"version": "v4.2.1",
|
"version": "v4.2.1",
|
||||||
@@ -359,6 +309,11 @@
|
|||||||
"version": "3.3.8",
|
"version": "3.3.8",
|
||||||
"date": "2025-11-16T17:04:37Z"
|
"date": "2025-11-16T17:04:37Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "msgbyte/tianji",
|
||||||
|
"version": "v1.30.11",
|
||||||
|
"date": "2025-11-16T16:21:04Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "AlexxIT/go2rtc",
|
"name": "AlexxIT/go2rtc",
|
||||||
"version": "v1.9.12",
|
"version": "v1.9.12",
|
||||||
@@ -424,6 +379,11 @@
|
|||||||
"version": "v1.43.3",
|
"version": "v1.43.3",
|
||||||
"date": "2025-11-14T19:16:17Z"
|
"date": "2025-11-14T19:16:17Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "kimai/kimai",
|
||||||
|
"version": "2.43.0",
|
||||||
|
"date": "2025-11-14T17:20:16Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "mealie-recipes/mealie",
|
"name": "mealie-recipes/mealie",
|
||||||
"version": "v3.5.0",
|
"version": "v3.5.0",
|
||||||
@@ -464,6 +424,11 @@
|
|||||||
"version": "v0.86.1",
|
"version": "v0.86.1",
|
||||||
"date": "2025-11-14T05:05:44Z"
|
"date": "2025-11-14T05:05:44Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "rcourtman/Pulse",
|
||||||
|
"version": "v4.31.0",
|
||||||
|
"date": "2025-11-14T00:18:50Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "gristlabs/grist-core",
|
"name": "gristlabs/grist-core",
|
||||||
"version": "v1.7.7",
|
"version": "v1.7.7",
|
||||||
@@ -589,6 +554,11 @@
|
|||||||
"version": "v1.0.0-beta19",
|
"version": "v1.0.0-beta19",
|
||||||
"date": "2025-11-09T17:26:30Z"
|
"date": "2025-11-09T17:26:30Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "duplicati/duplicati",
|
||||||
|
"version": "v2.2.0.1_stable_2025-11-09",
|
||||||
|
"date": "2025-11-09T17:21:54Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "Cleanuparr/Cleanuparr",
|
"name": "Cleanuparr/Cleanuparr",
|
||||||
"version": "v2.4.5",
|
"version": "v2.4.5",
|
||||||
@@ -959,6 +929,21 @@
|
|||||||
"version": "v4.5.0",
|
"version": "v4.5.0",
|
||||||
"date": "2025-10-18T22:00:50Z"
|
"date": "2025-10-18T22:00:50Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "project-zot/zot",
|
||||||
|
"version": "v2.1.10",
|
||||||
|
"date": "2025-10-18T18:46:36Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "TasmoAdmin/TasmoAdmin",
|
||||||
|
"version": "v4.3.2",
|
||||||
|
"date": "2025-10-18T12:11:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "readeck/readeck",
|
||||||
|
"version": "0.20.4",
|
||||||
|
"date": "2025-10-18T10:00:42Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "diced/zipline",
|
"name": "diced/zipline",
|
||||||
"version": "v4.3.2",
|
"version": "v4.3.2",
|
||||||
@@ -1094,6 +1079,16 @@
|
|||||||
"version": "2025.09.24",
|
"version": "2025.09.24",
|
||||||
"date": "2025-09-24T13:51:23Z"
|
"date": "2025-09-24T13:51:23Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "itsmng/itsm-ng",
|
||||||
|
"version": "v2.1.0",
|
||||||
|
"date": "2025-09-22T09:23:37Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Athou/commafeed",
|
||||||
|
"version": "5.11.1",
|
||||||
|
"date": "2025-09-22T02:21:27Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "gotify/server",
|
"name": "gotify/server",
|
||||||
"version": "v2.7.3",
|
"version": "v2.7.3",
|
||||||
@@ -1109,6 +1104,11 @@
|
|||||||
"version": "v0.17.0",
|
"version": "v0.17.0",
|
||||||
"date": "2025-09-19T22:23:28Z"
|
"date": "2025-09-19T22:23:28Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "saltstack/salt",
|
||||||
|
"version": "v3007.8",
|
||||||
|
"date": "2025-09-18T18:19:04Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "docmost/docmost",
|
"name": "docmost/docmost",
|
||||||
"version": "v0.23.2",
|
"version": "v0.23.2",
|
||||||
|
|||||||
@@ -71,11 +71,7 @@ export TURBO_CACHE=1
|
|||||||
export NEXT_TELEMETRY_DISABLED=1
|
export NEXT_TELEMETRY_DISABLED=1
|
||||||
export CYPRESS_INSTALL_BINARY=0
|
export CYPRESS_INSTALL_BINARY=0
|
||||||
export NODE_OPTIONS="--max-old-space-size=4096"
|
export NODE_OPTIONS="--max-old-space-size=4096"
|
||||||
$STD turbo prune --scope=@documenso/remix --docker
|
|
||||||
cd out
|
|
||||||
cp -r json/* .
|
|
||||||
$STD npm ci
|
$STD npm ci
|
||||||
cp -r full/* .
|
|
||||||
$STD turbo run build --filter=@documenso/remix
|
$STD turbo run build --filter=@documenso/remix
|
||||||
$STD npm run prisma:migrate-deploy
|
$STD npm run prisma:migrate-deploy
|
||||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
||||||
|
|||||||
@@ -84,13 +84,6 @@ if [[ "$CTTYPE" == "0" && -d /dev/dri ]]; then
|
|||||||
fi
|
fi
|
||||||
msg_ok "Dependencies Installed"
|
msg_ok "Dependencies Installed"
|
||||||
|
|
||||||
msg_info "Installing Mise"
|
|
||||||
curl -fSs https://mise.jdx.dev/gpg-key.pub | tee /etc/apt/keyrings/mise-archive-keyring.pub 1>/dev/null
|
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.pub arch=amd64] https://mise.jdx.dev/deb stable main" | tee /etc/apt/sources.list.d/mise.list
|
|
||||||
$STD apt update
|
|
||||||
$STD apt install -y mise
|
|
||||||
msg_ok "Installed Mise"
|
|
||||||
|
|
||||||
read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machine-learning? y/N " prompt
|
read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machine-learning? y/N " prompt
|
||||||
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
||||||
msg_info "Installing OpenVINO dependencies"
|
msg_info "Installing OpenVINO dependencies"
|
||||||
@@ -284,7 +277,6 @@ INSTALL_DIR="/opt/${APPLICATION}"
|
|||||||
UPLOAD_DIR="${INSTALL_DIR}/upload"
|
UPLOAD_DIR="${INSTALL_DIR}/upload"
|
||||||
SRC_DIR="${INSTALL_DIR}/source"
|
SRC_DIR="${INSTALL_DIR}/source"
|
||||||
APP_DIR="${INSTALL_DIR}/app"
|
APP_DIR="${INSTALL_DIR}/app"
|
||||||
PLUGIN_DIR="${APP_DIR}/corePlugin"
|
|
||||||
ML_DIR="${APP_DIR}/machine-learning"
|
ML_DIR="${APP_DIR}/machine-learning"
|
||||||
GEO_DIR="${INSTALL_DIR}/geodata"
|
GEO_DIR="${INSTALL_DIR}/geodata"
|
||||||
mkdir -p "$INSTALL_DIR"
|
mkdir -p "$INSTALL_DIR"
|
||||||
@@ -322,18 +314,7 @@ cp LICENSE "$APP_DIR"
|
|||||||
$STD pnpm --filter @immich/sdk --filter @immich/cli --frozen-lockfile install
|
$STD pnpm --filter @immich/sdk --filter @immich/cli --frozen-lockfile install
|
||||||
$STD pnpm --filter @immich/sdk --filter @immich/cli build
|
$STD pnpm --filter @immich/sdk --filter @immich/cli build
|
||||||
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
|
$STD pnpm --filter @immich/cli --prod --no-optional deploy "$APP_DIR"/cli
|
||||||
|
msg_ok "Installed Immich Server and Web Components"
|
||||||
# plugins
|
|
||||||
cd "$SRC_DIR"
|
|
||||||
$STD mise trust --ignore ./mise.toml
|
|
||||||
$STD mise trust ./plugins/mise.toml
|
|
||||||
cd plugins
|
|
||||||
$STD mise install
|
|
||||||
$STD mise run build
|
|
||||||
mkdir -p "$PLUGIN_DIR"
|
|
||||||
cp -r ./dist "$PLUGIN_DIR"/dist
|
|
||||||
cp ./manifest.json "$PLUGIN_DIR"
|
|
||||||
msg_ok "Installed Immich Server, Web and Plugin Components"
|
|
||||||
|
|
||||||
cd "$SRC_DIR"/machine-learning
|
cd "$SRC_DIR"/machine-learning
|
||||||
$STD useradd -U -s /usr/sbin/nologin -r -M -d "$INSTALL_DIR" immich
|
$STD useradd -U -s /usr/sbin/nologin -r -M -d "$INSTALL_DIR" immich
|
||||||
@@ -397,10 +378,6 @@ DB_VECTOR_EXTENSION=vectorchord
|
|||||||
REDIS_HOSTNAME=127.0.0.1
|
REDIS_HOSTNAME=127.0.0.1
|
||||||
IMMICH_MACHINE_LEARNING_URL=http://127.0.0.1:3003
|
IMMICH_MACHINE_LEARNING_URL=http://127.0.0.1:3003
|
||||||
MACHINE_LEARNING_CACHE_FOLDER=${INSTALL_DIR}/cache
|
MACHINE_LEARNING_CACHE_FOLDER=${INSTALL_DIR}/cache
|
||||||
## - For OpenVINO only - uncomment below to increase
|
|
||||||
## - inference speed while reducing accuracy
|
|
||||||
## - Default is FP32
|
|
||||||
# MACHINE_LEARNING_OPENVINO_PRECISION=FP16
|
|
||||||
|
|
||||||
IMMICH_MEDIA_LOCATION=${UPLOAD_DIR}
|
IMMICH_MEDIA_LOCATION=${UPLOAD_DIR}
|
||||||
EOF
|
EOF
|
||||||
|
|||||||
@@ -13,16 +13,19 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Docker"
|
|
||||||
$STD sh <(curl -fsSL https://get.docker.com/)
|
|
||||||
msg_ok "Installed Docker"
|
|
||||||
|
|
||||||
msg_info "Detecting latest Kasm Workspaces release"
|
msg_info "Detecting latest Kasm Workspaces release"
|
||||||
KASM_URL=$(curl -fsSL "https://www.kasm.com/downloads" | tr '\n' ' ' | grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' | head -n 1)
|
KASM_URL=$(
|
||||||
|
curl -fsSL "https://www.kasm.com/downloads" \
|
||||||
|
| tr '\n' ' ' \
|
||||||
|
| grep -oE 'https://kasm-static-content[^"]*kasm_release_[0-9]+\.[0-9]+\.[0-9]+\.[a-z0-9]+\.tar\.gz' \
|
||||||
|
| head -n 1
|
||||||
|
)
|
||||||
|
|
||||||
if [[ -z "$KASM_URL" ]]; then
|
if [[ -z "$KASM_URL" ]]; then
|
||||||
msg_error "Unable to detect latest Kasm release URL."
|
msg_error "Unable to detect latest Kasm release URL."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
|
KASM_VERSION=$(echo "$KASM_URL" | sed -E 's/.*kasm_release_([0-9]+\.[0-9]+\.[0-9]+).*/\1/')
|
||||||
msg_ok "Detected Kasm Workspaces version $KASM_VERSION"
|
msg_ok "Detected Kasm Workspaces version $KASM_VERSION"
|
||||||
|
|
||||||
|
|||||||
@@ -393,7 +393,7 @@ cleanup_lxc() {
|
|||||||
# Python pip
|
# Python pip
|
||||||
if command -v pip &>/dev/null; then $STD pip cache purge || true; fi
|
if command -v pip &>/dev/null; then $STD pip cache purge || true; fi
|
||||||
# Python uv
|
# Python uv
|
||||||
if command -v uv &>/dev/null; then $STD uv cache clean || true; fi
|
if command -v uv &>/dev/null; then $STD uv cache clear || true; fi
|
||||||
# Node.js npm
|
# Node.js npm
|
||||||
if command -v npm &>/dev/null; then $STD npm cache clean --force || true; fi
|
if command -v npm &>/dev/null; then $STD npm cache clean --force || true; fi
|
||||||
# Node.js yarn
|
# Node.js yarn
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ function msg_ok() {
|
|||||||
function msg_error() { echo -e "${RD}✗ $1${CL}"; }
|
function msg_error() { echo -e "${RD}✗ $1${CL}"; }
|
||||||
|
|
||||||
# This function checks the version of Proxmox Virtual Environment (PVE) and exits if the version is not supported.
|
# This function checks the version of Proxmox Virtual Environment (PVE) and exits if the version is not supported.
|
||||||
# Supported: Proxmox VE 8.0.x – 8.9.x and 9.0–9.1.x
|
# Supported: Proxmox VE 8.0.x – 8.9.x and 9.0 (NOT 9.1+)
|
||||||
pve_check() {
|
pve_check() {
|
||||||
local PVE_VER
|
local PVE_VER
|
||||||
PVE_VER="$(pveversion | awk -F'/' '{print $2}' | awk -F'-' '{print $1}')"
|
PVE_VER="$(pveversion | awk -F'/' '{print $2}' | awk -F'-' '{print $1}')"
|
||||||
@@ -58,12 +58,12 @@ pve_check() {
|
|||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for Proxmox VE 9.x: allow 9.0–9.1.x
|
# Check for Proxmox VE 9.x: allow ONLY 9.0
|
||||||
if [[ "$PVE_VER" =~ ^9\.([0-9]+) ]]; then
|
if [[ "$PVE_VER" =~ ^9\.([0-9]+) ]]; then
|
||||||
local MINOR="${BASH_REMATCH[1]}"
|
local MINOR="${BASH_REMATCH[1]}"
|
||||||
if ((MINOR < 0 || MINOR > 1)); then
|
if ((MINOR != 0)); then
|
||||||
msg_error "This version of Proxmox VE is not yet supported."
|
msg_error "This version of Proxmox VE is not yet supported."
|
||||||
msg_error "Supported: Proxmox VE version 9.0–9.1.x"
|
msg_error "Supported: Proxmox VE version 9.0"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
@@ -71,7 +71,7 @@ pve_check() {
|
|||||||
|
|
||||||
# All other unsupported versions
|
# All other unsupported versions
|
||||||
msg_error "This version of Proxmox VE is not supported."
|
msg_error "This version of Proxmox VE is not supported."
|
||||||
msg_error "Supported versions: Proxmox VE 8.0 – 8.9 or 9.0–9.1.x"
|
msg_error "Supported versions: Proxmox VE 8.0 – 8.x or 9.0"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -88,14 +88,14 @@ main() {
|
|||||||
fi
|
fi
|
||||||
start_routines_8
|
start_routines_8
|
||||||
elif [[ "$PVE_MAJOR" == "9" ]]; then
|
elif [[ "$PVE_MAJOR" == "9" ]]; then
|
||||||
if ((PVE_MINOR < 0 || PVE_MINOR > 1)); then
|
if ((PVE_MINOR != 0)); then
|
||||||
msg_error "Only Proxmox 9.0-9.1.x is currently supported"
|
msg_error "Only Proxmox 9.0 is currently supported"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
start_routines_9
|
start_routines_9
|
||||||
else
|
else
|
||||||
msg_error "Unsupported Proxmox VE major version: $PVE_MAJOR"
|
msg_error "Unsupported Proxmox VE major version: $PVE_MAJOR"
|
||||||
echo -e "Supported: 8.0–8.9.x and 9.0–9.1.x"
|
echo -e "Supported: 8.0–8.9.x and 9.0"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user