mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-12-20 05:56:24 +01:00
Compare commits
1 Commits
copilot/up
...
pr-update-
| Author | SHA1 | Date | |
|---|---|---|---|
| 37f92b2065 |
17
CHANGELOG.md
17
CHANGELOG.md
@ -16,31 +16,14 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
|||||||
|
|
||||||
- #### 🐞 Bug Fixes
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
- Bump Bar-Assistant to php 8.4 [@MickLesk](https://github.com/MickLesk) ([#10138](https://github.com/community-scripts/ProxmoxVE/pull/10138))
|
|
||||||
- Zabbix: Add version-specific SQL script path for 7.0 LTS [@MickLesk](https://github.com/MickLesk) ([#10142](https://github.com/community-scripts/ProxmoxVE/pull/10142))
|
- Zabbix: Add version-specific SQL script path for 7.0 LTS [@MickLesk](https://github.com/MickLesk) ([#10142](https://github.com/community-scripts/ProxmoxVE/pull/10142))
|
||||||
- InfluxDB: Fix update function [@Liganic](https://github.com/Liganic) ([#10151](https://github.com/community-scripts/ProxmoxVE/pull/10151))
|
- InfluxDB: Fix update function [@Liganic](https://github.com/Liganic) ([#10151](https://github.com/community-scripts/ProxmoxVE/pull/10151))
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- Bump Immich to v2.4.1 [@vhsdream](https://github.com/vhsdream) ([#10154](https://github.com/community-scripts/ProxmoxVE/pull/10154))
|
|
||||||
|
|
||||||
- #### 🔧 Refactor
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
- Refactor: Cosmos: + Upgrade to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#10147](https://github.com/community-scripts/ProxmoxVE/pull/10147))
|
- Refactor: Cosmos: + Upgrade to Debian 13 [@MickLesk](https://github.com/MickLesk) ([#10147](https://github.com/community-scripts/ProxmoxVE/pull/10147))
|
||||||
- Refactor: Proxmox-Mail-Gateway [@tremor021](https://github.com/tremor021) ([#10070](https://github.com/community-scripts/ProxmoxVE/pull/10070))
|
- Refactor: Proxmox-Mail-Gateway [@tremor021](https://github.com/tremor021) ([#10070](https://github.com/community-scripts/ProxmoxVE/pull/10070))
|
||||||
|
|
||||||
### 💾 Core
|
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- core: Auto-cleanup after all update_script executions [@MickLesk](https://github.com/MickLesk) ([#10141](https://github.com/community-scripts/ProxmoxVE/pull/10141))
|
|
||||||
|
|
||||||
### 🧰 Tools
|
|
||||||
|
|
||||||
- #### 🔧 Refactor
|
|
||||||
|
|
||||||
- fix: removed verbose option to avoid unnecessary output [@wolle604](https://github.com/wolle604) ([#10144](https://github.com/community-scripts/ProxmoxVE/pull/10144))
|
|
||||||
|
|
||||||
### ❔ Uncategorized
|
### ❔ Uncategorized
|
||||||
|
|
||||||
- Update paymenter.json(#10133) [@DragoQC](https://github.com/DragoQC) ([#10134](https://github.com/community-scripts/ProxmoxVE/pull/10134))
|
- Update paymenter.json(#10133) [@DragoQC](https://github.com/DragoQC) ([#10134](https://github.com/community-scripts/ProxmoxVE/pull/10134))
|
||||||
|
|||||||
@ -34,8 +34,6 @@ function update_script() {
|
|||||||
systemctl stop nginx
|
systemctl stop nginx
|
||||||
msg_ok "Stopped nginx"
|
msg_ok "Stopped nginx"
|
||||||
|
|
||||||
PHP_VERSION="8.4" PHP_FPM=YES PHP_MODULE="ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm" setup_php
|
|
||||||
|
|
||||||
msg_info "Backing up Bar Assistant"
|
msg_info "Backing up Bar Assistant"
|
||||||
mv /opt/bar-assistant /opt/bar-assistant-backup
|
mv /opt/bar-assistant /opt/bar-assistant-backup
|
||||||
msg_ok "Backed up Bar Assistant"
|
msg_ok "Backed up Bar Assistant"
|
||||||
|
|||||||
17
ct/homarr.sh
17
ct/homarr.sh
@ -35,11 +35,22 @@ function update_script() {
|
|||||||
msg_ok "Services Stopped"
|
msg_ok "Services Stopped"
|
||||||
|
|
||||||
if ! { grep -q '^REDIS_IS_EXTERNAL=' /opt/homarr/.env 2>/dev/null || grep -q '^REDIS_IS_EXTERNAL=' /opt/homarr.env 2>/dev/null; }; then
|
if ! { grep -q '^REDIS_IS_EXTERNAL=' /opt/homarr/.env 2>/dev/null || grep -q '^REDIS_IS_EXTERNAL=' /opt/homarr.env 2>/dev/null; }; then
|
||||||
|
DEBIAN_VERSION=$(cat /etc/debian_version 2>/dev/null | cut -d'.' -f1)
|
||||||
|
if [[ -n "$DEBIAN_VERSION" ]] && [[ "$DEBIAN_VERSION" -lt 13 ]]; then
|
||||||
|
msg_warn "⚠️ COMPATIBILITY WARNING ⚠️"
|
||||||
|
msg_warn "You are running Debian ${DEBIAN_VERSION}. Homarr's requires Debian 13"
|
||||||
|
msg_warn ""
|
||||||
|
msg_warn "Please Upgrade to Debian 13:"
|
||||||
|
msg_warn "See: https://github.com/community-scripts/ProxmoxVE/discussions/7489"
|
||||||
|
msg_warn ""
|
||||||
|
exit
|
||||||
|
fi
|
||||||
msg_info "Fixing old structure"
|
msg_info "Fixing old structure"
|
||||||
systemctl disable -q --now nginx
|
# fix musl issues because homarr compiles on alpine not debian soure: https://github.com/alexander-akhmetov/python-telegram/issues/3
|
||||||
|
$STD apt install -y musl-dev
|
||||||
|
ln -s /usr/lib/x86_64-linux-musl/libc.so /lib/libc.musl-x86_64.so.1
|
||||||
cp /opt/homarr/.env /opt/homarr.env
|
cp /opt/homarr/.env /opt/homarr.env
|
||||||
echo "REDIS_IS_EXTERNAL='true'" >> /opt/homarr.env
|
echo "REDIS_IS_EXTERNAL='true'" >> /opt/homarr.env
|
||||||
sed -i '/^\[Unit\]/a Requires=redis-server.service\nAfter=redis-server.service' /etc/systemd/system/homarr.service
|
|
||||||
sed -i 's|^ExecStart=.*|ExecStart=/opt/homarr/run.sh|' /etc/systemd/system/homarr.service
|
sed -i 's|^ExecStart=.*|ExecStart=/opt/homarr/run.sh|' /etc/systemd/system/homarr.service
|
||||||
sed -i 's|^EnvironmentFile=.*|EnvironmentFile=-/opt/homarr.env|' /etc/systemd/system/homarr.service
|
sed -i 's|^EnvironmentFile=.*|EnvironmentFile=-/opt/homarr.env|' /etc/systemd/system/homarr.service
|
||||||
chown -R redis:redis /appdata/redis
|
chown -R redis:redis /appdata/redis
|
||||||
@ -61,7 +72,7 @@ EOF
|
|||||||
|
|
||||||
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
|
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
|
||||||
setup_nodejs
|
setup_nodejs
|
||||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-debian-amd64.tar.gz"
|
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-amd64.tar.gz"
|
||||||
|
|
||||||
msg_info "Updating Homarr"
|
msg_info "Updating Homarr"
|
||||||
cp /opt/homarr/redis.conf /etc/redis/redis.conf
|
cp /opt/homarr/redis.conf /etc/redis/redis.conf
|
||||||
|
|||||||
@ -32,8 +32,6 @@ function update_script() {
|
|||||||
systemctl stop reitti
|
systemctl stop reitti
|
||||||
msg_ok "Stopped Service"
|
msg_ok "Stopped Service"
|
||||||
|
|
||||||
JAVA_VERSION="25" setup_java
|
|
||||||
|
|
||||||
rm -f /opt/reitti/reitti.jar
|
rm -f /opt/reitti/reitti.jar
|
||||||
USE_ORIGINAL_FILENAME="true" fetch_and_deploy_gh_release "reitti" "dedicatedcode/reitti" "singlefile" "latest" "/opt/reitti" "reitti-app.jar"
|
USE_ORIGINAL_FILENAME="true" fetch_and_deploy_gh_release "reitti" "dedicatedcode/reitti" "singlefile" "latest" "/opt/reitti" "reitti-app.jar"
|
||||||
mv /opt/reitti/reitti-*.jar /opt/reitti/reitti.jar
|
mv /opt/reitti/reitti-*.jar /opt/reitti/reitti.jar
|
||||||
|
|||||||
@ -17,14 +17,14 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
redis-server \
|
redis-server \
|
||||||
nginx \
|
nginx \
|
||||||
lsb-release \
|
lsb-release \
|
||||||
libvips
|
libvips
|
||||||
#php-{ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm}
|
#php-{ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm}
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
PHP_VERSION="8.4" PHP_FPM=YES PHP_MODULE="ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm" setup_php
|
PHP_VERSION="8.3" PHP_FPM=YES PHP_MODULE="ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm" setup_php
|
||||||
setup_composer
|
setup_composer
|
||||||
NODE_VERSION="22" setup_nodejs
|
NODE_VERSION="22" setup_nodejs
|
||||||
fetch_and_deploy_gh_release "meilisearch" "meilisearch/meilisearch" "binary"
|
fetch_and_deploy_gh_release "meilisearch" "meilisearch/meilisearch" "binary"
|
||||||
@ -41,14 +41,14 @@ msg_info "Configure MeiliSearch"
|
|||||||
curl -fsSL https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml -o /etc/meilisearch.toml
|
curl -fsSL https://raw.githubusercontent.com/meilisearch/meilisearch/latest/config.toml -o /etc/meilisearch.toml
|
||||||
MASTER_KEY=$(openssl rand -base64 12)
|
MASTER_KEY=$(openssl rand -base64 12)
|
||||||
sed -i \
|
sed -i \
|
||||||
-e 's|^env =.*|env = "production"|' \
|
-e 's|^env =.*|env = "production"|' \
|
||||||
-e "s|^# master_key =.*|master_key = \"$MASTER_KEY\"|" \
|
-e "s|^# master_key =.*|master_key = \"$MASTER_KEY\"|" \
|
||||||
-e 's|^db_path =.*|db_path = "/var/lib/meilisearch/data"|' \
|
-e 's|^db_path =.*|db_path = "/var/lib/meilisearch/data"|' \
|
||||||
-e 's|^dump_dir =.*|dump_dir = "/var/lib/meilisearch/dumps"|' \
|
-e 's|^dump_dir =.*|dump_dir = "/var/lib/meilisearch/dumps"|' \
|
||||||
-e 's|^snapshot_dir =.*|snapshot_dir = "/var/lib/meilisearch/snapshots"|' \
|
-e 's|^snapshot_dir =.*|snapshot_dir = "/var/lib/meilisearch/snapshots"|' \
|
||||||
-e 's|^# no_analytics = true|no_analytics = true|' \
|
-e 's|^# no_analytics = true|no_analytics = true|' \
|
||||||
-e 's|^http_addr =.*|http_addr = "127.0.0.1:7700"|' \
|
-e 's|^http_addr =.*|http_addr = "127.0.0.1:7700"|' \
|
||||||
/etc/meilisearch.toml
|
/etc/meilisearch.toml
|
||||||
msg_ok "Configured MeiliSearch"
|
msg_ok "Configured MeiliSearch"
|
||||||
|
|
||||||
msg_info "Creating MeiliSearch service"
|
msg_info "Creating MeiliSearch service"
|
||||||
@ -77,11 +77,11 @@ MeiliSearch_API_KEY=$(curl -s -X GET 'http://127.0.0.1:7700/keys' -H "Authorizat
|
|||||||
MeiliSearch_API_KEY_UID=$(curl -s -X GET 'http://127.0.0.1:7700/keys' -H "Authorization: Bearer $MASTER_KEY" | grep -o '"uid":"[^"]*"' | head -n 1 | sed 's/"uid":"//;s/"//')
|
MeiliSearch_API_KEY_UID=$(curl -s -X GET 'http://127.0.0.1:7700/keys' -H "Authorization: Bearer $MASTER_KEY" | grep -o '"uid":"[^"]*"' | head -n 1 | sed 's/"uid":"//;s/"//')
|
||||||
LOCAL_IP=$(hostname -I | awk '{print $1}')
|
LOCAL_IP=$(hostname -I | awk '{print $1}')
|
||||||
sed -i -e "s|^APP_URL=|APP_URL=http://${LOCAL_IP}/bar/|" \
|
sed -i -e "s|^APP_URL=|APP_URL=http://${LOCAL_IP}/bar/|" \
|
||||||
-e "s|^MEILISEARCH_HOST=|MEILISEARCH_HOST=http://127.0.0.1:7700|" \
|
-e "s|^MEILISEARCH_HOST=|MEILISEARCH_HOST=http://127.0.0.1:7700|" \
|
||||||
-e "s|^MEILISEARCH_KEY=|MEILISEARCH_KEY=${MASTER_KEY}|" \
|
-e "s|^MEILISEARCH_KEY=|MEILISEARCH_KEY=${MASTER_KEY}|" \
|
||||||
-e "s|^MEILISEARCH_API_KEY=|MEILISEARCH_API_KEY=${MeiliSearch_API_KEY}|" \
|
-e "s|^MEILISEARCH_API_KEY=|MEILISEARCH_API_KEY=${MeiliSearch_API_KEY}|" \
|
||||||
-e "s|^MEILISEARCH_API_KEY_UID=|MEILISEARCH_API_KEY_UID=${MeiliSearch_API_KEY_UID}|" \
|
-e "s|^MEILISEARCH_API_KEY_UID=|MEILISEARCH_API_KEY_UID=${MeiliSearch_API_KEY_UID}|" \
|
||||||
/opt/bar-assistant/.env
|
/opt/bar-assistant/.env
|
||||||
$STD composer install --no-interaction
|
$STD composer install --no-interaction
|
||||||
$STD php artisan key:generate
|
$STD php artisan key:generate
|
||||||
touch storage/bar-assistant/database.ba3.sqlite
|
touch storage/bar-assistant/database.ba3.sqlite
|
||||||
|
|||||||
@ -18,14 +18,17 @@ $STD apt install -y \
|
|||||||
redis-server \
|
redis-server \
|
||||||
nginx \
|
nginx \
|
||||||
gettext \
|
gettext \
|
||||||
openssl
|
openssl \
|
||||||
|
musl-dev
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
|
NODE_VERSION=$(curl -s https://raw.githubusercontent.com/homarr-labs/homarr/dev/package.json | jq -r '.engines.node | split(">=")[1] | split(".")[0]')
|
||||||
setup_nodejs
|
setup_nodejs
|
||||||
fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-debian-amd64.tar.gz"
|
fetch_and_deploy_gh_release "homarr" "homarr-labs/homarr" "prebuild" "latest" "/opt/homarr" "build-amd64.tar.gz"
|
||||||
|
|
||||||
msg_info "Installing Homarr"
|
msg_info "Installing Homarr"
|
||||||
|
# fix musl issues because homarr compiles on alpine not debian soure: https://github.com/alexander-akhmetov/python-telegram/issues/3
|
||||||
|
ln -s /usr/lib/x86_64-linux-musl/libc.so /lib/libc.musl-x86_64.so.1
|
||||||
mkdir -p /opt/homarr_db
|
mkdir -p /opt/homarr_db
|
||||||
touch /opt/homarr_db/db.sqlite
|
touch /opt/homarr_db/db.sqlite
|
||||||
SECRET_ENCRYPTION_KEY="$(openssl rand -hex 32)"
|
SECRET_ENCRYPTION_KEY="$(openssl rand -hex 32)"
|
||||||
@ -62,8 +65,6 @@ ReadWritePaths=-/appdata/redis -/var/lib/redis -/var/log/redis -/var/run/redis -
|
|||||||
EOF
|
EOF
|
||||||
cat <<EOF >/etc/systemd/system/homarr.service
|
cat <<EOF >/etc/systemd/system/homarr.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Requires=redis-server.service
|
|
||||||
After=redis-server.service
|
|
||||||
Description=Homarr Service
|
Description=Homarr Service
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
@ -78,9 +79,8 @@ WantedBy=multi-user.target
|
|||||||
EOF
|
EOF
|
||||||
chmod +x /opt/homarr/run.sh
|
chmod +x /opt/homarr/run.sh
|
||||||
systemctl daemon-reload
|
systemctl daemon-reload
|
||||||
systemctl enable -q --now redis-server
|
systemctl enable -q --now redis-server && sleep 5
|
||||||
systemctl enable -q --now homarr
|
systemctl enable -q --now homarr
|
||||||
systemctl disable -q --now nginx
|
|
||||||
msg_ok "Created Services"
|
msg_ok "Created Services"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
|
|||||||
@ -21,7 +21,7 @@ $STD apt install -y \
|
|||||||
zstd
|
zstd
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
JAVA_VERSION="25" setup_java
|
JAVA_VERSION="24" setup_java
|
||||||
PG_VERSION="17" PG_MODULES="postgis" setup_postgresql
|
PG_VERSION="17" PG_MODULES="postgis" setup_postgresql
|
||||||
PG_DB_NAME="reitti_db" PG_DB_USER="reitti" setup_postgresql_db
|
PG_DB_NAME="reitti_db" PG_DB_USER="reitti" setup_postgresql_db
|
||||||
|
|
||||||
|
|||||||
@ -2626,8 +2626,8 @@ configure_ssh_settings() {
|
|||||||
#
|
#
|
||||||
# - Entry point of script
|
# - Entry point of script
|
||||||
# - On Proxmox host: calls install_script
|
# - On Proxmox host: calls install_script
|
||||||
# - In silent mode: runs update_script with automatic cleanup
|
# - In silent mode: runs update_script
|
||||||
# - Otherwise: shows update/setting menu and runs update_script with cleanup
|
# - Otherwise: shows update/setting menu
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
start() {
|
start() {
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/tools.func)
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/tools.func)
|
||||||
@ -2638,7 +2638,6 @@ start() {
|
|||||||
VERBOSE="no"
|
VERBOSE="no"
|
||||||
set_std_mode
|
set_std_mode
|
||||||
update_script
|
update_script
|
||||||
cleanup_lxc
|
|
||||||
else
|
else
|
||||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "${APP} LXC Update/Setting" --menu \
|
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "${APP} LXC Update/Setting" --menu \
|
||||||
"Support/Update functions for ${APP} LXC. Choose an option:" \
|
"Support/Update functions for ${APP} LXC. Choose an option:" \
|
||||||
@ -2663,7 +2662,6 @@ start() {
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
update_script
|
update_script
|
||||||
cleanup_lxc
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -50,7 +50,7 @@ function execute_in() {
|
|||||||
container=$1
|
container=$1
|
||||||
name=$(pct exec "$container" hostname)
|
name=$(pct exec "$container" hostname)
|
||||||
echo -e "${BL}[Info]${GN} Execute inside${BL} ${name}${GN} with output: ${CL}"
|
echo -e "${BL}[Info]${GN} Execute inside${BL} ${name}${GN} with output: ${CL}"
|
||||||
if ! pct exec "$container" -- bash -c "command ${custom_command} >/dev/null 2>&1"
|
if ! pct exec "$container" -- bash -c "command -v ${custom_command} >/dev/null 2>&1"
|
||||||
then
|
then
|
||||||
echo -e "${BL}[Info]${GN} Skipping ${name} ${RD}$container has no command: ${custom_command}"
|
echo -e "${BL}[Info]${GN} Skipping ${name} ${RD}$container has no command: ${custom_command}"
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user