mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-06 11:22:49 +00:00
Compare commits
8 Commits
2025-10-22
...
deb13_c_to
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dca1c3b02c | ||
|
|
99617f265a | ||
|
|
1fe00c2493 | ||
|
|
05fd03d160 | ||
|
|
e837ebb0e5 | ||
|
|
8e1a9ffb07 | ||
|
|
af991286dc | ||
|
|
c1205691e7 |
11
CHANGELOG.md
11
CHANGELOG.md
@@ -12,6 +12,17 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
|||||||
|
|
||||||
## 2025-10-23
|
## 2025-10-23
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- MeTube: Fix inserting path into .bashrc [@tremor021](https://github.com/tremor021) ([#8589](https://github.com/community-scripts/ProxmoxVE/pull/8589))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- Refactor: Kavita + Updated tools.func (no-same-owner) [@MickLesk](https://github.com/MickLesk) ([#8594](https://github.com/community-scripts/ProxmoxVE/pull/8594))
|
||||||
|
- tools.func: update update_check messages for clarity [@MickLesk](https://github.com/MickLesk) ([#8588](https://github.com/community-scripts/ProxmoxVE/pull/8588))
|
||||||
|
|
||||||
## 2025-10-22
|
## 2025-10-22
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
### 🚀 Updated Scripts
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
|||||||
var_ram="${var_ram:-1024}"
|
var_ram="${var_ram:-1024}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
|
|||||||
21
ct/kavita.sh
21
ct/kavita.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
|||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-2048}"
|
||||||
var_disk="${var_disk:-8}"
|
var_disk="${var_disk:-8}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-13}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
@@ -27,15 +27,20 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
msg_info "Updating $APP LXC"
|
|
||||||
|
if check_for_gh_release "kavita" "Kareadita/Kavita"; then
|
||||||
|
msg_info "Stopping Service"
|
||||||
systemctl stop kavita
|
systemctl stop kavita
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
msg_ok "Service Stopped"
|
||||||
$STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner
|
|
||||||
rm -rf Kavita/config
|
fetch_and_deploy_gh_release "kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-x64.tar.gz"
|
||||||
cp -r Kavita/* /opt/Kavita
|
chmod +x /opt/Kavita/Kavita && chown root:root /opt/Kavita/Kavita
|
||||||
rm -rf Kavita
|
|
||||||
|
msg_info "Starting Service"
|
||||||
systemctl start kavita
|
systemctl start kavita
|
||||||
msg_ok "Updated $APP LXC"
|
msg_ok "Service Started"
|
||||||
|
msg_ok "Update Successfully!"
|
||||||
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $(echo ":$PATH:" != *":/usr/local/bin:"*) ]]; then
|
if [[ $(echo ":$PATH:" != *":/usr/local/bin:"*) ]]; then
|
||||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc
|
echo -e "\nexport PATH=\"/usr/local/bin:\$PATH\"" >>~/.bashrc
|
||||||
source ~/.bashrc
|
source ~/.bashrc
|
||||||
if ! command -v deno &>/dev/null; then
|
if ! command -v deno &>/dev/null; then
|
||||||
export DENO_INSTALL="/usr/local"
|
export DENO_INSTALL="/usr/local"
|
||||||
@@ -110,6 +110,7 @@ EOF
|
|||||||
|
|
||||||
msg_ok "Updated Successfully!"
|
msg_ok "Updated Successfully!"
|
||||||
fi
|
fi
|
||||||
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
start
|
start
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 8,
|
"hdd": 8,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "13"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,4 +1,34 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"name": "duplicati/duplicati",
|
||||||
|
"version": "v2.2.0.0-2.2.0.0_stable_2025-10-23",
|
||||||
|
"date": "2025-10-23T11:25:25Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.4.2",
|
||||||
|
"date": "2025-10-23T06:59:32Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Jackett/Jackett",
|
||||||
|
"version": "v0.24.175",
|
||||||
|
"date": "2025-10-23T05:50:23Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "YunoHost/yunohost",
|
||||||
|
"version": "debian/12.1.31",
|
||||||
|
"date": "2025-10-23T00:45:04Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jeedom/core",
|
||||||
|
"version": "4.4.20",
|
||||||
|
"date": "2025-10-23T00:27:05Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "steveiliop56/tinyauth",
|
||||||
|
"version": "v4.0.1",
|
||||||
|
"date": "2025-10-15T16:53:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "BerriAI/litellm",
|
"name": "BerriAI/litellm",
|
||||||
"version": "v1.78.7-nightly",
|
"version": "v1.78.7-nightly",
|
||||||
@@ -9,11 +39,6 @@
|
|||||||
"version": "v0.9.99",
|
"version": "v0.9.99",
|
||||||
"date": "2025-10-22T22:20:33Z"
|
"date": "2025-10-22T22:20:33Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "YunoHost/yunohost",
|
|
||||||
"version": "debian/12.1.30",
|
|
||||||
"date": "2025-10-22T22:18:18Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "sabnzbd/sabnzbd",
|
"name": "sabnzbd/sabnzbd",
|
||||||
"version": "4.5.4",
|
"version": "4.5.4",
|
||||||
@@ -89,11 +114,6 @@
|
|||||||
"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.170",
|
|
||||||
"date": "2025-10-22T05:55:43Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "fuma-nama/fumadocs",
|
"name": "fuma-nama/fumadocs",
|
||||||
"version": "create-fumadocs-app@16.0.1",
|
"version": "create-fumadocs-app@16.0.1",
|
||||||
@@ -104,26 +124,11 @@
|
|||||||
"version": "v0.23.0-alpha.17",
|
"version": "v0.23.0-alpha.17",
|
||||||
"date": "2025-10-22T00:33:47Z"
|
"date": "2025-10-22T00:33:47Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "jeedom/core",
|
|
||||||
"version": "4.4.20",
|
|
||||||
"date": "2025-10-22T00:27:04Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "steveiliop56/tinyauth",
|
|
||||||
"version": "v4.0.1",
|
|
||||||
"date": "2025-10-15T16:53:55Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "msgbyte/tianji",
|
"name": "msgbyte/tianji",
|
||||||
"version": "v1.30.0",
|
"version": "v1.30.0",
|
||||||
"date": "2025-10-21T21:37:52Z"
|
"date": "2025-10-21T21:37:52Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.4.1",
|
|
||||||
"date": "2025-10-16T07:21:53Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "bluenviron/mediamtx",
|
"name": "bluenviron/mediamtx",
|
||||||
"version": "v1.15.3",
|
"version": "v1.15.3",
|
||||||
@@ -179,6 +184,11 @@
|
|||||||
"version": "server-v3.4.4",
|
"version": "server-v3.4.4",
|
||||||
"date": "2025-09-25T13:19:26Z"
|
"date": "2025-09-25T13:19:26Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "wazuh/wazuh",
|
||||||
|
"version": "v4.14.0",
|
||||||
|
"date": "2025-10-21T13:39:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "goauthentik/authentik",
|
"name": "goauthentik/authentik",
|
||||||
"version": "version/2025.10.0-rc2",
|
"version": "version/2025.10.0-rc2",
|
||||||
@@ -419,11 +429,6 @@
|
|||||||
"version": "5.26.14",
|
"version": "5.26.14",
|
||||||
"date": "2025-10-17T12:38:22Z"
|
"date": "2025-10-17T12:38:22Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "wazuh/wazuh",
|
|
||||||
"version": "coverity-w43-4.14.0",
|
|
||||||
"date": "2025-10-17T09:07:27Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "zwave-js/zwave-js-ui",
|
"name": "zwave-js/zwave-js-ui",
|
||||||
"version": "v11.5.2",
|
"version": "v11.5.2",
|
||||||
@@ -599,11 +604,6 @@
|
|||||||
"version": "v0.10.4",
|
"version": "v0.10.4",
|
||||||
"date": "2025-10-11T19:53:39Z"
|
"date": "2025-10-11T19:53:39Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "duplicati/duplicati",
|
|
||||||
"version": "v2.1.2.3-2.1.2.3_beta_2025-10-11",
|
|
||||||
"date": "2025-10-11T06:49:43Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "0xERR0R/blocky",
|
"name": "0xERR0R/blocky",
|
||||||
"version": "v0.27.0",
|
"version": "v0.27.0",
|
||||||
|
|||||||
@@ -13,15 +13,11 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Kavita"
|
fetch_and_deploy_gh_release "Kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-x64.tar.gz"
|
||||||
cd /opt
|
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
|
||||||
$STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner
|
|
||||||
msg_ok "Installed Kavita"
|
|
||||||
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
service_path="/etc/systemd/system/kavita.service"
|
cat <<EOF >/etc/systemd/system/kavita.service
|
||||||
echo "[Unit]
|
[Unit]
|
||||||
Description=Kavita Server
|
Description=Kavita Server
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
@@ -34,15 +30,17 @@ KillMode=process
|
|||||||
Restart=on-failure
|
Restart=on-failure
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target" >$service_path
|
WantedBy=multi-user.target
|
||||||
chmod +x /opt/Kavita/* && chown root /opt/Kavita/*
|
EOF
|
||||||
systemctl enable --now -q kavita.service
|
chmod +x /opt/Kavita/Kavita && chown root:root /opt/Kavita/Kavita
|
||||||
|
systemctl enable -q --now kavita
|
||||||
msg_ok "Created Service"
|
msg_ok "Created Service"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
$STD apt-get -y autoremove
|
$STD apt -y autoremove
|
||||||
$STD apt-get -y autoclean
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ msg_info "Installing Deno"
|
|||||||
export DENO_INSTALL="/usr/local"
|
export DENO_INSTALL="/usr/local"
|
||||||
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
||||||
[[ ":$PATH:" != *":/usr/local/bin:"* ]] &&
|
[[ ":$PATH:" != *":/usr/local/bin:"* ]] &&
|
||||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc &&
|
echo -e "\nexport PATH=\"/usr/local/bin:\$PATH\"" >>~/.bashrc &&
|
||||||
source ~/.bashrc
|
source ~/.bashrc
|
||||||
msg_ok "Installed Deno"
|
msg_ok "Installed Deno"
|
||||||
|
|
||||||
|
|||||||
@@ -901,22 +901,22 @@ check_for_gh_release() {
|
|||||||
|
|
||||||
if [[ "$current" != "$pin_clean" ]]; then
|
if [[ "$current" != "$pin_clean" ]]; then
|
||||||
CHECK_UPDATE_RELEASE="$match_raw"
|
CHECK_UPDATE_RELEASE="$match_raw"
|
||||||
msg_ok "Checking for update: ${app}"
|
msg_ok "Update available: ${app} ${current:-not installed} → ${pin_clean}"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_ok "Checking for update: ${app}"
|
msg_error "No update available: ${app} is not installed!"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# No pinning → use latest
|
# No pinning → use latest
|
||||||
if [[ -z "$current" || "$current" != "$latest_clean" ]]; then
|
if [[ -z "$current" || "$current" != "$latest_clean" ]]; then
|
||||||
CHECK_UPDATE_RELEASE="$latest_raw"
|
CHECK_UPDATE_RELEASE="$latest_raw"
|
||||||
msg_ok "Checking for update: ${app}"
|
msg_ok "Update available: ${app} ${current:-not installed} → ${latest_clean}"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_ok "Checking for update: ${app}"
|
msg_ok "No update available: ${app} (${latest_clean})"
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1141,7 +1141,7 @@ function fetch_and_deploy_gh_release() {
|
|||||||
rm -rf "${target:?}/"*
|
rm -rf "${target:?}/"*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
tar -xzf "$tmpdir/$filename" -C "$tmpdir" || {
|
tar --no-same-owner -xzf "$tmpdir/$filename" -C "$tmpdir" || {
|
||||||
msg_error "Failed to extract tarball"
|
msg_error "Failed to extract tarball"
|
||||||
rm -rf "$tmpdir"
|
rm -rf "$tmpdir"
|
||||||
return 1
|
return 1
|
||||||
@@ -1263,7 +1263,7 @@ function fetch_and_deploy_gh_release() {
|
|||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
elif [[ "$filename" == *.tar.* || "$filename" == *.tgz ]]; then
|
elif [[ "$filename" == *.tar.* || "$filename" == *.tgz ]]; then
|
||||||
tar -xf "$tmpdir/$filename" -C "$unpack_tmp" || {
|
tar --no-same-owner -xf "$tmpdir/$filename" -C "$unpack_tmp" || {
|
||||||
msg_error "Failed to extract TAR archive"
|
msg_error "Failed to extract TAR archive"
|
||||||
rm -rf "$tmpdir" "$unpack_tmp"
|
rm -rf "$tmpdir" "$unpack_tmp"
|
||||||
return 1
|
return 1
|
||||||
|
|||||||
Reference in New Issue
Block a user