1
0
mirror of https://github.com/community-scripts/ProxmoxVE.git synced 2025-05-05 23:23:08 +00:00

Compare commits

..

1 Commits

Author SHA1 Message Date
GitHub Actions[bot]
1b057c1ff7 Update versions.json 2025-04-15 00:14:06 +00:00
5 changed files with 116 additions and 131 deletions

View File

@ -14,15 +14,6 @@ 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-04-15
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Outline: Installation and update fixes [@tremor021](https://github.com/tremor021) ([#3895](https://github.com/community-scripts/ProxmoxVE/pull/3895))
- SABnzbd: Fix update error caused by externaly managed message [@tremor021](https://github.com/tremor021) ([#3892](https://github.com/community-scripts/ProxmoxVE/pull/3892))
## 2025-04-14 ## 2025-04-14
### 🆕 New Scripts ### 🆕 New Scripts

View File

@ -20,48 +20,45 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/outline ]]; then if [[ ! -d /opt/outline ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Services"
systemctl stop outline
msg_ok "Services Stopped"
msg_info "Updating ${APP} to ${RELEASE}"
temp_file=$(mktemp)
rm -rf /opt/outline/node_modules
curl -fsSL "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf $temp_file
cp -rf outline-${RELEASE}/* /opt/outline
cd /opt/outline
export NODE_OPTIONS="--max-old-space-size=3584"
$STD yarn install --frozen-lockfile
$STD yarn build
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP}"
msg_info "Starting Services"
systemctl start outline
msg_ok "Started Services"
msg_info "Cleaning Up"
rm -rf $temp_file
rm -rf $HOME/outline-${RELEASE}
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit exit
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Stopping Services"
systemctl stop outline
msg_ok "Services Stopped"
msg_info "Updating ${APP} to ${RELEASE}"
temp_file=$(mktemp)
cp /opt/outline/.env /opt
rm -rf /opt/outline
curl -fsSL "https://github.com/outline/outline/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf "$temp_file"
mv outline-"${RELEASE}" /opt/outline
cd /opt/outline || exit
export NODE_ENV=development
export NODE_OPTIONS="--max-old-space-size=3584"
$STD yarn install --frozen-lockfile
$STD yarn build
mv /opt/.env /opt/outline
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated ${APP}"
msg_info "Starting Services"
systemctl start outline
msg_ok "Started Services"
msg_info "Cleaning Up"
rm -rf "$temp_file"
rm -rf "$HOME"/outline-"${RELEASE}"
msg_ok "Cleaned"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at ${RELEASE}"
fi
exit
} }
start start

View File

@ -20,30 +20,29 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /opt/sabnzbd ]]; then if [[ ! -d /opt/sabnzbd ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
RELEASE=$(curl -fsSL https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(curl -fsSL https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
msg_info "Updating $APP to ${RELEASE}" msg_info "Updating $APP to ${RELEASE}"
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED systemctl stop sabnzbd.service
systemctl stop sabnzbd.service tar zxvf <(curl -fsSL https://github.com/sabnzbd/sabnzbd/releases/download/$RELEASE/SABnzbd-${RELEASE}-src.tar.gz)
tar zxvf <(curl -fsSL https://github.com/sabnzbd/sabnzbd/releases/download/$RELEASE/SABnzbd-${RELEASE}-src.tar.gz) cp -rf SABnzbd-${RELEASE}/* /opt/sabnzbd
cp -rf SABnzbd-${RELEASE}/* /opt/sabnzbd rm -rf SABnzbd-${RELEASE}
rm -rf SABnzbd-${RELEASE} cd /opt/sabnzbd
cd /opt/sabnzbd $STD python3 -m pip install -r requirements.txt
$STD python3 -m pip install -r requirements.txt echo "${RELEASE}" >/opt/${APP}_version.txt
echo "${RELEASE}" >/opt/${APP}_version.txt systemctl start sabnzbd.service
systemctl start sabnzbd.service msg_ok "Updated ${APP} to ${RELEASE}"
msg_ok "Updated ${APP} to ${RELEASE}" else
else msg_ok "No update required. ${APP} is already at ${RELEASE}"
msg_ok "No update required. ${APP} is already at ${RELEASE}" fi
fi exit
exit
} }
start start

View File

@ -1,44 +1,4 @@
[ [
{
"name": "fhem/fhem-mirror",
"version": "6.2",
"date": "2025-04-15T10:34:54Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.86.1",
"date": "2025-04-09T09:20:55Z"
},
{
"name": "wazuh/wazuh",
"version": "coverity-w16-4.12.0",
"date": "2025-04-15T08:25:08Z"
},
{
"name": "mattermost/mattermost",
"version": "v10.6.2",
"date": "2025-04-15T08:14:23Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.1778",
"date": "2025-04-15T06:26:21Z"
},
{
"name": "slskd/slskd",
"version": "0.22.5",
"date": "2025-04-15T02:52:26Z"
},
{
"name": "blakeblackshear/frigate",
"version": "v0.14.1",
"date": "2024-08-29T22:32:51Z"
},
{
"name": "esphome/esphome",
"version": "2025.3.3",
"date": "2025-03-31T22:07:05Z"
},
{ {
"name": "moghtech/komodo", "name": "moghtech/komodo",
"version": "v1.17.1", "version": "v1.17.1",
@ -54,16 +14,16 @@
"version": "v0.8.6", "version": "v0.8.6",
"date": "2025-04-14T22:09:30Z" "date": "2025-04-14T22:09:30Z"
}, },
{
"name": "keycloak/keycloak",
"version": "26.2.0",
"date": "2025-04-11T12:48:27Z"
},
{ {
"name": "paperless-ngx/paperless-ngx", "name": "paperless-ngx/paperless-ngx",
"version": "v2.15.2", "version": "v2.15.2",
"date": "2025-04-14T20:48:52Z" "date": "2025-04-14T20:48:52Z"
}, },
{
"name": "fhem/fhem-mirror",
"version": "6.2",
"date": "2025-04-14T20:31:09Z"
},
{ {
"name": "semaphoreui/semaphore", "name": "semaphoreui/semaphore",
"version": "v2.13.13", "version": "v2.13.13",
@ -114,6 +74,11 @@
"version": "v4.0.9", "version": "v4.0.9",
"date": "2025-04-14T14:40:34Z" "date": "2025-04-14T14:40:34Z"
}, },
{
"name": "n8n-io/n8n",
"version": "n8n@1.86.1",
"date": "2025-04-09T09:20:55Z"
},
{ {
"name": "AdguardTeam/AdGuardHome", "name": "AdguardTeam/AdGuardHome",
"version": "v0.107.60", "version": "v0.107.60",
@ -154,6 +119,11 @@
"version": "v1.5.1", "version": "v1.5.1",
"date": "2025-01-01T16:15:52Z" "date": "2025-01-01T16:15:52Z"
}, },
{
"name": "Jackett/Jackett",
"version": "v0.22.1775",
"date": "2025-04-14T05:59:53Z"
},
{ {
"name": "firefly-iii/firefly-iii", "name": "firefly-iii/firefly-iii",
"version": "v6.2.10", "version": "v6.2.10",
@ -191,8 +161,13 @@
}, },
{ {
"name": "runtipi/runtipi", "name": "runtipi/runtipi",
"version": "v3.10.0", "version": "nightly",
"date": "2025-03-15T14:38:16Z" "date": "2025-04-13T18:27:09Z"
},
{
"name": "keycloak/keycloak",
"version": "26.2.0",
"date": "2025-04-11T12:48:27Z"
}, },
{ {
"name": "karakeep-app/karakeep", "name": "karakeep-app/karakeep",
@ -229,6 +204,11 @@
"version": "v5.21.1.9799", "version": "v5.21.1.9799",
"date": "2025-03-24T15:52:12Z" "date": "2025-03-24T15:52:12Z"
}, },
{
"name": "slskd/slskd",
"version": "0.22.4",
"date": "2025-04-13T00:14:13Z"
},
{ {
"name": "Tautulli/Tautulli", "name": "Tautulli/Tautulli",
"version": "v2.15.2", "version": "v2.15.2",
@ -384,6 +364,11 @@
"version": "debian/12.0.14", "version": "debian/12.0.14",
"date": "2025-04-09T10:09:00Z" "date": "2025-04-09T10:09:00Z"
}, },
{
"name": "esphome/esphome",
"version": "2025.3.3",
"date": "2025-03-31T22:07:05Z"
},
{ {
"name": "minio/minio", "name": "minio/minio",
"version": "RELEASE.2025-04-08T15-41-24Z", "version": "RELEASE.2025-04-08T15-41-24Z",
@ -434,6 +419,11 @@
"version": "v1.23.7", "version": "v1.23.7",
"date": "2025-04-07T19:27:52Z" "date": "2025-04-07T19:27:52Z"
}, },
{
"name": "wazuh/wazuh",
"version": "coverity-w15-4.12.0",
"date": "2025-04-07T17:50:14Z"
},
{ {
"name": "thomiceli/opengist", "name": "thomiceli/opengist",
"version": "v1.10.0", "version": "v1.10.0",
@ -454,6 +444,11 @@
"version": "v24.8", "version": "v24.8",
"date": "2025-03-18T07:33:51Z" "date": "2025-03-18T07:33:51Z"
}, },
{
"name": "mattermost/mattermost",
"version": "server/public/v0.1.11",
"date": "2025-03-28T14:04:31Z"
},
{ {
"name": "Dolibarr/dolibarr", "name": "Dolibarr/dolibarr",
"version": "21.0.1", "version": "21.0.1",
@ -1009,6 +1004,11 @@
"version": "1.33.2", "version": "1.33.2",
"date": "2025-02-09T17:54:59Z" "date": "2025-02-09T17:54:59Z"
}, },
{
"name": "blakeblackshear/frigate",
"version": "v0.15.0",
"date": "2025-02-08T18:45:30Z"
},
{ {
"name": "apache/tika", "name": "apache/tika",
"version": "2.9.3", "version": "2.9.3",

View File

@ -15,10 +15,10 @@ update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt-get install -y \
gnupg \ gnupg \
mkcert \ mkcert \
git \ git \
redis redis
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Setting up Node.js Repository" msg_info "Setting up Node.js Repository"
@ -43,6 +43,7 @@ $STD apt-get install -y postgresql-16
DB_NAME="outline" DB_NAME="outline"
DB_USER="outline" DB_USER="outline"
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)" DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
SECRET_KEY="$(openssl rand -hex 32)"
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';" $STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;" $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';" $STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
@ -51,7 +52,6 @@ $STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC';"
msg_ok "Set up PostgreSQL" msg_ok "Set up PostgreSQL"
msg_info "Setup Outline (Patience)" msg_info "Setup Outline (Patience)"
SECRET_KEY="$(openssl rand -hex 32)"
temp_file=$(mktemp) temp_file=$(mktemp)
LOCAL_IP="$(hostname -I | awk '{print $1}')" LOCAL_IP="$(hostname -I | awk '{print $1}')"
RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -fsSL https://api.github.com/repos/outline/outline/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
@ -60,7 +60,6 @@ tar zxf $temp_file
mv outline-${RELEASE} /opt/outline mv outline-${RELEASE} /opt/outline
cd /opt/outline cd /opt/outline
cp .env.sample .env cp .env.sample .env
export NODE_ENV=development
sed -i 's/NODE_ENV=production/NODE_ENV=development/g' /opt/outline/.env sed -i 's/NODE_ENV=production/NODE_ENV=development/g' /opt/outline/.env
sed -i "s/generate_a_new_key/${SECRET_KEY}/g" /opt/outline/.env sed -i "s/generate_a_new_key/${SECRET_KEY}/g" /opt/outline/.env
sed -i "s/user:pass@postgres/${DB_USER}:${DB_PASS}@localhost/g" /opt/outline/.env sed -i "s/user:pass@postgres/${DB_USER}:${DB_PASS}@localhost/g" /opt/outline/.env
@ -71,7 +70,6 @@ $STD yarn install --frozen-lockfile
export NODE_OPTIONS="--max-old-space-size=3584" export NODE_OPTIONS="--max-old-space-size=3584"
$STD yarn build $STD yarn build
sed -i 's/NODE_ENV=development/NODE_ENV=production/g' /opt/outline/.env sed -i 's/NODE_ENV=development/NODE_ENV=production/g' /opt/outline/.env
export NODE_ENV=production
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt" echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
msg_ok "Setup Outline" msg_ok "Setup Outline"
@ -85,7 +83,7 @@ After=network.target
Type=simple Type=simple
User=root User=root
WorkingDirectory=/opt/outline WorkingDirectory=/opt/outline
ExecStart=/usr/bin/yarn start ExecStart=/usr/bin/node ./build/server/index.js
Restart=always Restart=always
EnvironmentFile=/opt/outline/.env EnvironmentFile=/opt/outline/.env