Compare commits

...

19 Commits

Author SHA1 Message Date
f690a74664 update mysql 2025-07-09 14:23:51 +02:00
422bb0a01f Refactor: Ghost 2025-07-09 14:15:24 +02:00
b9ec651a8b Update CHANGELOG.md (#5864)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 10:36:31 +01:00
475c666eb0 Refactor: FreshRSS (#5847)
* Refactor

* Update freshrss-install.sh
2025-07-09 11:36:03 +02:00
8d419616a6 Update CHANGELOG.md (#5863)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 10:12:49 +01:00
d087719571 Refactor: Fluid-Calendar (#5846)
* Refactor

* Update fluid-calendar.sh

---------

Co-authored-by: Tobias <96661824+CrazyWolf13@users.noreply.github.com>
2025-07-09 11:12:22 +02:00
df52a2d057 Update CHANGELOG.md (#5862)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 10:01:52 +01:00
4886196cfa Update CHANGELOG.md (#5861)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 10:01:18 +01:00
1f37fbb83e BabyBuddy: fix path issues (#5856) 2025-07-09 11:01:01 +02:00
387f2c7bd1 Update CHANGELOG.md (#5860)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 10:00:43 +01:00
0b949c8151 tools.func: fix an bug while php libapache2-mod breaks (#5857) 2025-07-09 11:00:15 +02:00
fd248e072c Update CHANGELOG.md (#5859)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 09:57:43 +01:00
e58e50fc15 Refactor (#5840) 2025-07-09 10:57:15 +02:00
5b869b61fc Update CHANGELOG.md (#5858)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 09:54:01 +01:00
0e2c793f92 Refactor (#5841) 2025-07-09 10:53:35 +02:00
96a8f9df89 Update CHANGELOG.md (#5855)
Some checks failed
Auto Update .app-files / update-app-files (push) Has been cancelled
Create Changelog Pull Request / update-changelog-pull-request (push) Has been cancelled
Close Discussion on PR Merge / close-discussion (push) Has been cancelled
Frontend CI/CD / build (push) Has been cancelled
Frontend CI/CD / deploy (push) Has been cancelled
Sync to Gitea / sync (push) Has been cancelled
Crawl Versions from newreleases.io / crawl-versions (push) Has been cancelled
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-09 06:42:31 +01:00
4f569c67eb Refactor (#5849) 2025-07-09 07:42:06 +02:00
e856b36306 add workflow_dispatch 2025-07-09 07:39:32 +02:00
42e8623f39 fix autolabler regex 2025-07-09 07:38:29 +02:00
15 changed files with 123 additions and 158 deletions

3
.github/workflows/autolabeler.yml generated vendored
View File

@ -1,6 +1,7 @@
name: Auto Label Pull Requests name: Auto Label Pull Requests
on: on:
workflow_dispatch:
pull_request_target: pull_request_target:
branches: ["main"] branches: ["main"]
types: [opened, synchronize, reopened, edited] types: [opened, synchronize, reopened, edited]
@ -80,7 +81,7 @@ jobs:
for (const [checkbox, label] of Object.entries(templateLabelMappings)) { for (const [checkbox, label] of Object.entries(templateLabelMappings)) {
const escapedCheckbox = checkbox.replace(/([.*+?^=!:${}()|[\]\/\\])/g, "\\$1"); const escapedCheckbox = checkbox.replace(/([.*+?^=!:${}()|[\]\/\\])/g, "\\$1");
const regex = new RegExp(`- \[(x|X)\]\s*.*${escapedCheckbox}`, "i"); const regex = new RegExp(`- \\[(x|X)\\]\\s*${escapedCheckbox}`, "i");
if (regex.test(prBody)) { if (regex.test(prBody)) {
labelsToAdd.add(label); labelsToAdd.add(label);
} }

View File

@ -12,6 +12,21 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
## 2025-07-09 ## 2025-07-09
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- BabyBuddy: fix path issues for update [@MickLesk](https://github.com/MickLesk) ([#5856](https://github.com/community-scripts/ProxmoxVE/pull/5856))
- tools.func: fix an bug while php libapache2-mod breaks [@MickLesk](https://github.com/MickLesk) ([#5857](https://github.com/community-scripts/ProxmoxVE/pull/5857))
- #### 🔧 Refactor
- Refactor: FreshRSS [@tremor021](https://github.com/tremor021) ([#5847](https://github.com/community-scripts/ProxmoxVE/pull/5847))
- Refactor: Fluid-Calendar [@tremor021](https://github.com/tremor021) ([#5846](https://github.com/community-scripts/ProxmoxVE/pull/5846))
- Refactor: EMQX [@tremor021](https://github.com/tremor021) ([#5840](https://github.com/community-scripts/ProxmoxVE/pull/5840))
- Refactor: Excalidraw [@tremor021](https://github.com/tremor021) ([#5841](https://github.com/community-scripts/ProxmoxVE/pull/5841))
- Refactor: gatus [@tremor021](https://github.com/tremor021) ([#5849](https://github.com/community-scripts/ProxmoxVE/pull/5849))
## 2025-07-08 ## 2025-07-08
### 🚀 Updated Scripts ### 🚀 Updated Scripts

View File

@ -38,7 +38,7 @@ function update_script() {
msg_ok "Services Stopped" msg_ok "Services Stopped"
msg_info "Cleaning old files" msg_info "Cleaning old files"
cp babybuddy/settings/production.py /tmp/production.py.bak cp /opt/babybuddy/babybuddy/settings/production.py /tmp/production.py.bak
find . -mindepth 1 -maxdepth 1 ! -name '.venv' -exec rm -rf {} + find . -mindepth 1 -maxdepth 1 ! -name '.venv' -exec rm -rf {} +
msg_ok "Cleaned old files" msg_ok "Cleaned old files"
@ -46,7 +46,7 @@ function update_script() {
msg_info "Updating ${APP} to v${RELEASE}" msg_info "Updating ${APP} to v${RELEASE}"
cd /opt/babybuddy cd /opt/babybuddy
mv /tmp/production.py.bak babybuddy/settings/production.py mv /tmp/production.py.bak /opt/babybuddy/babybuddy/settings/production.py
source .venv/bin/activate source .venv/bin/activate
$STD uv pip install -r requirements.txt $STD uv pip install -r requirements.txt
$STD python manage.py migrate $STD python manage.py migrate

View File

@ -28,20 +28,16 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
if [[ "${RELEASE}" != "$(cat /opt/excalidraw_version.txt)" ]] || [[ ! -f /opt/excalidraw_version.txt ]]; then if [[ "${RELEASE}" != "$(cat ~/.excalidraw 2>/dev/null)" ]] || [[ ! -f ~/.excalidraw ]]; then
msg_info "Stopping $APP" msg_info "Stopping $APP"
systemctl stop excalidraw systemctl stop excalidraw
msg_ok "Stopped $APP" msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
cd /tmp
temp_file=$(mktemp)
curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar xzf $temp_file
rm -rf /opt/excalidraw rm -rf /opt/excalidraw
mv excalidraw-${RELEASE} /opt/excalidraw fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Updating $APP to v${RELEASE}"
cd /opt/excalidraw cd /opt/excalidraw
$STD yarn $STD yarn
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"
@ -50,11 +46,6 @@ function update_script() {
systemctl start excalidraw systemctl start excalidraw
msg_ok "Started $APP" msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -rf $temp_file
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/excalidraw_version.txt
msg_ok "Update Successful" msg_ok "Update Successful"
else else
msg_ok "No update required. ${APP} is already at v${RELEASE}" msg_ok "No update required. ${APP} is already at v${RELEASE}"

View File

@ -28,20 +28,17 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | 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 [[ "${RELEASE}" != "$(cat ~/.fluid-calendar 2>/dev/null)" ]] || [[ ! -f ~/.fluid-calendar ]]; then
msg_info "Stopping $APP" msg_info "Stopping $APP"
systemctl stop fluid-calendar.service systemctl stop fluid-calendar
msg_ok "Stopped $APP" msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
cp /opt/fluid-calendar/.env /opt/fluid.env cp /opt/fluid-calendar/.env /opt/fluid.env
rm -rf /opt/fluid-calendar rm -rf /opt/fluid-calendar
tmp_file=$(mktemp) fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
$STD unzip $tmp_file msg_info "Updating $APP to v${RELEASE}"
mv ${APP}-${RELEASE}/ /opt/fluid-calendar
mv /opt/fluid.env /opt/fluid-calendar/.env mv /opt/fluid.env /opt/fluid-calendar/.env
cd /opt/fluid-calendar cd /opt/fluid-calendar
export NEXT_TELEMETRY_DISABLED=1 export NEXT_TELEMETRY_DISABLED=1
@ -52,14 +49,9 @@ function update_script() {
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP" msg_info "Starting $APP"
systemctl start fluid-calendar.service systemctl start fluid-calendar
msg_ok "Started $APP" msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -rf $tmp_file
msg_ok "Cleanup Completed"
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Update Successful" msg_ok "Update Successful"
else else
msg_ok "No update required. ${APP} is already at v${RELEASE}" msg_ok "No update required. ${APP} is already at v${RELEASE}"

View File

@ -29,35 +29,29 @@ function update_script() {
exit exit
fi fi
RELEASE=$(curl -s https://api.github.com/repos/TwiN/gatus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') RELEASE=$(curl -s https://api.github.com/repos/TwiN/gatus/releases/latest | 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 [[ "${RELEASE}" != "$(cat ~/.gatus 2>/dev/null)" ]] || [[ ! -f ~/.gatus ]]; then
msg_info "Updating $APP" msg_info "Updating $APP"
msg_info "Stopping $APP" msg_info "Stopping $APP"
systemctl stop gatus systemctl stop gatus
msg_ok "Stopped $APP" msg_ok "Stopped $APP"
msg_info "Updating $APP to v${RELEASE}"
mv /opt/gatus/config/config.yaml /opt mv /opt/gatus/config/config.yaml /opt
rm -rf /opt/gatus/* rm -rf /opt/gatus
temp_file=$(mktemp) fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
curl -fsSL "https://github.com/TwiN/gatus/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf "$temp_file" --strip-components=1 -C /opt/gatus msg_info "Updating $APP to v${RELEASE}"
cd /opt/gatus cd /opt/gatus
$STD go mod tidy $STD go mod tidy
CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gatus . CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gatus .
setcap CAP_NET_RAW+ep gatus setcap CAP_NET_RAW+ep gatus
mv /opt/config.yaml config mv /opt/config.yaml config
echo "${RELEASE}" >/opt/${APP}_version.txt
msg_ok "Updated $APP to v${RELEASE}" msg_ok "Updated $APP to v${RELEASE}"
msg_info "Starting $APP" msg_info "Starting $APP"
systemctl start gatus systemctl start gatus
msg_ok "Started $APP" msg_ok "Started $APP"
msg_info "Cleaning Up"
rm -f "$temp_file"
msg_ok "Cleanup Completed"
msg_ok "Update Successful" msg_ok "Update Successful"
else else
msg_ok "No update required. ${APP} is already at v${RELEASE}" msg_ok "No update required. ${APP} is already at v${RELEASE}"

View File

@ -23,8 +23,13 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
msg_info "Updating ${APP} LXC"
if ! dpkg-query -W -f='${Status}' mariadb-server 2>/dev/null | grep -q "install ok installed"; then
setup_mysql
fi
NODE_VERSION="22" setup_nodejs
msg_info "Updating ${APP} LXC"
if command -v ghost &>/dev/null; then if command -v ghost &>/dev/null; then
current_version=$(ghost version | grep 'Ghost-CLI version' | awk '{print $3}') current_version=$(ghost version | grep 'Ghost-CLI version' | awk '{print $3}')
latest_version=$(npm show ghost-cli version) latest_version=$(npm show ghost-cli version)

View File

@ -35,10 +35,6 @@
{ {
"text": "Setup-Steps: Access Control ➡ Authentication ➡ Create ➡ Next ➡ Next ➡ Create ➡ Users ➡ Add ➡ Username / Password (to authenicate with MQTT) ➡ Save. You're now ready to enjoy a high-performance MQTT Broker.", "text": "Setup-Steps: Access Control ➡ Authentication ➡ Create ➡ Next ➡ Next ➡ Create ➡ Users ➡ Add ➡ Username / Password (to authenicate with MQTT) ➡ Save. You're now ready to enjoy a high-performance MQTT Broker.",
"type": "info" "type": "info"
},
{
"text": "WARNING: Installation sources scripts outside of Community Scripts repo. Please check the source before installing.",
"type": "warning"
} }
] ]
} }

View File

@ -13,16 +13,23 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing dependencies"
$STD apt-get install -y \
apt-transport-https \
ca-certificates \
lsb-release
msg_ok "Installed dependencies"
msg_info "Installing EMQX" msg_info "Installing EMQX"
$STD bash <(curl -fsSL https://packagecloud.io/install/repositories/emqx/emqx/script.deb.sh) curl -fsSL https://packagecloud.io/emqx/emqx/gpgkey | gpg --dearmor -o /usr/share/keyrings/emqx-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/emqx-archive-keyring.gpg] https://packagecloud.io/emqx/emqx/debian/ bookworm main" >/etc/apt/sources.list.d/emqx.list
$STD apt-get install -y emqx $STD apt-get install -y emqx
$STD systemctl enable --now emqx
msg_ok "Installed EMQX" msg_ok "Installed EMQX"
motd_ssh motd_ssh
customize customize
msg_info "Cleaning up" msg_info "Cleaning up"
apt-get autoremove >/dev/null $STD apt-get autoremove
apt-get autoclean >/dev/null $STD apt-get autoclean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@ -14,21 +14,15 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt-get install -y xdg-utils
xdg-utils
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Setup Excalidraw" msg_info "Configuring Excalidraw"
temp_file=$(mktemp)
RELEASE=$(curl -fsSL https://api.github.com/repos/excalidraw/excalidraw/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/excalidraw/excalidraw/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar xzf $temp_file
mv excalidraw-${RELEASE} /opt/excalidraw
cd /opt/excalidraw cd /opt/excalidraw
$STD yarn $STD yarn
echo "${RELEASE}" >/opt/excalidraw_version.txt
msg_ok "Setup Excalidraw" msg_ok "Setup Excalidraw"
msg_info "Creating Service" msg_info "Creating Service"
@ -53,7 +47,6 @@ motd_ssh
customize customize
msg_info "Cleaning up" msg_info "Cleaning up"
rm -f $temp_file
$STD apt-get -y autoremove $STD apt-get -y autoremove
$STD apt-get -y autoclean $STD apt-get -y autoclean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@ -14,17 +14,11 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt-get install -y zip
zip \
postgresql-common
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Installing Additional Dependencies" PG_VERSION="17" setup_postgresql
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg NODE_VERSION="20" setup_nodejs
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
echo "YES" | /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh &>/dev/null
$STD apt-get install -y postgresql-17 nodejs
msg_ok "Installed Additional Dependencies"
msg_info "Setting up Postgresql Database" msg_info "Setting up Postgresql Database"
DB_NAME="fluiddb" DB_NAME="fluiddb"
@ -44,14 +38,9 @@ $STD sudo -u postgres psql -c "ALTER USER $DB_USER WITH SUPERUSER;"
} >>~/$APPLICATION.creds } >>~/$APPLICATION.creds
msg_ok "Set up Postgresql Database" msg_ok "Set up Postgresql Database"
msg_info "Setup ${APPLICATION}" fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
tmp_file=$(mktemp)
RELEASE=$(curl -fsSL https://api.github.com/repos/dotnetfactory/fluid-calendar/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
$STD unzip $tmp_file
mv ${APPLICATION}-${RELEASE}/ /opt/${APPLICATION}
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
msg_info "Configuring ${APPLICATION}"
cat <<EOF >/opt/fluid-calendar/.env cat <<EOF >/opt/fluid-calendar/.env
DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}" DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}"
@ -72,7 +61,7 @@ $STD npm install --legacy-peer-deps
$STD npm run prisma:generate $STD npm run prisma:generate
$STD npx prisma migrate deploy $STD npx prisma migrate deploy
$STD npm run build:os $STD npm run build:os
msg_ok "Setup ${APPLICATION}" msg_ok "Configuring ${APPLICATION}"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/fluid-calendar.service cat <<EOF >/etc/systemd/system/fluid-calendar.service
@ -95,7 +84,6 @@ motd_ssh
customize customize
msg_info "Cleaning up" msg_info "Cleaning up"
rm -f $tmp_file
$STD apt-get -y autoremove $STD apt-get -y autoremove
$STD apt-get -y autoclean $STD apt-get -y autoclean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@ -13,13 +13,7 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing Dependencies" PHP_VERSION="8.2" PHP_MODULE="dom,json,ctype,pgsql,gmp,iconv" PHP_APACHE="YES" setup_php
$STD apt-get install -y \
apache2 \
php-{curl,dom,json,ctype,pgsql,gmp,mbstring,iconv,zip} \
libapache2-mod-php
msg_ok "Installed Dependencies"
PG_VERSION="16" setup_postgresql PG_VERSION="16" setup_postgresql
msg_info "Setting up PostgreSQL" msg_info "Setting up PostgreSQL"
@ -36,17 +30,14 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMP
} >>~/freshrss.creds } >>~/freshrss.creds
msg_ok "Set up PostgreSQL" msg_ok "Set up PostgreSQL"
msg_info "Installing FreshRSS" fetch_and_deploy_gh_release "freshrss" "FreshRSS/FreshRSS"
RELEASE=$(curl -fsSL https://api.github.com/repos/FreshRSS/FreshRSS/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
cd /opt msg_info "Configuring FreshRSS"
curl -fsSL "https://github.com/FreshRSS/FreshRSS/archive/refs/tags/${RELEASE}.zip" -o "${RELEASE}.zip"
$STD unzip "${RELEASE}.zip"
mv "/opt/FreshRSS-${RELEASE}" /opt/freshrss
cd /opt/freshrss cd /opt/freshrss
chown -R www-data:www-data /opt/freshrss chown -R www-data:www-data /opt/freshrss
chmod -R g+rX /opt/freshrss chmod -R g+rX /opt/freshrss
chmod -R g+w /opt/freshrss/data/ chmod -R g+w /opt/freshrss/data/
msg_ok "Installed FreshRSS" msg_ok "Configured FreshRSS"
msg_info "Setting up cron job for feed refresh" msg_info "Setting up cron job for feed refresh"
cat <<EOF >/etc/cron.d/freshrss-actualize cat <<EOF >/etc/cron.d/freshrss-actualize
@ -83,7 +74,6 @@ motd_ssh
customize customize
msg_info "Cleaning up" msg_info "Cleaning up"
rm -rf "/opt/${RELEASE}.zip"
$STD apt-get -y autoremove $STD apt-get -y autoremove
$STD apt-get -y autoclean $STD apt-get -y autoclean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@ -20,20 +20,15 @@ $STD apt-get install -y \
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
setup_go setup_go
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
RELEASE=$(curl -s https://api.github.com/repos/TwiN/gatus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') msg_info "Configuring gatus"
msg_info "Setting up gatus v${RELEASE}"
temp_file=$(mktemp)
mkdir -p /opt/gatus
curl -fsSL "https://github.com/TwiN/gatus/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
tar zxf "$temp_file" --strip-components=1 -C /opt/gatus
cd /opt/gatus cd /opt/gatus
$STD go mod tidy $STD go mod tidy
CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gatus . CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gatus .
setcap CAP_NET_RAW+ep gatus setcap CAP_NET_RAW+ep gatus
mv config.yaml config mv config.yaml config
echo "${RELEASE}" >/opt/gatus_version.txt msg_ok "Configured gatus"
msg_ok "Done setting up gatus"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/gatus.service cat <<EOF >/etc/systemd/system/gatus.service
@ -58,10 +53,6 @@ motd_ssh
customize customize
msg_info "Cleaning up" msg_info "Cleaning up"
rm -f "$temp_file"
$STD apt-get -y autoremove $STD apt-get -y autoremove
$STD apt-get -y autoclean $STD apt-get -y autoclean
msg_ok "Cleaned" msg_ok "Cleaned"
motd_ssh
customize

View File

@ -16,19 +16,19 @@ update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt-get install -y \
nginx \ nginx \
ca-certificates ca-certificates \
libjemalloc2
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
setup_mariadb setup_mysql
msg_info "Configuring Database" msg_info "Configuring Database"
DB_NAME=ghost DB_NAME=ghost
DB_USER=ghostuser DB_USER=ghostuser
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13) DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mariadb -u root -e "CREATE DATABASE $DB_NAME;" $STD mysql -u root -e "CREATE DATABASE $DB_NAME;"
$STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';" $STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
$STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;" $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{ {
echo "Ghost-Credentials" echo "Ghost-Credentials"
echo "Ghost Database User: $DB_USER" echo "Ghost Database User: $DB_USER"
@ -37,7 +37,7 @@ $STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUS
} >>~/ghost.creds } >>~/ghost.creds
msg_ok "Configured MySQL" msg_ok "Configured MySQL"
NODE_VERSION="20" setup_nodejs NODE_VERSION="22" setup_nodejs
msg_info "Installing Ghost CLI" msg_info "Installing Ghost CLI"
$STD npm install ghost-cli@latest -g $STD npm install ghost-cli@latest -g

View File

@ -451,7 +451,7 @@ function setup_php() {
MODULE_LIST+=" php${PHP_VERSION}-fpm" MODULE_LIST+=" php${PHP_VERSION}-fpm"
fi fi
if [[ "$PHP_APACHE" == "YES" ]]; then if [[ "$PHP_APACHE" == "YES" ]]; then
$STD apt-get install -y apache2 $STD apt-get install -y apache2 libapache2-mod-php${PHP_VERSION}
$STD systemctl restart apache2 || true $STD systemctl restart apache2 || true
fi fi
@ -459,6 +459,8 @@ function setup_php() {
if [[ -f /etc/apache2/mods-enabled/php${CURRENT_PHP}.load ]]; then if [[ -f /etc/apache2/mods-enabled/php${CURRENT_PHP}.load ]]; then
$STD a2dismod php${CURRENT_PHP} || true $STD a2dismod php${CURRENT_PHP} || true
fi fi
$STD a2enmod php${PHP_VERSION}
$STD systemctl restart apache2 || true
fi fi
if [[ "$PHP_FPM" == "YES" ]] && [[ -n "$CURRENT_PHP" ]]; then if [[ "$PHP_FPM" == "YES" ]] && [[ -n "$CURRENT_PHP" ]]; then