mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-05 10:52:49 +00:00
Compare commits
67 Commits
2025-05-26
...
2025-05-28
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
48979104d7 | ||
|
|
964950c82c | ||
|
|
0677af31c4 | ||
|
|
4495ffee6a | ||
|
|
6745dad963 | ||
|
|
e9470ab1af | ||
|
|
5abcb47051 | ||
|
|
709a899f8f | ||
|
|
b9ff7513a4 | ||
|
|
7a963a76b7 | ||
|
|
13506d92fb | ||
|
|
36f859c062 | ||
|
|
adc8225ed2 | ||
|
|
640dca8d8b | ||
|
|
3b0713b812 | ||
|
|
d20165f25c | ||
|
|
c79d05ca5f | ||
|
|
f0dd1c264d | ||
|
|
951782d8f2 | ||
|
|
5e8ee6baa8 | ||
|
|
7bb9fb09ba | ||
|
|
eb04327aa9 | ||
|
|
ce39e7c87e | ||
|
|
0e75a57582 | ||
|
|
8765b7ac1d | ||
|
|
56e316b849 | ||
|
|
79a5624905 | ||
|
|
a4dee03140 | ||
|
|
8787ef57b5 | ||
|
|
86674ef376 | ||
|
|
1e195cac1e | ||
|
|
8e8e09668b | ||
|
|
6ef1c99f65 | ||
|
|
e2a8b8b799 | ||
|
|
c356f77efe | ||
|
|
dcfe80e069 | ||
|
|
010928fee2 | ||
|
|
aed2c0e5bf | ||
|
|
9e2d66266a | ||
|
|
da406b5ce8 | ||
|
|
a7bf2679de | ||
|
|
7079f428ca | ||
|
|
121bd8e557 | ||
|
|
d9c4ff9867 | ||
|
|
7db94ad73a | ||
|
|
56c2682601 | ||
|
|
11a7c2e410 | ||
|
|
ed9d8e995d | ||
|
|
3b67e8dcc1 | ||
|
|
f09e57c200 | ||
|
|
72c24d5147 | ||
|
|
93a179c201 | ||
|
|
ac2f0e66ae | ||
|
|
5ccf8a7cd6 | ||
|
|
db82285b95 | ||
|
|
58586cbfc8 | ||
|
|
8708980786 | ||
|
|
943fa7b7aa | ||
|
|
5085547f39 | ||
|
|
5685e7e088 | ||
|
|
72db97b226 | ||
|
|
e6805db9f5 | ||
|
|
97073be5e2 | ||
|
|
82228189a7 | ||
|
|
53bdedfc08 | ||
|
|
92ff5a9881 | ||
|
|
0bb4509cd7 |
65
CHANGELOG.md
65
CHANGELOG.md
@@ -14,8 +14,73 @@ 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-05-29
|
||||||
|
|
||||||
|
## 2025-05-28
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- Umbrel-OS [@MickLesk](https://github.com/MickLesk) ([#4788](https://github.com/community-scripts/ProxmoxVE/pull/4788))
|
||||||
|
- oauth2-proxy ([#4784](https://github.com/community-scripts/ProxmoxVE/pull/4784))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- Habitica: Use Node20 [@MickLesk](https://github.com/MickLesk) ([#4796](https://github.com/community-scripts/ProxmoxVE/pull/4796))
|
||||||
|
- Alpine-Node-RED: add service to rc [@MickLesk](https://github.com/MickLesk) ([#4783](https://github.com/community-scripts/ProxmoxVE/pull/4783))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Pulse: use prebuild tarball file / remove unneeded npm actions [@MickLesk](https://github.com/MickLesk) ([#4776](https://github.com/community-scripts/ProxmoxVE/pull/4776))
|
||||||
|
|
||||||
|
- #### 💥 Breaking Changes
|
||||||
|
|
||||||
|
- Refactor: Linkwarden + OS Upgrade [@MickLesk](https://github.com/MickLesk) ([#4756](https://github.com/community-scripts/ProxmoxVE/pull/4756))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- refactor: use binary and randomize credentials in tinyauth [@steveiliop56](https://github.com/steveiliop56) ([#4632](https://github.com/community-scripts/ProxmoxVE/pull/4632))
|
||||||
|
- MariaDB CLI Update, Go Install Helper & Minor Cleanup [@MickLesk](https://github.com/MickLesk) ([#4793](https://github.com/community-scripts/ProxmoxVE/pull/4793))
|
||||||
|
- Refactor: Remove redundant dependencies & unify unzip usage [@MickLesk](https://github.com/MickLesk) ([#4780](https://github.com/community-scripts/ProxmoxVE/pull/4780))
|
||||||
|
- Refactor: Remove gpg / gnupg from script base [@MickLesk](https://github.com/MickLesk) ([#4775](https://github.com/community-scripts/ProxmoxVE/pull/4775))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- pulse: correct url in note [@xb00tt](https://github.com/xb00tt) ([#4809](https://github.com/community-scripts/ProxmoxVE/pull/4809))
|
||||||
|
|
||||||
## 2025-05-27
|
## 2025-05-27
|
||||||
|
|
||||||
|
### 🆕 New Scripts
|
||||||
|
|
||||||
|
- Backrest ([#4766](https://github.com/community-scripts/ProxmoxVE/pull/4766))
|
||||||
|
- Pulse ([#4728](https://github.com/community-scripts/ProxmoxVE/pull/4728))
|
||||||
|
|
||||||
|
### 🚀 Updated Scripts
|
||||||
|
|
||||||
|
- Alpine-Vaultwarden: Increase min disk requirements to 1GB [@neyzm](https://github.com/neyzm) ([#4764](https://github.com/community-scripts/ProxmoxVE/pull/4764))
|
||||||
|
|
||||||
|
- #### 🐞 Bug Fixes
|
||||||
|
|
||||||
|
- lldap: fix update-check [@MickLesk](https://github.com/MickLesk) ([#4742](https://github.com/community-scripts/ProxmoxVE/pull/4742))
|
||||||
|
|
||||||
|
- #### ✨ New Features
|
||||||
|
|
||||||
|
- Big NodeJS Update: Use Helper Function on all Install-Scripts [@MickLesk](https://github.com/MickLesk) ([#4744](https://github.com/community-scripts/ProxmoxVE/pull/4744))
|
||||||
|
|
||||||
|
- #### 🔧 Refactor
|
||||||
|
|
||||||
|
- merge MariaDB to tools.func Installer [@MickLesk](https://github.com/MickLesk) ([#4753](https://github.com/community-scripts/ProxmoxVE/pull/4753))
|
||||||
|
- merge PostgreSQL to tools.func Installer [@MickLesk](https://github.com/MickLesk) ([#4752](https://github.com/community-scripts/ProxmoxVE/pull/4752))
|
||||||
|
|
||||||
|
### 🌐 Website
|
||||||
|
|
||||||
|
- #### 📝 Script Information
|
||||||
|
|
||||||
|
- Increase default RAM allocation for BunkerWeb to 8192MB [@TheophileDiot](https://github.com/TheophileDiot) ([#4762](https://github.com/community-scripts/ProxmoxVE/pull/4762))
|
||||||
|
|
||||||
## 2025-05-26
|
## 2025-05-26
|
||||||
|
|
||||||
### 🆕 New Scripts
|
### 🆕 New Scripts
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ function update_script() {
|
|||||||
lsb-release \
|
lsb-release \
|
||||||
gpg
|
gpg
|
||||||
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
||||||
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
|
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/php.list
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
$STD apt-get install -y php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,mbstring,mysql,xml,cli,intl}
|
$STD apt-get install -y php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,mbstring,mysql,xml,cli,intl}
|
||||||
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/2fauth.conf
|
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/2fauth.conf
|
||||||
@@ -60,7 +60,7 @@ function update_script() {
|
|||||||
|
|
||||||
# Execute Update
|
# Execute Update
|
||||||
curl -fsSL -o "${RELEASE}.zip" "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip"
|
curl -fsSL -o "${RELEASE}.zip" "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip"
|
||||||
unzip -q "${RELEASE}.zip"
|
$STD unzip "${RELEASE}.zip"
|
||||||
mv "2FAuth-${RELEASE//v/}/" "/opt/2fauth"
|
mv "2FAuth-${RELEASE//v/}/" "/opt/2fauth"
|
||||||
mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
|
mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
|
||||||
mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
|
mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
mv /opt/adventurelog/ /opt/adventurelog-backup/
|
mv /opt/adventurelog/ /opt/adventurelog-backup/
|
||||||
curl -fsSL -o /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
|
curl -fsSL -o /opt/v${RELEASE}.zip "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
|
||||||
unzip -q /opt/v${RELEASE}.zip -d /opt/
|
$STD unzip /opt/v${RELEASE}.zip -d /opt/
|
||||||
mv /opt/AdventureLog-${RELEASE} /opt/adventurelog
|
mv /opt/AdventureLog-${RELEASE} /opt/adventurelog
|
||||||
|
|
||||||
mv /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
|
mv /opt/adventurelog-backup/backend/server/.env /opt/adventurelog/backend/server/.env
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ function update_script() {
|
|||||||
curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
|
curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
|
||||||
mkdir -p /usr/share/nginx/html
|
mkdir -p /usr/share/nginx/html
|
||||||
rm -rf /usr/share/nginx/html/*
|
rm -rf /usr/share/nginx/html/*
|
||||||
unzip -q it-tools.zip -d /tmp/it-tools
|
$STD unzip it-tools.zip -d /tmp/it-tools
|
||||||
cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
|
cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
|
||||||
rm -rf /tmp/it-tools
|
rm -rf /tmp/it-tools
|
||||||
rm -f it-tools.zip
|
rm -f it-tools.zip
|
||||||
|
|||||||
@@ -32,10 +32,6 @@ function update_script() {
|
|||||||
$STD npm install -g --unsafe-perm node-red
|
$STD npm install -g --unsafe-perm node-red
|
||||||
msg_ok "Updated Node-RED"
|
msg_ok "Updated Node-RED"
|
||||||
|
|
||||||
msg_info "Restarting Node-RED"
|
|
||||||
$STD rc-service nodered restart
|
|
||||||
msg_ok "Restarted Node-RED"
|
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
# Copyright (c) 2021-2025 community-scripts ORG
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
# Author: Slaviša Arežina (tremor021)
|
# Author: Slaviša Arežina (tremor021) | Co-Author: Stavros (steveiliop56)
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
# Source: https://github.com/steveiliop56/tinyauth
|
# Source: https://github.com/steveiliop56/tinyauth
|
||||||
|
|
||||||
APP="Alpine-tinyauth"
|
APP="Alpine-Tinyauth"
|
||||||
var_tags="${var_tags:-alpine;auth}"
|
var_tags="${var_tags:-alpine;auth}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-512}"
|
var_ram="${var_ram:-256}"
|
||||||
var_disk="${var_disk:-3}"
|
var_disk="${var_disk:-2}"
|
||||||
var_os="${var_os:-alpine}"
|
var_os="${var_os:-alpine}"
|
||||||
var_version="${var_version:-3.21}"
|
var_version="${var_version:-3.21}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
@@ -25,34 +25,23 @@ function update_script() {
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
msg_info "Updating Alpine Packages"
|
msg_info "Updating packages"
|
||||||
$STD apk -U upgrade
|
$STD apk -U upgrade
|
||||||
msg_ok "Updated Alpine Packages"
|
msg_ok "Updated packages"
|
||||||
|
|
||||||
msg_info "Updating tinyauth"
|
msg_info "Updating Tinyauth"
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
|
|
||||||
if [ "${RELEASE}" != "$(cat /opt/tinyauth_version.txt)" ] || [ ! -f /opt/tinyauth_version.txt ]; then
|
if [ "${RELEASE}" != "$(cat /opt/tinyauth_version.txt)" ] || [ ! -f /opt/tinyauth_version.txt ]; then
|
||||||
$STD service tinyauth stop
|
$STD service tinyauth stop
|
||||||
temp_file=$(mktemp)
|
rm -f /opt/tinyauth/tinyauth
|
||||||
cp /opt/tinyauth/.env /opt
|
curl -fsSL "https://github.com/steveiliop56/tinyauth/releases/download/v${RELEASE}/tinyauth-amd64" -o /opt/tinyauth/tinyauth
|
||||||
rm -rf /opt/tinyauth
|
chmod +x /opt/tinyauth/tinyauth
|
||||||
mkdir -p /opt/tinyauth
|
echo "${RELEASE}" > /opt/tinyauth_version.txt
|
||||||
curl -fsSL "https://github.com/steveiliop56/tinyauth/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
|
msg_info "Restarting Tinyauth"
|
||||||
tar -xzf "$temp_file" -C /opt/tinyauth --strip-components=1
|
|
||||||
cd /opt/tinyauth/frontend
|
|
||||||
$STD bun install
|
|
||||||
$STD bun run build
|
|
||||||
mv dist /opt/tinyauth/internal/assets/
|
|
||||||
cd /opt/tinyauth
|
|
||||||
$STD go mod download
|
|
||||||
CGO_ENABLED=0 go build -ldflags "-s -w"
|
|
||||||
cp /opt/.env /opt/tinyauth
|
|
||||||
echo "${RELEASE}" >/opt/tinyauth_version.txt
|
|
||||||
rm -f "$temp_file"
|
|
||||||
msg_info "Restarting tinyauth"
|
|
||||||
$STD service tinyauth start
|
$STD service tinyauth start
|
||||||
msg_ok "Restarted tinyauth"
|
msg_ok "Restarted Tinyauth"
|
||||||
msg_ok "Updated tinyauth"
|
msg_ok "Updated Tinyauth"
|
||||||
else
|
else
|
||||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ APP="Alpine-Vaultwarden"
|
|||||||
var_tags="${var_tags:-alpine;vault}"
|
var_tags="${var_tags:-alpine;vault}"
|
||||||
var_cpu="${var_cpu:-1}"
|
var_cpu="${var_cpu:-1}"
|
||||||
var_ram="${var_ram:-256}"
|
var_ram="${var_ram:-256}"
|
||||||
var_disk="${var_disk:-0.5}"
|
var_disk="${var_disk:-1}"
|
||||||
var_os="${var_os:-alpine}"
|
var_os="${var_os:-alpine}"
|
||||||
var_version="${var_version:-3.21}"
|
var_version="${var_version:-3.21}"
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
@@ -66,4 +66,4 @@ description
|
|||||||
|
|
||||||
msg_ok "Completed Successfully!\n"
|
msg_ok "Completed Successfully!\n"
|
||||||
echo -e "${APP} should be reachable by going to the following URL.
|
echo -e "${APP} should be reachable by going to the following URL.
|
||||||
${BL}http://${IP}:8000${CL} \n"
|
${BL}https://${IP}:8000${CL} \n"
|
||||||
|
|||||||
66
ct/backrest.sh
Normal file
66
ct/backrest.sh
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: ksad (enirys31)
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://garethgeorge.github.io/backrest/
|
||||||
|
|
||||||
|
APP="Backrest"
|
||||||
|
var_tags="${var_tags:-backup}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-512}"
|
||||||
|
var_disk="${var_disk:-8}"
|
||||||
|
var_os="${var_os:-debian}"
|
||||||
|
var_version="${var_version:-12}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
if [[ ! -d /opt/backrest ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
RELEASE=$(curl -fsSL https://api.github.com/repos/garethgeorge/backrest/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 ${APP}"
|
||||||
|
systemctl stop backrest
|
||||||
|
msg_ok "Stopped ${APP}"
|
||||||
|
|
||||||
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
|
temp_file=$(mktemp)
|
||||||
|
rm -f /opt/backrest/bin/backrest
|
||||||
|
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
|
||||||
|
tar xzf $temp_file -C /opt/backrest/bin
|
||||||
|
chmod +x /opt/backrest/bin/backrest
|
||||||
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||||
|
|
||||||
|
msg_info "Starting ${APP}"
|
||||||
|
systemctl start backrest
|
||||||
|
msg_ok "Started ${APP}"
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f "$temp_file"
|
||||||
|
msg_ok "Cleaned up"
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
else
|
||||||
|
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9898${CL}"
|
||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip")
|
curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip")
|
||||||
mv /opt/baikal /opt/baikal-backup
|
mv /opt/baikal /opt/baikal-backup
|
||||||
unzip -o -q "baikal-${RELEASE}.zip"
|
$STD unzip -o "baikal-${RELEASE}.zip"
|
||||||
cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/
|
cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/
|
||||||
cp -r /opt/baikal-backup/Specific/ /opt/baikal/
|
cp -r /opt/baikal-backup/Specific/ /opt/baikal/
|
||||||
chown -R www-data:www-data /opt/baikal/
|
chown -R www-data:www-data /opt/baikal/
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/barcodebuddy/ /opt/barcodebuddy-backup
|
mv /opt/barcodebuddy/ /opt/barcodebuddy-backup
|
||||||
curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q "v${RELEASE}.zip"
|
$STD unzip "v${RELEASE}.zip"
|
||||||
mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy
|
mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy
|
||||||
cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data
|
cp -r /opt/barcodebuddy-backup/data/. /opt/barcodebuddy/data
|
||||||
chown -R www-data:www-data /opt/barcodebuddy/data
|
chown -R www-data:www-data /opt/barcodebuddy/data
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP} to v${RELEASE}"
|
msg_info "Updating ${APP} to v${RELEASE}"
|
||||||
mv /opt/bookstack /opt/bookstack-backup
|
mv /opt/bookstack /opt/bookstack-backup
|
||||||
curl -fsSL "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -o "/opt/BookStack-${RELEASE}.zip"
|
curl -fsSL "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip" -o "/opt/BookStack-${RELEASE}.zip"
|
||||||
unzip -q "/opt/BookStack-${RELEASE}.zip" -d /opt
|
$STD unzip "/opt/BookStack-${RELEASE}.zip" -d /opt
|
||||||
mv "/opt/BookStack-${RELEASE}" /opt/bookstack
|
mv "/opt/BookStack-${RELEASE}" /opt/bookstack
|
||||||
cp /opt/bookstack-backup/.env /opt/bookstack/.env
|
cp /opt/bookstack-backup/.env /opt/bookstack/.env
|
||||||
[[ -d /opt/bookstack-backup/public/uploads ]] && cp -a /opt/bookstack-backup/public/uploads/. /opt/bookstack/public/uploads/
|
[[ -d /opt/bookstack-backup/public/uploads ]] && cp -a /opt/bookstack-backup/public/uploads/. /opt/bookstack/public/uploads/
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
|||||||
APP="BunkerWeb"
|
APP="BunkerWeb"
|
||||||
var_tags="${var_tags:-webserver}"
|
var_tags="${var_tags:-webserver}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-4096}"
|
var_ram="${var_ram:-8192}"
|
||||||
var_disk="${var_disk:-4}"
|
var_disk="${var_disk:-4}"
|
||||||
var_os="${var_os:-debian}"
|
var_os="${var_os:-debian}"
|
||||||
var_version="${var_version:-12}"
|
var_version="${var_version:-12}"
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ function update_script() {
|
|||||||
|
|
||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -o $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip")
|
curl -fsSL "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip" -o $(basename "https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip")
|
||||||
unzip -q commafeed-"${RELEASE}"-h2-jvm.zip
|
$STD unzip commafeed-"${RELEASE}"-h2-jvm.zip
|
||||||
rsync -a --exclude 'data/' commafeed-"${RELEASE}"-h2/ /opt/commafeed/
|
rsync -a --exclude 'data/' commafeed-"${RELEASE}"-h2/ /opt/commafeed/
|
||||||
rm -rf commafeed-"${RELEASE}"-h2 commafeed-"${RELEASE}"-h2-jvm.zip
|
rm -rf commafeed-"${RELEASE}"-h2 commafeed-"${RELEASE}"-h2-jvm.zip
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ function update_script() {
|
|||||||
|
|
||||||
msg_info "Updating Crafty-Controller to v${RELEASE}"
|
msg_info "Updating Crafty-Controller to v${RELEASE}"
|
||||||
curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -o $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip")
|
curl -fsSL "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip" -o $(basename "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip")
|
||||||
unzip -q crafty-4-v${RELEASE}.zip
|
$STD unzip crafty-4-v${RELEASE}.zip
|
||||||
cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/
|
cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/
|
||||||
rm -rf crafty-4-v${RELEASE}
|
rm -rf crafty-4-v${RELEASE}
|
||||||
cd /opt/crafty-controller/crafty/crafty-4
|
cd /opt/crafty-controller/crafty/crafty-4
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ function update_script() {
|
|||||||
rm -rf /opt/documenso
|
rm -rf /opt/documenso
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
|
curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
mv documenso-${RELEASE} /opt/documenso
|
mv documenso-${RELEASE} /opt/documenso
|
||||||
cd /opt/documenso
|
cd /opt/documenso
|
||||||
mv /opt/.env /opt/documenso/.env
|
mv /opt/.env /opt/documenso/.env
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ function update_script() {
|
|||||||
msg_info "Updating $APP to latest version"
|
msg_info "Updating $APP to latest version"
|
||||||
temp_file=$(mktemp)
|
temp_file=$(mktemp)
|
||||||
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
|
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
|
||||||
unzip -oq -d /opt/fileflows "$temp_file"
|
$STD unzip -o -d /opt/fileflows "$temp_file"
|
||||||
msg_ok "Updated $APP to latest version"
|
msg_ok "Updated $APP to latest version"
|
||||||
|
|
||||||
msg_info "Starting $APP"
|
msg_info "Starting $APP"
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ function update_script() {
|
|||||||
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)
|
tmp_file=$(mktemp)
|
||||||
curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
|
curl -fsSL "https://github.com/dotnetfactory/fluid-calendar/archive/refs/tags/v${RELEASE}.zip" -o "$tmp_file"
|
||||||
unzip -q $tmp_file
|
$STD unzip $tmp_file
|
||||||
mv ${APP}-${RELEASE}/ /opt/fluid-calendar
|
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
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
cd /opt/gotify
|
cd /opt/gotify
|
||||||
curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -o $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip")
|
curl -fsSL "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip" -o $(basename "https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip")
|
||||||
unzip -oq gotify-linux-amd64.zip
|
$STD unzip -o gotify-linux-amd64.zip
|
||||||
rm -rf gotify-linux-amd64.zip
|
rm -rf gotify-linux-amd64.zip
|
||||||
chmod +x gotify-linux-amd64
|
chmod +x gotify-linux-amd64
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
rm -rf grist_bak
|
rm -rf grist_bak
|
||||||
mv grist grist_bak
|
mv grist grist_bak
|
||||||
curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q v$RELEASE.zip
|
$STD unzip v$RELEASE.zip
|
||||||
mv grist-core-${RELEASE} grist
|
mv grist-core-${RELEASE} grist
|
||||||
|
|
||||||
mkdir -p grist/docs
|
mkdir -p grist/docs
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
___ __ _ __ _ __ __
|
___ __ _ _______ __ __
|
||||||
/ | / /___ (_)___ ___ / /_(_)___ __ ______ ___ __/ /_/ /_
|
/ | / /___ (_)___ ___ /_ __(_)___ __ ______ ___ __/ /_/ /_
|
||||||
/ /| | / / __ \/ / __ \/ _ \______/ __/ / __ \/ / / / __ `/ / / / __/ __ \
|
/ /| | / / __ \/ / __ \/ _ \______/ / / / __ \/ / / / __ `/ / / / __/ __ \
|
||||||
/ ___ |/ / /_/ / / / / / __/_____/ /_/ / / / / /_/ / /_/ / /_/ / /_/ / / /
|
/ ___ |/ / /_/ / / / / / __/_____/ / / / / / / /_/ / /_/ / /_/ / /_/ / / /
|
||||||
/_/ |_/_/ .___/_/_/ /_/\___/ \__/_/_/ /_/\__, /\__,_/\__,_/\__/_/ /_/
|
/_/ |_/_/ .___/_/_/ /_/\___/ /_/ /_/_/ /_/\__, /\__,_/\__,_/\__/_/ /_/
|
||||||
/_/ /____/
|
/_/ /____/
|
||||||
|
|||||||
6
ct/headers/backrest
Normal file
6
ct/headers/backrest
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
____ __ __
|
||||||
|
/ __ )____ ______/ /__________ _____/ /_
|
||||||
|
/ __ / __ `/ ___/ //_/ ___/ _ \/ ___/ __/
|
||||||
|
/ /_/ / /_/ / /__/ ,< / / / __(__ ) /_
|
||||||
|
/_____/\__,_/\___/_/|_/_/ \___/____/\__/
|
||||||
|
|
||||||
6
ct/headers/oauth2-proxy
Normal file
6
ct/headers/oauth2-proxy
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
__ __ ___
|
||||||
|
____ ____ ___ __/ /_/ /_ |__ \ ____ _________ _ ____ __
|
||||||
|
/ __ \/ __ `/ / / / __/ __ \__/ /_____/ __ \/ ___/ __ \| |/_/ / / /
|
||||||
|
/ /_/ / /_/ / /_/ / /_/ / / / __/_____/ /_/ / / / /_/ /> </ /_/ /
|
||||||
|
\____/\__,_/\__,_/\__/_/ /_/____/ / .___/_/ \____/_/|_|\__, /
|
||||||
|
/_/ /____/
|
||||||
6
ct/headers/pulse
Normal file
6
ct/headers/pulse
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
____ __
|
||||||
|
/ __ \__ __/ /_______
|
||||||
|
/ /_/ / / / / / ___/ _ \
|
||||||
|
/ ____/ /_/ / (__ ) __/
|
||||||
|
/_/ \__,_/_/____/\___/
|
||||||
|
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
__ __ __ __
|
|
||||||
/ / / /___ ___ / /_ ________ / /
|
|
||||||
/ / / / __ `__ \/ __ \/ ___/ _ \/ /
|
|
||||||
/ /_/ / / / / / / /_/ / / / __/ /
|
|
||||||
\____/_/ /_/ /_/_.___/_/ \___/_/
|
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
rm -rf /opt/hoarder
|
rm -rf /opt/hoarder
|
||||||
curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
curl -fsSL "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
||||||
unzip -q v"${RELEASE}".zip
|
$STD unzip v"${RELEASE}".zip
|
||||||
mv karakeep-"${RELEASE}" /opt/hoarder
|
mv karakeep-"${RELEASE}" /opt/hoarder
|
||||||
cd /opt/hoarder/apps/web
|
cd /opt/hoarder/apps/web
|
||||||
$STD pnpm install --frozen-lockfile
|
$STD pnpm install --frozen-lockfile
|
||||||
|
|||||||
@@ -104,7 +104,6 @@ function update_script() {
|
|||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
msg_info "Installing Home Assistant Community Store (HACS)"
|
msg_info "Installing Home Assistant Community Store (HACS)"
|
||||||
$STD apt update
|
$STD apt update
|
||||||
$STD apt install -y unzip
|
|
||||||
cd /root/.homeassistant
|
cd /root/.homeassistant
|
||||||
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
||||||
msg_ok "Installed Home Assistant Community Store (HACS)"
|
msg_ok "Installed Home Assistant Community Store (HACS)"
|
||||||
|
|||||||
@@ -62,7 +62,6 @@ function update_script() {
|
|||||||
if [ "$UPD" == "3" ]; then
|
if [ "$UPD" == "3" ]; then
|
||||||
msg_info "Installing Home Assistant Community Store (HACS)"
|
msg_info "Installing Home Assistant Community Store (HACS)"
|
||||||
$STD apt update
|
$STD apt update
|
||||||
$STD apt install unzip
|
|
||||||
cd /var/lib/docker/volumes/hass_config/_data
|
cd /var/lib/docker/volumes/hass_config/_data
|
||||||
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
||||||
msg_ok "Installed Home Assistant Community Store (HACS)"
|
msg_ok "Installed Home Assistant Community Store (HACS)"
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ function update_script() {
|
|||||||
fi
|
fi
|
||||||
rm -rf /opt/karakeep
|
rm -rf /opt/karakeep
|
||||||
curl -fsSL "https://github.com/karakeep-app/karakeep/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
curl -fsSL "https://github.com/karakeep-app/karakeep/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
||||||
unzip -q "v${RELEASE}.zip"
|
$STD unzip "v${RELEASE}.zip"
|
||||||
mv karakeep-"${RELEASE}" /opt/karakeep
|
mv karakeep-"${RELEASE}" /opt/karakeep
|
||||||
cd /opt/karakeep/apps/web
|
cd /opt/karakeep/apps/web
|
||||||
$STD pnpm install --frozen-lockfile
|
$STD pnpm install --frozen-lockfile
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ function update_script() {
|
|||||||
trap "echo Unable to download release file for version ${RELEASE}; try again later" ERR
|
trap "echo Unable to download release file for version ${RELEASE}; try again later" ERR
|
||||||
set -e
|
set -e
|
||||||
curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q "${RELEASE}".zip
|
$STD unzip "${RELEASE}".zip
|
||||||
set +e
|
set +e
|
||||||
trap - ERR
|
trap - ERR
|
||||||
rm -rf /opt/kimai
|
rm -rf /opt/kimai
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/koillection/ /opt/koillection-backup
|
mv /opt/koillection/ /opt/koillection-backup
|
||||||
curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/benjaminjonard/koillection/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q "${RELEASE}.zip"
|
$STD unzip "${RELEASE}.zip"
|
||||||
mv "/opt/koillection-${RELEASE}" /opt/koillection
|
mv "/opt/koillection-${RELEASE}" /opt/koillection
|
||||||
cd /opt/koillection
|
cd /opt/koillection
|
||||||
cp -r /opt/koillection-backup/.env.local /opt/koillection
|
cp -r /opt/koillection-backup/.env.local /opt/koillection
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
# Copyright (c) 2021-2025 tteck
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
# Author: tteck (tteckster)
|
# Author: MickLesk (CanbiZ)
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
# Source: https://linkwarden.app/
|
# Source: https://linkwarden.app/
|
||||||
|
|
||||||
APP="Linkwarden"
|
APP="Linkwarden"
|
||||||
var_tags="${var_tags:-bookmark}"
|
var_tags="${var_tags:-bookmark}"
|
||||||
var_cpu="${var_cpu:-2}"
|
var_cpu="${var_cpu:-2}"
|
||||||
var_ram="${var_ram:-2048}"
|
var_ram="${var_ram:-4096}"
|
||||||
var_disk="${var_disk:-12}"
|
var_disk="${var_disk:-12}"
|
||||||
var_os="${var_os:-ubuntu}"
|
var_os="${var_os:-ubuntu}"
|
||||||
var_version="${var_version:-22.04}"
|
var_version="${var_version:-24.04}"
|
||||||
|
|
||||||
header_info "$APP"
|
header_info "$APP"
|
||||||
variables
|
variables
|
||||||
@@ -27,48 +27,36 @@ function update_script() {
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
if [[ "${RELEASE}" != "$(cat /opt/linkwarden_version.txt)" ]] || [[ ! -f /opt/linkwarden_version.txt ]]; then
|
||||||
NODE_VERSION="22"
|
NODE_VERSION="22" NODE_MODULE="yarn@latest" install_node_and_modules
|
||||||
NODE_MODULE="yarn@latest"
|
|
||||||
install_node_and_modules
|
|
||||||
|
|
||||||
msg_info "Stopping ${APP}"
|
msg_info "Stopping ${APP}"
|
||||||
systemctl stop linkwarden
|
systemctl stop linkwarden
|
||||||
msg_ok "Stopped ${APP}"
|
msg_ok "Stopped ${APP}"
|
||||||
|
|
||||||
msg_info "Updating Rust"
|
RUST_CRATES="monolith" install_rust_and_crates
|
||||||
$STD apt-get install -y build-essential
|
|
||||||
$STD curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
||||||
source $HOME/.cargo/env
|
|
||||||
echo 'export PATH=/usr/local/cargo/bin:$PATH' >>/etc/profile
|
|
||||||
source /etc/profile
|
|
||||||
$STD cargo install monolith
|
|
||||||
msg_ok "Updated Rust"
|
|
||||||
|
|
||||||
msg_info "Updating ${APP} to ${RELEASE}"
|
msg_info "Updating ${APP} to ${RELEASE}"
|
||||||
cd /opt
|
|
||||||
mv /opt/linkwarden/.env /opt/.env
|
mv /opt/linkwarden/.env /opt/.env
|
||||||
rm -rf /opt/linkwarden
|
rm -rf /opt/linkwarden
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
fetch_and_deploy_gh_release "linkwarden/linkwarden"
|
||||||
curl -fsSL "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip" -o ${RELEASE}.zip
|
|
||||||
unzip -q ${RELEASE}.zip
|
|
||||||
mv linkwarden-${RELEASE:1} /opt/linkwarden
|
|
||||||
cd /opt/linkwarden
|
cd /opt/linkwarden
|
||||||
$STD yarn
|
$STD yarn
|
||||||
$STD npx playwright install-deps
|
$STD npx playwright install-deps
|
||||||
$STD yarn playwright install
|
$STD yarn playwright install
|
||||||
cp /opt/.env /opt/linkwarden/.env
|
mv /opt/.env /opt/linkwarden/.env
|
||||||
$STD yarn prisma:generate
|
$STD yarn prisma:generate
|
||||||
$STD yarn web:build
|
$STD yarn web:build
|
||||||
$STD yarn prisma:deploy
|
$STD yarn prisma:deploy
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
|
||||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||||
|
|
||||||
msg_info "Starting ${APP}"
|
msg_info "Starting ${APP}"
|
||||||
systemctl start linkwarden
|
systemctl start linkwarden
|
||||||
msg_ok "Started ${APP}"
|
msg_ok "Started ${APP}"
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
rm -rf /opt/${RELEASE}.zip
|
rm -rf ~/.cargo/registry ~/.cargo/git ~/.cargo/.package-cache ~/.rustup
|
||||||
|
rm -rf /root/.cache/yarn
|
||||||
|
rm -rf /opt/linkwarden/.next/cache
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ function update_script() {
|
|||||||
header_info
|
header_info
|
||||||
check_container_storage
|
check_container_storage
|
||||||
check_container_resources
|
check_container_resources
|
||||||
if [[ ! -f /etc/systemd/system/lldap.service ]]; then
|
if [[ ! -f /lib/systemd/system/lldap.service ]]; then
|
||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ function update_script() {
|
|||||||
[[ -e /opt/lubelogger/wwwroot/temp ]] && cp -r /opt/lubelogger/wwwroot/temp /tmp/lubeloggerData/data/
|
[[ -e /opt/lubelogger/wwwroot/temp ]] && cp -r /opt/lubelogger/wwwroot/temp /tmp/lubeloggerData/data/
|
||||||
[[ -e /opt/lubelogger/log ]] && cp -r /opt/lubelogger/log /tmp/lubeloggerData/
|
[[ -e /opt/lubelogger/log ]] && cp -r /opt/lubelogger/log /tmp/lubeloggerData/
|
||||||
rm -rf /opt/lubelogger
|
rm -rf /opt/lubelogger
|
||||||
unzip -qq LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip -d lubelogger
|
$STD unzip LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip -d lubelogger
|
||||||
chmod 700 /opt/lubelogger/CarCareTracker
|
chmod 700 /opt/lubelogger/CarCareTracker
|
||||||
cp -rf /tmp/lubeloggerData/* /opt/lubelogger/
|
cp -rf /tmp/lubeloggerData/* /opt/lubelogger/
|
||||||
echo "${RELEASE}" >"/opt/${APP}_version.txt"
|
echo "${RELEASE}" >"/opt/${APP}_version.txt"
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ function update_script() {
|
|||||||
rm -rf /opt/meilisearch-ui
|
rm -rf /opt/meilisearch-ui
|
||||||
mkdir -p /opt/meilisearch-ui
|
mkdir -p /opt/meilisearch-ui
|
||||||
curl -fsSL "https://github.com/riccox/meilisearch-ui/archive/refs/tags/${RELEASE_UI}.zip" -o $tmp_file
|
curl -fsSL "https://github.com/riccox/meilisearch-ui/archive/refs/tags/${RELEASE_UI}.zip" -o $tmp_file
|
||||||
unzip -q "$tmp_file" -d "$tmp_dir"
|
$STD unzip "$tmp_file" -d "$tmp_dir"
|
||||||
mv "$tmp_dir"/*/* /opt/meilisearch-ui/
|
mv "$tmp_dir"/*/* /opt/meilisearch-ui/
|
||||||
cd /opt/meilisearch-ui
|
cd /opt/meilisearch-ui
|
||||||
sed -i 's|const hash = execSync("git rev-parse HEAD").toString().trim();|const hash = "unknown";|' /opt/meilisearch-ui/vite.config.ts
|
sed -i 's|const hash = execSync("git rev-parse HEAD").toString().trim();|const hash = "unknown";|' /opt/meilisearch-ui/vite.config.ts
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
rm -rf myspeed_bak
|
rm -rf myspeed_bak
|
||||||
mv myspeed myspeed_bak
|
mv myspeed myspeed_bak
|
||||||
curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -o $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip")
|
curl -fsSL "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip" -o $(basename "https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip")
|
||||||
unzip -q MySpeed-$RELEASE.zip -d myspeed
|
$STD unzip MySpeed-$RELEASE.zip -d myspeed
|
||||||
cd myspeed
|
cd myspeed
|
||||||
$STD npm install
|
$STD npm install
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
mv /opt/netbox/ /opt/netbox-backup
|
mv /opt/netbox/ /opt/netbox-backup
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/netbox-community/netbox/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q "v${RELEASE}.zip"
|
$STD unzip "v${RELEASE}.zip"
|
||||||
mv /opt/netbox-${RELEASE}/ /opt/netbox/
|
mv /opt/netbox-${RELEASE}/ /opt/netbox/
|
||||||
|
|
||||||
cp -r /opt/netbox-backup/netbox/netbox/configuration.py /opt/netbox/netbox/netbox/
|
cp -r /opt/netbox-backup/netbox/netbox/configuration.py /opt/netbox/netbox/netbox/
|
||||||
|
|||||||
64
ct/oauth2-proxy.sh
Normal file
64
ct/oauth2-proxy.sh
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: bvdberg01
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://github.com/oauth2-proxy/oauth2-proxy/
|
||||||
|
|
||||||
|
APP="oauth2-proxy"
|
||||||
|
var_tags="${var_tags:-os}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-512}"
|
||||||
|
var_disk="${var_disk:-3}"
|
||||||
|
var_os="${var_os:-debian}"
|
||||||
|
var_version="${var_version:-12}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
|
||||||
|
if [[ ! -d /opt/oauth2-proxy ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
RELEASE=$(curl -fsSL https://api.github.com/repos/oauth2-proxy/oauth2-proxy/releases/latest | jq -r .tag_name | sed 's/^v//')
|
||||||
|
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||||
|
msg_info "Stopping ${APP} services"
|
||||||
|
systemctl stop oauth2-proxy
|
||||||
|
msg_ok "Stopped ${APP}"
|
||||||
|
|
||||||
|
msg_info "Updating $APP to ${RELEASE}"
|
||||||
|
rm -f /opt/oauth2-proxy/oauth2-proxy
|
||||||
|
curl -fsSL "https://github.com/oauth2-proxy/oauth2-proxy/releases/download/v${RELEASE}/oauth2-proxy-v${RELEASE}.linux-amd64.tar.gz" -o /opt/oauth2-proxy.tar.gz
|
||||||
|
tar -xzf /opt/oauth2-proxy.tar.gz
|
||||||
|
mv /opt/oauth2-proxy-v${RELEASE}.linux-amd64/oauth2-proxy /opt/oauth2-proxy
|
||||||
|
systemctl start oauth2-proxy
|
||||||
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f "/opt/oauth2-proxy.tar.gz"
|
||||||
|
rm -rf "/opt/oauth2-proxy-v${RELEASE}.linux-amd64"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
else
|
||||||
|
msg_ok "${APP} is already up to date (${RELEASE})"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Now you can modify /opt/oauth2-proxy/config.toml with your needed config.${CL}"
|
||||||
@@ -40,7 +40,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/paperless-ai /opt/paperless-ai_bak
|
mv /opt/paperless-ai /opt/paperless-ai_bak
|
||||||
curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/clusterzx/paperless-ai/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
mv paperless-ai-${RELEASE} /opt/paperless-ai
|
mv paperless-ai-${RELEASE} /opt/paperless-ai
|
||||||
mkdir -p /opt/paperless-ai/data
|
mkdir -p /opt/paperless-ai/data
|
||||||
cp -a /opt/paperless-ai_bak/data/. /opt/paperless-ai/data/
|
cp -a /opt/paperless-ai_bak/data/. /opt/paperless-ai/data/
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/partdb/ /opt/partdb-backup
|
mv /opt/partdb/ /opt/partdb-backup
|
||||||
curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Part-DB/Part-DB-server/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q "v${RELEASE}.zip"
|
$STD unzip "v${RELEASE}.zip"
|
||||||
mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb
|
mv /opt/Part-DB-server-${RELEASE}/ /opt/partdb
|
||||||
|
|
||||||
cd /opt/partdb/
|
cd /opt/partdb/
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ function update_script() {
|
|||||||
msg_info "Updating $APP"
|
msg_info "Updating $APP"
|
||||||
systemctl stop petio.service
|
systemctl stop petio.service
|
||||||
curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip
|
curl -fsSL https://petio.tv/releases/latest -o petio-latest.zip
|
||||||
unzip petio-latest.zip -d /opt/Petio
|
$STD unzip petio-latest.zip -d /opt/Petio
|
||||||
systemctl start petio.service
|
systemctl start petio.service
|
||||||
msg_ok "Updated $APP"
|
msg_ok "Updated $APP"
|
||||||
exit
|
exit
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Pf2eToolsOrg/Pf2eTools/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q ${RELEASE}.zip
|
$STD unzip ${RELEASE}.zip
|
||||||
rm -rf "/opt/${APP}"
|
rm -rf "/opt/${APP}"
|
||||||
mv ${APP}-${RELEASE:1} /opt/${APP}
|
mv ${APP}-${RELEASE:1} /opt/${APP}
|
||||||
cd /opt/Pf2eTools
|
cd /opt/Pf2eTools
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/phpipam/ /opt/phpipam-backup
|
mv /opt/phpipam/ /opt/phpipam-backup
|
||||||
curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -o $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip")
|
curl -fsSL "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip" -o $(basename "https://github.com/phpipam/phpipam/releases/download/v${RELEASE}/phpipam-v${RELEASE}.zip")
|
||||||
unzip -q "phpipam-v${RELEASE}.zip"
|
$STD unzip "phpipam-v${RELEASE}.zip"
|
||||||
cp /opt/phpipam-backup/config.php /opt/phpipam
|
cp /opt/phpipam-backup/config.php /opt/phpipam
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
msg_ok "Updated $APP to v${RELEASE}"
|
msg_ok "Updated $APP to v${RELEASE}"
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ function update_script() {
|
|||||||
msg_info "Updating Pingvin Share to v${RELEASE}"
|
msg_info "Updating Pingvin Share to v${RELEASE}"
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/stonith404/pingvin-share/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share
|
cp -rf pingvin-share-${RELEASE}/* /opt/pingvin-share
|
||||||
cd /opt/pingvin-share
|
cd /opt/pingvin-share
|
||||||
cd backend
|
cd backend
|
||||||
|
|||||||
@@ -58,7 +58,6 @@ function update_script() {
|
|||||||
if [ "$UPD" == "2" ]; then
|
if [ "$UPD" == "2" ]; then
|
||||||
msg_info "Installing Home Assistant Community Store (HACS)"
|
msg_info "Installing Home Assistant Community Store (HACS)"
|
||||||
$STD apt update
|
$STD apt update
|
||||||
$STD apt install unzip
|
|
||||||
cd /var/lib/containers/storage/volumes/hass_config/_data
|
cd /var/lib/containers/storage/volumes/hass_config/_data
|
||||||
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
$STD bash <(curl -fsSL https://get.hacs.xyz)
|
||||||
msg_ok "Installed Home Assistant Community Store (HACS)"
|
msg_ok "Installed Home Assistant Community Store (HACS)"
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ function update_script() {
|
|||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak
|
cp -f /opt/privatebin/cfg/conf.php /tmp/privatebin_conf.bak
|
||||||
curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/PrivateBin/PrivateBin/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q ${RELEASE}.zip
|
$STD unzip ${RELEASE}.zip
|
||||||
rm -rf /opt/privatebin/*
|
rm -rf /opt/privatebin/*
|
||||||
mv PrivateBin-${RELEASE}/* /opt/privatebin/
|
mv PrivateBin-${RELEASE}/* /opt/privatebin/
|
||||||
mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php
|
mv /tmp/privatebin_conf.bak /opt/privatebin/cfg/conf.php
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP} to v${RELEASE}"
|
msg_info "Updating ${APP} to v${RELEASE}"
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -o $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip")
|
curl -fsSL "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip" -o $(basename "https://github.com/projectsend/projectsend/releases/download/r${RELEASE}/projectsend-r${RELEASE}.zip")
|
||||||
unzip -o -q "projectsend-r${RELEASE}.zip" -d projectsend
|
$STD unzip -o "projectsend-r${RELEASE}.zip" -d projectsend
|
||||||
chown -R www-data:www-data /opt/projectsend
|
chown -R www-data:www-data /opt/projectsend
|
||||||
chmod -R 775 /opt/projectsend
|
chmod -R 775 /opt/projectsend
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
|||||||
73
ct/pulse.sh
Normal file
73
ct/pulse.sh
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: rcourtman
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://github.com/rcourtman/Pulse
|
||||||
|
|
||||||
|
APP="Pulse"
|
||||||
|
var_tags="${var_tags:-monitoring,proxmox}"
|
||||||
|
var_cpu="${var_cpu:-1}"
|
||||||
|
var_ram="${var_ram:-1024}"
|
||||||
|
var_disk="${var_disk:-4}"
|
||||||
|
var_os="${var_os:-debian}"
|
||||||
|
var_version="${var_version:-12}"
|
||||||
|
var_unprivileged="${var_unprivileged:-1}"
|
||||||
|
|
||||||
|
header_info "$APP"
|
||||||
|
variables
|
||||||
|
color
|
||||||
|
catch_errors
|
||||||
|
|
||||||
|
function update_script() {
|
||||||
|
header_info
|
||||||
|
check_container_storage
|
||||||
|
check_container_resources
|
||||||
|
if [[ ! -d /opt/pulse-proxmox ]]; then
|
||||||
|
msg_error "No ${APP} Installation Found!"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
RELEASE=$(curl -fsSL https://api.github.com/repos/rcourtman/Pulse/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 ${APP}"
|
||||||
|
systemctl stop pulse-monitor
|
||||||
|
msg_ok "Stopped ${APP}"
|
||||||
|
|
||||||
|
msg_info "Updating Pulse"
|
||||||
|
if [[ -f /opt/pulse-proxmox/.env ]]; then
|
||||||
|
cp /opt/pulse-proxmox/.env /tmp/.env.backup.pulse
|
||||||
|
fi
|
||||||
|
temp_file=$(mktemp)
|
||||||
|
mkdir -p /opt/pulse-proxmox
|
||||||
|
rm -rf /opt/pulse-proxmox/*
|
||||||
|
curl -fsSL "https://github.com/rcourtman/Pulse/releases/download/v${RELEASE}/pulse-v${RELEASE}.tar.gz" -o "$temp_file"
|
||||||
|
tar zxf "$temp_file" --strip-components=1 -C /opt/pulse-proxmox
|
||||||
|
if [[ -f /tmp/.env.backup.pulse ]]; then
|
||||||
|
mv /tmp/.env.backup.pulse /opt/pulse-proxmox/.env
|
||||||
|
fi
|
||||||
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
msg_ok "Updated Pulse to ${RELEASE}"
|
||||||
|
|
||||||
|
msg_info "Setting permissions for /opt/pulse-proxmox..."
|
||||||
|
chown -R pulse:pulse "/opt/pulse-proxmox"
|
||||||
|
find "/opt/pulse-proxmox" -type d -exec chmod 755 {} \;
|
||||||
|
find "/opt/pulse-proxmox" -type f -exec chmod 644 {} \;
|
||||||
|
chmod 600 /opt/pulse-proxmox/.env
|
||||||
|
msg_ok "Set permissions."
|
||||||
|
|
||||||
|
msg_info "Starting ${APP}"
|
||||||
|
systemctl start pulse-monitor
|
||||||
|
msg_ok "Started ${APP}"
|
||||||
|
else
|
||||||
|
msg_ok "No update required. ${APP} is already at ${RELEASE}."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||||
|
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
||||||
|
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}(:your_port)${CL}"
|
||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
mkdir -p rdtc-backup
|
mkdir -p rdtc-backup
|
||||||
cp -R /opt/rdtc/appsettings.json rdtc-backup/
|
cp -R /opt/rdtc/appsettings.json rdtc-backup/
|
||||||
curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -o $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip")
|
curl -fsSL "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip" -o $(basename "https://github.com/rogerfar/rdt-client/releases/latest/download/RealDebridClient.zip")
|
||||||
unzip -oqq RealDebridClient.zip -d /opt/rdtc
|
$STD unzip -o RealDebridClient.zip -d /opt/rdtc
|
||||||
cp -R rdtc-backup/appsettings.json /opt/rdtc/
|
cp -R rdtc-backup/appsettings.json /opt/rdtc/
|
||||||
msg_ok "Updated ${APP}"
|
msg_ok "Updated ${APP}"
|
||||||
|
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
res_tmp=$(mktemp)
|
res_tmp=$(mktemp)
|
||||||
rm -rf /opt/${APP}
|
rm -rf /opt/${APP}
|
||||||
curl -fsSL "https://github.com/AmruthPillai/Reactive-Resume/archive/refs/tags/v${RELEASE}.zip" -O $res_tmp
|
curl -fsSL "https://github.com/AmruthPillai/Reactive-Resume/archive/refs/tags/v${RELEASE}.zip" -O $res_tmp
|
||||||
unzip -q $res_tmp
|
$STD unzip $res_tmp
|
||||||
mv ${APP}-${RELEASE}/ /opt/${APP}
|
mv ${APP}-${RELEASE}/ /opt/${APP}
|
||||||
cd /opt/${APP}
|
cd /opt/${APP}
|
||||||
export PUPPETEER_SKIP_DOWNLOAD="true"
|
export PUPPETEER_SKIP_DOWNLOAD="true"
|
||||||
@@ -66,7 +66,7 @@ function update_script() {
|
|||||||
brwsr_tmp=$(mktemp)
|
brwsr_tmp=$(mktemp)
|
||||||
TAG=$(curl -fsSL https://api.github.com/repos/browserless/browserless/tags?per_page=1 | grep "name" | awk '{print substr($2, 3, length($2)-4) }')
|
TAG=$(curl -fsSL https://api.github.com/repos/browserless/browserless/tags?per_page=1 | grep "name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
curl -fsSL https://github.com/browserless/browserless/archive/refs/tags/v${TAG}.zip -O $brwsr_tmp
|
curl -fsSL https://github.com/browserless/browserless/archive/refs/tags/v${TAG}.zip -O $brwsr_tmp
|
||||||
unzip -q $brwsr_tmp
|
$STD unzip $brwsr_tmp
|
||||||
mv browserless-${TAG}/ /opt/browserless
|
mv browserless-${TAG}/ /opt/browserless
|
||||||
cd /opt/browserless
|
cd /opt/browserless
|
||||||
$STD npm install
|
$STD npm install
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ function update_script() {
|
|||||||
|
|
||||||
msg_info "Updating ${APP} to v${RELEASE}"
|
msg_info "Updating ${APP} to v${RELEASE}"
|
||||||
curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -o $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip")
|
curl -fsSL "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip" -o $(basename "https://github.com/silverbulletmd/silverbullet/releases/download/${RELEASE}/silverbullet-server-linux-x86_64.zip")
|
||||||
unzip -q silverbullet-server-linux-x86_64.zip
|
$STD unzip silverbullet-server-linux-x86_64.zip
|
||||||
mv silverbullet /opt/silverbullet/bin/
|
mv silverbullet /opt/silverbullet/bin/
|
||||||
chmod +x /opt/silverbullet/bin/silverbullet
|
chmod +x /opt/silverbullet/bin/silverbullet
|
||||||
echo "${RELEASE}" >/opt/silverbullet/${APP}_version.txt
|
echo "${RELEASE}" >/opt/silverbullet/${APP}_version.txt
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ function update_script() {
|
|||||||
msg_info "Updating $APP to v${RELEASE}"
|
msg_info "Updating $APP to v${RELEASE}"
|
||||||
tmp_file=$(mktemp)
|
tmp_file=$(mktemp)
|
||||||
curl -fsSL "https://github.com/slskd/slskd/releases/download/${RELEASE}/slskd-${RELEASE}-linux-x64.zip" -o $tmp_file
|
curl -fsSL "https://github.com/slskd/slskd/releases/download/${RELEASE}/slskd-${RELEASE}-linux-x64.zip" -o $tmp_file
|
||||||
unzip -q -oj $tmp_file slskd -d /opt/${APP}
|
$STD unzip -oj $tmp_file slskd -d /opt/${APP}
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
msg_ok "Updated $APP to v${RELEASE}"
|
msg_ok "Updated $APP to v${RELEASE}"
|
||||||
|
|
||||||
@@ -55,7 +55,7 @@ function update_script() {
|
|||||||
cd /tmp
|
cd /tmp
|
||||||
rm -rf /opt/soularr
|
rm -rf /opt/soularr
|
||||||
curl -fsSL -o main.zip https://github.com/mrusse/soularr/archive/refs/heads/main.zip
|
curl -fsSL -o main.zip https://github.com/mrusse/soularr/archive/refs/heads/main.zip
|
||||||
unzip -q main.zip
|
$STD unzip main.zip
|
||||||
mv soularr-main /opt/soularr
|
mv soularr-main /opt/soularr
|
||||||
cd /opt/soularr
|
cd /opt/soularr
|
||||||
$STD pip install -r requirements.txt
|
$STD pip install -r requirements.txt
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ function update_script() {
|
|||||||
rm -rf spoolman_bak
|
rm -rf spoolman_bak
|
||||||
mv spoolman spoolman_bak
|
mv spoolman spoolman_bak
|
||||||
curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip" -o $(basename "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip")
|
curl -fsSL "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip" -o $(basename "https://github.com/Donkie/Spoolman/releases/download/${RELEASE}/spoolman.zip")
|
||||||
unzip -q spoolman.zip -d spoolman
|
$STD unzip spoolman.zip -d spoolman
|
||||||
cd spoolman
|
cd spoolman
|
||||||
$STD pip3 install -r requirements.txt
|
$STD pip3 install -r requirements.txt
|
||||||
curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env"
|
curl -fsSL "https://raw.githubusercontent.com/Donkie/Spoolman/master/.env.example" -o ".env"
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
cd /opt
|
cd /opt
|
||||||
mv /opt/teddycloud /opt/teddycloud_bak
|
mv /opt/teddycloud /opt/teddycloud_bak
|
||||||
curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -o $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip")
|
curl -fsSL "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip" -o $(basename "https://github.com/toniebox-reverse-engineering/teddycloud/releases/download/${RELEASE}/teddycloud.amd64.release_v${VERSION}.zip")
|
||||||
unzip -q -d /opt/teddycloud teddycloud.amd64.release_v${VERSION}.zip
|
$STD unzip -d /opt/teddycloud teddycloud.amd64.release_v${VERSION}.zip
|
||||||
cp -R /opt/teddycloud_bak/certs /opt/teddycloud_bak/config /opt/teddycloud_bak/data /opt/teddycloud
|
cp -R /opt/teddycloud_bak/certs /opt/teddycloud_bak/config /opt/teddycloud_bak/data /opt/teddycloud
|
||||||
echo "${VERSION}" >"/opt/${APP}_version.txt"
|
echo "${VERSION}" >"/opt/${APP}_version.txt"
|
||||||
msg_ok "Updated ${APP} to v${VERSION}"
|
msg_ok "Updated ${APP} to v${VERSION}"
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ function update_script() {
|
|||||||
cp /opt/tianji/src/server/.env /opt/.env
|
cp /opt/tianji/src/server/.env /opt/.env
|
||||||
mv /opt/tianji /opt/tianji_bak
|
mv /opt/tianji /opt/tianji_bak
|
||||||
curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/msgbyte/tianji/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
mv tianji-${RELEASE} /opt/tianji
|
mv tianji-${RELEASE} /opt/tianji
|
||||||
cd tianji
|
cd tianji
|
||||||
export NODE_OPTIONS="--max_old_space_size=4096"
|
export NODE_OPTIONS="--max_old_space_size=4096"
|
||||||
|
|||||||
40
ct/umbrel.sh
40
ct/umbrel.sh
@@ -1,40 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
|
||||||
# Copyright (c) 2021-2025 tteck
|
|
||||||
# Author: tteck (tteckster)
|
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
||||||
# Source: https://umbrel.com/
|
|
||||||
|
|
||||||
APP="Umbrel"
|
|
||||||
var_tags="${var_tags:-os}"
|
|
||||||
var_cpu="${var_cpu:-2}"
|
|
||||||
var_ram="${var_ram:-2048}"
|
|
||||||
var_disk="${var_disk:-8}"
|
|
||||||
var_os="${var_os:-debian}"
|
|
||||||
var_version="${var_version:-12}"
|
|
||||||
var_unprivileged="${var_unprivileged:-1}"
|
|
||||||
|
|
||||||
header_info "$APP"
|
|
||||||
variables
|
|
||||||
color
|
|
||||||
catch_errors
|
|
||||||
|
|
||||||
function update_script() {
|
|
||||||
header_info
|
|
||||||
check_container_storage
|
|
||||||
check_container_resources
|
|
||||||
msg_info "Updating ${APP} LXC"
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get -y upgrade
|
|
||||||
msg_ok "Updated ${APP} LXC"
|
|
||||||
exit
|
|
||||||
}
|
|
||||||
|
|
||||||
start
|
|
||||||
build_container
|
|
||||||
description
|
|
||||||
|
|
||||||
msg_ok "Completed Successfully!\n"
|
|
||||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized! (manual reboot is required!)${CL}"
|
|
||||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
|
|
||||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
|
|
||||||
@@ -35,7 +35,7 @@ function update_script() {
|
|||||||
mkdir -p /opt/logos
|
mkdir -p /opt/logos
|
||||||
mv /opt/wallos/db/wallos.db /opt/wallos.db
|
mv /opt/wallos/db/wallos.db /opt/wallos.db
|
||||||
mv /opt/wallos/images/uploads/logos /opt/logos/
|
mv /opt/wallos/images/uploads/logos /opt/logos/
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
rm -rf /opt/wallos
|
rm -rf /opt/wallos
|
||||||
mv Wallos-${RELEASE} /opt/wallos
|
mv Wallos-${RELEASE} /opt/wallos
|
||||||
rm -rf /opt/wallos/db/wallos.empty.db
|
rm -rf /opt/wallos/db/wallos.empty.db
|
||||||
|
|||||||
@@ -64,8 +64,8 @@ EOF
|
|||||||
|
|
||||||
msg_info "Updating Wastebin"
|
msg_info "Updating Wastebin"
|
||||||
temp_file=$(mktemp)
|
temp_file=$(mktemp)
|
||||||
curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file"
|
curl -fsSL "https://github.com/matze/wastebin/releases/download/${RELEASE}/wastebin_${RELEASE}_x86_64-unknown-linux-musl.zip" -o "$temp_file"
|
||||||
unzip -o -q $temp_file
|
$STD unzip -o $temp_file
|
||||||
cp -f wastebin /opt/wastebin/
|
cp -f wastebin /opt/wastebin/
|
||||||
chmod +x /opt/wastebin/wastebin
|
chmod +x /opt/wastebin/wastebin
|
||||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ function update_script() {
|
|||||||
cp /opt/wavelog/assets/js/sections/custom.js /opt/custom.js
|
cp /opt/wavelog/assets/js/sections/custom.js /opt/custom.js
|
||||||
fi
|
fi
|
||||||
curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/wavelog/wavelog/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q ${RELEASE}.zip
|
$STD unzip ${RELEASE}.zip
|
||||||
rm -rf /opt/wavelog
|
rm -rf /opt/wavelog
|
||||||
mv wavelog-${RELEASE}/ /opt/wavelog
|
mv wavelog-${RELEASE}/ /opt/wavelog
|
||||||
rm -rf /opt/wavelog/install
|
rm -rf /opt/wavelog/install
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ function update_script() {
|
|||||||
msg_info "Updating ${APP} to v${RELEASE}"
|
msg_info "Updating ${APP} to v${RELEASE}"
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Koenkk/zigbee2mqtt/archive/refs/tags/${RELEASE}.zip")
|
||||||
unzip -q ${RELEASE}.zip
|
$STD unzip ${RELEASE}.zip
|
||||||
rm -rf /opt/zigbee2mqtt
|
rm -rf /opt/zigbee2mqtt
|
||||||
mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt
|
mv zigbee2mqtt-${RELEASE} /opt/zigbee2mqtt
|
||||||
rm -rf /opt/zigbee2mqtt/data
|
rm -rf /opt/zigbee2mqtt/data
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ function update_script() {
|
|||||||
mkdir -p /opt/zipline-upload
|
mkdir -p /opt/zipline-upload
|
||||||
cp -R /opt/zipline/upload/* /opt/zipline-upload/
|
cp -R /opt/zipline/upload/* /opt/zipline-upload/
|
||||||
curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip")
|
||||||
unzip -q v"${RELEASE}".zip
|
$STD unzip v"${RELEASE}".zip
|
||||||
rm -R /opt/zipline
|
rm -R /opt/zipline
|
||||||
mv zipline-"${RELEASE}" /opt/zipline
|
mv zipline-"${RELEASE}" /opt/zipline
|
||||||
cd /opt/zipline
|
cd /opt/zipline
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ function update_script() {
|
|||||||
rm -rf /opt/zwave-js-ui/*
|
rm -rf /opt/zwave-js-ui/*
|
||||||
cd /opt/zwave-js-ui
|
cd /opt/zwave-js-ui
|
||||||
curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -o $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip")
|
curl -fsSL "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip" -o $(basename "https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip")
|
||||||
unzip -q zwave-js-ui-${RELEASE}-linux.zip
|
$STD unzip zwave-js-ui-${RELEASE}-linux.zip
|
||||||
msg_ok "Updated Z-Wave JS UI"
|
msg_ok "Updated Z-Wave JS UI"
|
||||||
|
|
||||||
msg_info "Starting Service"
|
msg_info "Starting Service"
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "Alpine-tinyauth",
|
"name": "Alpine-Tinyauth",
|
||||||
"slug": "alpine-tinyauth",
|
"slug": "alpine-tinyauth",
|
||||||
"categories": [
|
"categories": [
|
||||||
6
|
6
|
||||||
@@ -9,11 +9,11 @@
|
|||||||
"updateable": true,
|
"updateable": true,
|
||||||
"privileged": false,
|
"privileged": false,
|
||||||
"interface_port": 3000,
|
"interface_port": 3000,
|
||||||
"documentation": "https://tinyauth.app/docs/getting-started.html",
|
"documentation": "https://tinyauth.app",
|
||||||
"website": "https://tinyauth.app/",
|
|
||||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tinyauth.webp",
|
|
||||||
"config_path": "/opt/tinyauth/.env",
|
"config_path": "/opt/tinyauth/.env",
|
||||||
"description": "Tinyauth is a simple authentication middleware that adds simple username/password login or OAuth with Google, Github and any generic provider to all of your docker apps. It is designed for traefik but it can be extended to work with all reverse proxies like caddy and nginx.",
|
"website": "https://tinyauth.app",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/tinyauth.webp",
|
||||||
|
"description": "Tinyauth is a simple authentication middleware that adds simple username/password login or OAuth with Google, Github and any generic provider to all of your docker apps.",
|
||||||
"install_methods": [
|
"install_methods": [
|
||||||
{
|
{
|
||||||
"type": "default",
|
"type": "default",
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 1,
|
"cpu": 1,
|
||||||
"ram": 256,
|
"ram": 256,
|
||||||
"hdd": 3,
|
"hdd": 2,
|
||||||
"os": "alpine",
|
"os": "alpine",
|
||||||
"version": "3.21"
|
"version": "3.21"
|
||||||
}
|
}
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 1,
|
"cpu": 1,
|
||||||
"ram": 256,
|
"ram": 256,
|
||||||
"hdd": 3,
|
"hdd": 2,
|
||||||
"os": "alpine",
|
"os": "alpine",
|
||||||
"version": "3.21"
|
"version": "3.21"
|
||||||
}
|
}
|
||||||
@@ -44,8 +44,8 @@
|
|||||||
},
|
},
|
||||||
"notes": [
|
"notes": [
|
||||||
{
|
{
|
||||||
"type": "info",
|
"text": "The default credentials are located in `/opt/tinyauth/credentials.txt`.",
|
||||||
"text": "`cat ~/tinyauth.creds` to view login credentials"
|
"type": "info"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
40
frontend/public/json/backrest.json
Normal file
40
frontend/public/json/backrest.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "Backrest",
|
||||||
|
"slug": "backrest",
|
||||||
|
"categories": [
|
||||||
|
7
|
||||||
|
],
|
||||||
|
"date_created": "2025-05-27",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 9898,
|
||||||
|
"documentation": "https://garethgeorge.github.io/backrest/introduction/getting-started",
|
||||||
|
"website": "https://garethgeorge.github.io/backrest",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/backrest.webp",
|
||||||
|
"config_path": "/opt/backrest/config/config.json",
|
||||||
|
"description": "Backrest is a web-accessible backup solution built on top of restic and providing a WebUI which wraps the restic CLI and makes it easy to create repos, browse snapshots, and restore files. Additionally, Backrest can run in the background and take an opinionated approach to scheduling snapshots and orchestrating repo health operations.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/backrest.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 512,
|
||||||
|
"hdd": 8,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"type": "info",
|
||||||
|
"text": "`cat ~/.ssh/id_ed25519.pub` to view ssh public key. This key is used to authenticate with sftp targets. You can add this key on the sftp server."
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
"script": "ct/bunkerweb.sh",
|
"script": "ct/bunkerweb.sh",
|
||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 2,
|
"cpu": 2,
|
||||||
"ram": 4096,
|
"ram": 8192,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "debian",
|
"os": "debian",
|
||||||
"version": "12"
|
"version": "12"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 12,
|
"hdd": 12,
|
||||||
"os": "ubuntu",
|
"os": "ubuntu",
|
||||||
"version": "22.04"
|
"version": "24.04"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
45
frontend/public/json/oauth2-proxy.json
Normal file
45
frontend/public/json/oauth2-proxy.json
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{
|
||||||
|
"name": "OAuth2-Proxy",
|
||||||
|
"slug": "oauth2-proxy",
|
||||||
|
"categories": [
|
||||||
|
4,
|
||||||
|
6
|
||||||
|
],
|
||||||
|
"date_created": "2025-05-28",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": null,
|
||||||
|
"documentation": "https://oauth2-proxy.github.io/oauth2-proxy/configuration/overview",
|
||||||
|
"website": "https://oauth2-proxy.github.io/oauth2-proxy/",
|
||||||
|
"logo": "https://raw.githubusercontent.com/oauth2-proxy/oauth2-proxy/f82e90426a1881d36bf995f25de9b7b1db4c2564/docs/static/img/logos/OAuth2_Proxy_icon.svg",
|
||||||
|
"config_path": "/opt/oauth2-proxy/config.toml",
|
||||||
|
"description": "A reverse proxy that provides authentication with Google, Azure, OpenID Connect and many more identity providers.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/oauth2-proxy.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 512,
|
||||||
|
"hdd": 3,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "This application includes a blank configuration file by default due to the wide range of available configuration options. We recommend referring to the official documentation for guidance: `https://oauth2-proxy.github.io/oauth2-proxy/configuration/overview`. With this you can make your config.toml file accordingly to your needs.",
|
||||||
|
"type": "info"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"text": "After changing the config restart OAuth2-Proxy with: `systemctl restart oauth2-proxy`",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
40
frontend/public/json/pulse.json
Normal file
40
frontend/public/json/pulse.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "Pulse",
|
||||||
|
"slug": "pulse",
|
||||||
|
"categories": [
|
||||||
|
9
|
||||||
|
],
|
||||||
|
"date_created": "2025-05-27",
|
||||||
|
"type": "ct",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 7655,
|
||||||
|
"documentation": null,
|
||||||
|
"website": "https://github.com/rcourtman/Pulse",
|
||||||
|
"logo": "https://raw.githubusercontent.com/rcourtman/Pulse/main/src/public/logos/pulse-logo-256x256.png",
|
||||||
|
"config_path": "/opt/pulse-proxmox/.env",
|
||||||
|
"description": "A lightweight monitoring application for Proxmox VE that displays real-time status for VMs and containers via a simple web interface.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "ct/pulse.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 1,
|
||||||
|
"ram": 1024,
|
||||||
|
"hdd": 4,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": null,
|
||||||
|
"password": null
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "Create Proxmox-API-Token first: `https://github.com/rcourtman/Pulse?tab=readme-ov-file#creating-a-proxmox-api-token`",
|
||||||
|
"type": "Info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
40
frontend/public/json/umbrel-os-vm.json
Normal file
40
frontend/public/json/umbrel-os-vm.json
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
"name": "Umbrel OS",
|
||||||
|
"slug": "umbrel-os-vm",
|
||||||
|
"categories": [
|
||||||
|
2
|
||||||
|
],
|
||||||
|
"date_created": "2025-05-28",
|
||||||
|
"type": "vm",
|
||||||
|
"updateable": true,
|
||||||
|
"privileged": false,
|
||||||
|
"interface_port": 80,
|
||||||
|
"documentation": "https://community.umbrel.com/c/guides/",
|
||||||
|
"website": "https://umbrel.com/",
|
||||||
|
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/umbrelos.webp",
|
||||||
|
"config_path": "",
|
||||||
|
"description": "Take control of your digital life with Umbrel — a private, personal server that lets you self-host powerful open source apps with ease. Whether you want to run a Bitcoin or Lightning node, manage your files with Nextcloud, stream media, block ads across your network, or explore self-hosted AI tools, Umbrel gives you full ownership and privacy. All through a beautiful, user-friendly interface — no cloud, no tracking, just your data under your control.",
|
||||||
|
"install_methods": [
|
||||||
|
{
|
||||||
|
"type": "default",
|
||||||
|
"script": "vm/umbrel-os-vm.sh",
|
||||||
|
"resources": {
|
||||||
|
"cpu": 2,
|
||||||
|
"ram": 4096,
|
||||||
|
"hdd": 20,
|
||||||
|
"os": "debian",
|
||||||
|
"version": "12"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default_credentials": {
|
||||||
|
"username": "umbrel",
|
||||||
|
"password": "umbrel"
|
||||||
|
},
|
||||||
|
"notes": [
|
||||||
|
{
|
||||||
|
"text": "This VM use as base a Debian 12 OS with a custom kernel and some additional packages to run Umbrel OS. It is not a standard Debian VM, but it is optimized for Umbrel OS.",
|
||||||
|
"type": "info"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
"resources": {
|
"resources": {
|
||||||
"cpu": 1,
|
"cpu": 1,
|
||||||
"ram": 256,
|
"ram": 256,
|
||||||
"hdd": 0.5,
|
"hdd": 1,
|
||||||
"os": "alpine",
|
"os": "alpine",
|
||||||
"version": "3.21"
|
"version": "3.21"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,174 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"name": "navidrome/navidrome",
|
||||||
|
"version": "v0.56.0",
|
||||||
|
"date": "2025-05-28T23:36:58Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "webmin/webmin",
|
||||||
|
"version": "2.400",
|
||||||
|
"date": "2025-05-28T22:36:05Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "apache/cassandra",
|
||||||
|
"version": "cassandra-4.0.18",
|
||||||
|
"date": "2025-05-28T21:45:55Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "mongodb/mongo",
|
||||||
|
"version": "r6.0.24",
|
||||||
|
"date": "2025-05-28T21:25:03Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "home-assistant/core",
|
||||||
|
"version": "2025.5.3",
|
||||||
|
"date": "2025-05-23T15:10:33Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "influxdata/influxdb",
|
||||||
|
"version": "v3.1.0",
|
||||||
|
"date": "2025-05-28T18:48:34Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "nzbgetcom/nzbget",
|
||||||
|
"version": "v25.0",
|
||||||
|
"date": "2025-05-12T09:12:04Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "zwave-js/zwave-js-ui",
|
||||||
|
"version": "v10.6.0",
|
||||||
|
"date": "2025-05-28T15:45:44Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jenkinsci/jenkins",
|
||||||
|
"version": "jenkins-2.504.2",
|
||||||
|
"date": "2025-05-28T14:36:54Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "kimai/kimai",
|
||||||
|
"version": "2.35.0",
|
||||||
|
"date": "2025-05-28T12:41:09Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||||
|
"version": "v1.23.0-victorialogs",
|
||||||
|
"date": "2025-05-28T12:27:36Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "element-hq/synapse",
|
||||||
|
"version": "v1.130.0",
|
||||||
|
"date": "2025-05-20T15:33:54Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "pocket-id/pocket-id",
|
||||||
|
"version": "v1.1.0",
|
||||||
|
"date": "2025-05-28T09:39:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "zitadel/zitadel",
|
||||||
|
"version": "v2.71.11",
|
||||||
|
"date": "2025-05-28T09:16:41Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.2.5",
|
||||||
|
"date": "2025-05-28T06:49:43Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Checkmk/checkmk",
|
||||||
|
"version": "v2.2.0p43-rc1",
|
||||||
|
"date": "2025-05-28T06:23:13Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Jackett/Jackett",
|
||||||
|
"version": "v0.22.1960",
|
||||||
|
"date": "2025-05-28T05:56:49Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Athou/commafeed",
|
||||||
|
"version": "5.10.0",
|
||||||
|
"date": "2025-05-28T05:48:20Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "cross-seed/cross-seed",
|
||||||
|
"version": "v6.12.6",
|
||||||
|
"date": "2025-05-28T00:13:19Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ollama/ollama",
|
||||||
|
"version": "v0.8.0",
|
||||||
|
"date": "2025-05-27T19:55:15Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "bluenviron/mediamtx",
|
||||||
|
"version": "v1.12.3",
|
||||||
|
"date": "2025-05-27T20:43:10Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "runtipi/runtipi",
|
||||||
|
"version": "nightly",
|
||||||
|
"date": "2025-05-27T19:00:14Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Threadfin/Threadfin",
|
||||||
|
"version": "1.2.34",
|
||||||
|
"date": "2025-05-27T18:18:00Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "immich-app/immich",
|
||||||
|
"version": "v1.134.0",
|
||||||
|
"date": "2025-05-27T17:28:27Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "firefly-iii/firefly-iii",
|
||||||
|
"version": "v6.2.16",
|
||||||
|
"date": "2025-05-27T16:27:42Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "neo4j/neo4j",
|
||||||
|
"version": "5.26.7",
|
||||||
|
"date": "2025-05-27T14:59:35Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "redis/redis",
|
||||||
|
"version": "7.2.9",
|
||||||
|
"date": "2025-05-27T14:08:53Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "readeck/readeck",
|
||||||
|
"version": "0.19.1",
|
||||||
|
"date": "2025-05-27T13:13:07Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "traefik/traefik",
|
||||||
|
"version": "v3.4.1",
|
||||||
|
"date": "2025-05-27T12:53:58Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "AdguardTeam/AdGuardHome",
|
||||||
|
"version": "v0.107.62",
|
||||||
|
"date": "2025-05-27T12:10:19Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "mattermost/mattermost",
|
||||||
|
"version": "v10.5.7",
|
||||||
|
"date": "2025-05-27T05:34:42Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "n8n-io/n8n",
|
||||||
|
"version": "n8n@1.94.1",
|
||||||
|
"date": "2025-05-27T10:36:43Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "esphome/esphome",
|
||||||
|
"version": "2025.5.1",
|
||||||
|
"date": "2025-05-27T09:01:29Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semaphoreui/semaphore",
|
||||||
|
"version": "v2.14.12",
|
||||||
|
"date": "2025-05-27T03:58:59Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "open-webui/open-webui",
|
"name": "open-webui/open-webui",
|
||||||
"version": "v0.6.11",
|
"version": "v0.6.11",
|
||||||
@@ -14,81 +184,36 @@
|
|||||||
"version": "1.34.1",
|
"version": "1.34.1",
|
||||||
"date": "2025-05-26T21:40:54Z"
|
"date": "2025-05-26T21:40:54Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "home-assistant/core",
|
|
||||||
"version": "2025.5.3",
|
|
||||||
"date": "2025-05-23T15:10:33Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "mattermost/mattermost",
|
|
||||||
"version": "mattermost-redux@10.8.0",
|
|
||||||
"date": "2025-05-26T19:17:13Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "semaphoreui/semaphore",
|
|
||||||
"version": "v2.14.12",
|
|
||||||
"date": "2025-05-26T19:08:26Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "dgtlmoon/changedetection.io",
|
"name": "dgtlmoon/changedetection.io",
|
||||||
"version": "0.49.18",
|
"version": "0.49.18",
|
||||||
"date": "2025-05-26T18:36:33Z"
|
"date": "2025-05-26T18:36:33Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "firefly-iii/firefly-iii",
|
|
||||||
"version": "v6.2.15",
|
|
||||||
"date": "2025-05-25T05:11:31Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "MediaBrowser/Emby.Releases",
|
"name": "MediaBrowser/Emby.Releases",
|
||||||
"version": "4.8.11.0",
|
"version": "4.8.11.0",
|
||||||
"date": "2025-03-10T06:39:11Z"
|
"date": "2025-03-10T06:39:11Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "nzbgetcom/nzbget",
|
"name": "wazuh/wazuh",
|
||||||
"version": "v25.0",
|
"version": "coverity-w22-4.13.0",
|
||||||
"date": "2025-05-12T09:12:04Z"
|
"date": "2025-05-26T15:04:48Z"
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "zitadel/zitadel",
|
|
||||||
"version": "v3.2.1",
|
|
||||||
"date": "2025-05-26T14:27:59Z"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "jupyter/notebook",
|
"name": "jupyter/notebook",
|
||||||
"version": "v7.4.3",
|
"version": "v7.4.3",
|
||||||
"date": "2025-05-26T14:27:27Z"
|
"date": "2025-05-26T14:27:27Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Checkmk/checkmk",
|
|
||||||
"version": "v2.3.0p33",
|
|
||||||
"date": "2025-05-26T13:57:51Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "syncthing/syncthing",
|
"name": "syncthing/syncthing",
|
||||||
"version": "v1.29.6",
|
"version": "v1.29.6",
|
||||||
"date": "2025-05-06T07:57:02Z"
|
"date": "2025-05-06T07:57:02Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
|
||||||
"version": "pmm-6401-v1.118.0",
|
|
||||||
"date": "2025-05-26T13:09:32Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "n8n-io/n8n",
|
|
||||||
"version": "n8n@1.91.3",
|
|
||||||
"date": "2025-05-08T12:25:10Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Graylog2/graylog2-server",
|
"name": "Graylog2/graylog2-server",
|
||||||
"version": "6.3.0-beta.3",
|
"version": "6.3.0-beta.3",
|
||||||
"date": "2025-05-26T12:40:56Z"
|
"date": "2025-05-26T12:40:56Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "AdguardTeam/AdGuardHome",
|
|
||||||
"version": "v0.107.61",
|
|
||||||
"date": "2025-04-22T12:42:26Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "OliveTin/OliveTin",
|
"name": "OliveTin/OliveTin",
|
||||||
"version": "2025.5.26",
|
"version": "2025.5.26",
|
||||||
@@ -104,11 +229,6 @@
|
|||||||
"version": "v1.5.2",
|
"version": "v1.5.2",
|
||||||
"date": "2025-05-11T16:40:55Z"
|
"date": "2025-05-11T16:40:55Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Jackett/Jackett",
|
|
||||||
"version": "v0.22.1951",
|
|
||||||
"date": "2025-05-26T05:51:18Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "stonith404/pingvin-share",
|
"name": "stonith404/pingvin-share",
|
||||||
"version": "v1.13.0",
|
"version": "v1.13.0",
|
||||||
@@ -119,11 +239,6 @@
|
|||||||
"version": "v1.21.0",
|
"version": "v1.21.0",
|
||||||
"date": "2025-05-25T16:41:43Z"
|
"date": "2025-05-25T16:41:43Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "cross-seed/cross-seed",
|
|
||||||
"version": "v6.12.5",
|
|
||||||
"date": "2025-05-17T02:52:33Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Prowlarr/Prowlarr",
|
"name": "Prowlarr/Prowlarr",
|
||||||
"version": "v1.36.3.5071",
|
"version": "v1.36.3.5071",
|
||||||
@@ -134,11 +249,6 @@
|
|||||||
"version": "v2.11.2.4629",
|
"version": "v2.11.2.4629",
|
||||||
"date": "2025-04-28T11:59:37Z"
|
"date": "2025-04-28T11:59:37Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "runtipi/runtipi",
|
|
||||||
"version": "nightly",
|
|
||||||
"date": "2025-05-25T09:44:06Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "Kozea/Radicale",
|
"name": "Kozea/Radicale",
|
||||||
"version": "v3.5.4",
|
"version": "v3.5.4",
|
||||||
@@ -149,11 +259,6 @@
|
|||||||
"version": "v4.39.4",
|
"version": "v4.39.4",
|
||||||
"date": "2025-05-25T02:27:28Z"
|
"date": "2025-05-25T02:27:28Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "pocket-id/pocket-id",
|
|
||||||
"version": "v1.0.0",
|
|
||||||
"date": "2025-05-24T22:06:55Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "minio/minio",
|
"name": "minio/minio",
|
||||||
"version": "RELEASE.2025-05-24T17-08-30Z",
|
"version": "RELEASE.2025-05-24T17-08-30Z",
|
||||||
@@ -184,16 +289,6 @@
|
|||||||
"version": "v1.21.0",
|
"version": "v1.21.0",
|
||||||
"date": "2025-05-23T19:17:15Z"
|
"date": "2025-05-23T19:17:15Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "immich-app/immich",
|
|
||||||
"version": "v1.133.1",
|
|
||||||
"date": "2025-05-23T18:14:44Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Threadfin/Threadfin",
|
|
||||||
"version": "1.2.33",
|
|
||||||
"date": "2025-05-23T15:59:05Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "docker/compose",
|
"name": "docker/compose",
|
||||||
"version": "v2.36.2",
|
"version": "v2.36.2",
|
||||||
@@ -204,21 +299,6 @@
|
|||||||
"version": "v8.1.4",
|
"version": "v8.1.4",
|
||||||
"date": "2025-05-23T12:29:19Z"
|
"date": "2025-05-23T12:29:19Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "wazuh/wazuh",
|
|
||||||
"version": "v4.10.2",
|
|
||||||
"date": "2025-05-23T11:56:41Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.0.12",
|
|
||||||
"date": "2025-05-15T14:06:52Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "ollama/ollama",
|
|
||||||
"version": "v0.7.1-rc2",
|
|
||||||
"date": "2025-05-23T01:53:31Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "rogerfar/rdt-client",
|
"name": "rogerfar/rdt-client",
|
||||||
"version": "v2.0.113",
|
"version": "v2.0.113",
|
||||||
@@ -239,16 +319,6 @@
|
|||||||
"version": "mariadb-11.4.7",
|
"version": "mariadb-11.4.7",
|
||||||
"date": "2025-05-22T14:22:22Z"
|
"date": "2025-05-22T14:22:22Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "neo4j/neo4j",
|
|
||||||
"version": "4.4.44",
|
|
||||||
"date": "2025-05-22T13:58:43Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "apache/cassandra",
|
|
||||||
"version": "4.0.18-tentative",
|
|
||||||
"date": "2025-05-22T11:46:18Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "0xERR0R/blocky",
|
"name": "0xERR0R/blocky",
|
||||||
"version": "v0.26.2",
|
"version": "v0.26.2",
|
||||||
@@ -274,11 +344,6 @@
|
|||||||
"version": "v3.0.4",
|
"version": "v3.0.4",
|
||||||
"date": "2025-05-21T19:03:53Z"
|
"date": "2025-05-21T19:03:53Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "mongodb/mongo",
|
|
||||||
"version": "r8.0.10-rc0",
|
|
||||||
"date": "2025-05-21T18:22:25Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "ipfs/kubo",
|
"name": "ipfs/kubo",
|
||||||
"version": "v0.35.0",
|
"version": "v0.35.0",
|
||||||
@@ -299,11 +364,6 @@
|
|||||||
"version": "10.0.18",
|
"version": "10.0.18",
|
||||||
"date": "2025-02-12T11:07:02Z"
|
"date": "2025-02-12T11:07:02Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "esphome/esphome",
|
|
||||||
"version": "2025.5.0",
|
|
||||||
"date": "2025-05-21T08:32:53Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "inventree/InvenTree",
|
"name": "inventree/InvenTree",
|
||||||
"version": "0.17.12",
|
"version": "0.17.12",
|
||||||
@@ -324,16 +384,6 @@
|
|||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"date": "2025-05-20T19:20:03Z"
|
"date": "2025-05-20T19:20:03Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "jenkinsci/jenkins",
|
|
||||||
"version": "jenkins-2.511",
|
|
||||||
"date": "2025-05-20T15:39:17Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "element-hq/synapse",
|
|
||||||
"version": "v1.130.0",
|
|
||||||
"date": "2025-05-20T15:33:54Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "documenso/documenso",
|
"name": "documenso/documenso",
|
||||||
"version": "v1.11.1",
|
"version": "v1.11.1",
|
||||||
@@ -389,11 +439,6 @@
|
|||||||
"version": "debian/12.1.6.1",
|
"version": "debian/12.1.6.1",
|
||||||
"date": "2025-05-18T17:01:42Z"
|
"date": "2025-05-18T17:01:42Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "kimai/kimai",
|
|
||||||
"version": "2.34.0",
|
|
||||||
"date": "2025-05-18T13:22:17Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "hansmi/prometheus-paperless-exporter",
|
"name": "hansmi/prometheus-paperless-exporter",
|
||||||
"version": "v0.0.8",
|
"version": "v0.0.8",
|
||||||
@@ -434,11 +479,6 @@
|
|||||||
"version": "v4.4.1",
|
"version": "v4.4.1",
|
||||||
"date": "2025-05-16T16:37:51Z"
|
"date": "2025-05-16T16:37:51Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "influxdata/influxdb",
|
|
||||||
"version": "v3.0.3",
|
|
||||||
"date": "2025-05-16T15:41:16Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "wavelog/wavelog",
|
"name": "wavelog/wavelog",
|
||||||
"version": "2.0.4",
|
"version": "2.0.4",
|
||||||
@@ -474,11 +514,6 @@
|
|||||||
"version": "v3.1.1",
|
"version": "v3.1.1",
|
||||||
"date": "2025-05-15T15:17:57Z"
|
"date": "2025-05-15T15:17:57Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "zwave-js/zwave-js-ui",
|
|
||||||
"version": "v10.5.1",
|
|
||||||
"date": "2025-05-15T09:59:28Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "FlowiseAI/Flowise",
|
"name": "FlowiseAI/Flowise",
|
||||||
"version": "flowise@3.0.0",
|
"version": "flowise@3.0.0",
|
||||||
@@ -489,11 +524,6 @@
|
|||||||
"version": "v4.47.1",
|
"version": "v4.47.1",
|
||||||
"date": "2025-01-05T21:14:23Z"
|
"date": "2025-01-05T21:14:23Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "Athou/commafeed",
|
|
||||||
"version": "5.9.0",
|
|
||||||
"date": "2025-05-14T15:29:48Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "juanfont/headscale",
|
"name": "juanfont/headscale",
|
||||||
"version": "v0.26.0",
|
"version": "v0.26.0",
|
||||||
@@ -524,11 +554,6 @@
|
|||||||
"version": "1.11.1",
|
"version": "1.11.1",
|
||||||
"date": "2025-05-13T13:32:07Z"
|
"date": "2025-05-13T13:32:07Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "redis/redis",
|
|
||||||
"version": "8.0.1",
|
|
||||||
"date": "2025-05-13T13:31:53Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "go-gitea/gitea",
|
"name": "go-gitea/gitea",
|
||||||
"version": "v1.23.8",
|
"version": "v1.23.8",
|
||||||
@@ -584,11 +609,6 @@
|
|||||||
"version": "10.1.41",
|
"version": "10.1.41",
|
||||||
"date": "2025-05-08T12:45:44Z"
|
"date": "2025-05-08T12:45:44Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "readeck/readeck",
|
|
||||||
"version": "0.18.2",
|
|
||||||
"date": "2025-05-07T19:22:22Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "donaldzou/WGDashboard",
|
"name": "donaldzou/WGDashboard",
|
||||||
"version": "v4.2.3",
|
"version": "v4.2.3",
|
||||||
@@ -614,11 +634,6 @@
|
|||||||
"version": "v0.19.0",
|
"version": "v0.19.0",
|
||||||
"date": "2025-05-06T18:05:42Z"
|
"date": "2025-05-06T18:05:42Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "bluenviron/mediamtx",
|
|
||||||
"version": "v1.12.2",
|
|
||||||
"date": "2025-05-06T15:30:10Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "linkwarden/linkwarden",
|
"name": "linkwarden/linkwarden",
|
||||||
"version": "v2.10.2",
|
"version": "v2.10.2",
|
||||||
@@ -644,11 +659,6 @@
|
|||||||
"version": "3.5.0",
|
"version": "3.5.0",
|
||||||
"date": "2025-05-05T16:28:24Z"
|
"date": "2025-05-05T16:28:24Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "traefik/traefik",
|
|
||||||
"version": "v3.4.0",
|
|
||||||
"date": "2025-05-05T13:59:23Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "moghtech/komodo",
|
"name": "moghtech/komodo",
|
||||||
"version": "v1.17.5",
|
"version": "v1.17.5",
|
||||||
@@ -874,11 +884,6 @@
|
|||||||
"version": "2.3",
|
"version": "2.3",
|
||||||
"date": "2025-04-05T18:05:36Z"
|
"date": "2025-04-05T18:05:36Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "navidrome/navidrome",
|
|
||||||
"version": "v0.55.2",
|
|
||||||
"date": "2025-04-05T12:07:32Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "MagicMirrorOrg/MagicMirror",
|
"name": "MagicMirrorOrg/MagicMirror",
|
||||||
"version": "v2.31.0",
|
"version": "v2.31.0",
|
||||||
@@ -964,11 +969,6 @@
|
|||||||
"version": "v4.0.14.2939",
|
"version": "v4.0.14.2939",
|
||||||
"date": "2025-03-17T19:12:37Z"
|
"date": "2025-03-17T19:12:37Z"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "webmin/webmin",
|
|
||||||
"version": "2.303",
|
|
||||||
"date": "2025-03-17T04:54:50Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "transmission/transmission",
|
"name": "transmission/transmission",
|
||||||
"version": "4.0.1-beta.1",
|
"version": "4.0.1-beta.1",
|
||||||
|
|||||||
@@ -14,11 +14,8 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
|
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
lsb-release \
|
lsb-release
|
||||||
gpg
|
|
||||||
|
|
||||||
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
curl -fsSL https://packages.sury.org/php/apt.gpg | gpg --dearmor -o /usr/share/keyrings/deb.sury.org-php.gpg
|
||||||
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/php.list
|
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/php.list
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
@@ -26,17 +23,18 @@ $STD apt-get update
|
|||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
nginx \
|
nginx \
|
||||||
composer \
|
composer \
|
||||||
php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,intl,mbstring,mysql,xml,cli} \
|
php8.3-{bcmath,common,ctype,curl,fileinfo,fpm,gd,intl,mbstring,mysql,xml,cli}
|
||||||
mariadb-server
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
install_mariadb
|
||||||
|
|
||||||
msg_info "Setting up Database"
|
msg_info "Setting up Database"
|
||||||
DB_NAME=2fauth_db
|
DB_NAME=2fauth_db
|
||||||
DB_USER=2fauth
|
DB_USER=2fauth
|
||||||
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 mysql -u root -e "CREATE DATABASE $DB_NAME;"
|
$STD mariadb -u root -e "CREATE DATABASE $DB_NAME;"
|
||||||
$STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('$DB_PASS');"
|
$STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('$DB_PASS');"
|
||||||
$STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
$STD mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
||||||
{
|
{
|
||||||
echo "2FAuth Credentials"
|
echo "2FAuth Credentials"
|
||||||
echo "Database User: $DB_USER"
|
echo "Database User: $DB_USER"
|
||||||
@@ -47,8 +45,8 @@ msg_ok "Set up Database"
|
|||||||
|
|
||||||
msg_info "Setup 2FAuth"
|
msg_info "Setup 2FAuth"
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
curl -fsSL "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip")
|
curl -fsSL "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip" -o "${RELEASE}.zip"
|
||||||
unzip -q "${RELEASE}.zip"
|
$STD unzip "${RELEASE}.zip"
|
||||||
mv "2FAuth-${RELEASE//v/}/" /opt/2fauth
|
mv "2FAuth-${RELEASE//v/}/" /opt/2fauth
|
||||||
|
|
||||||
cd "/opt/2fauth" || return
|
cd "/opt/2fauth" || return
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
gpg \
|
|
||||||
gdal-bin \
|
gdal-bin \
|
||||||
libgdal-dev \
|
libgdal-dev \
|
||||||
git \
|
git \
|
||||||
@@ -24,25 +23,10 @@ $STD apt-get install -y \
|
|||||||
python3-pip
|
python3-pip
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Setting up Node.js Repository"
|
NODE_VERSION="22" NODE_MODULE="pnpm@latest" install_node_and_modules
|
||||||
mkdir -p /etc/apt/keyrings
|
PG_VERSION="16" PG_MODULES="postgis" install_postgresql
|
||||||
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
|
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
|
|
||||||
msg_ok "Set up Node.js Repository"
|
|
||||||
|
|
||||||
msg_info "Setting up PostgreSQL Repository"
|
msg_info "Set up PostgreSQL Database"
|
||||||
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg
|
|
||||||
echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >/etc/apt/sources.list.d/pgdg.list
|
|
||||||
msg_ok "Set up PostgreSQL Repository"
|
|
||||||
|
|
||||||
msg_info "Installing Node.js"
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get install -y nodejs
|
|
||||||
$STD npm install -g pnpm
|
|
||||||
msg_ok "Installed Node.js"
|
|
||||||
|
|
||||||
msg_info "Install/Set up PostgreSQL Database"
|
|
||||||
$STD apt-get install -y postgresql-16 postgresql-16-postgis
|
|
||||||
DB_NAME="adventurelog_db"
|
DB_NAME="adventurelog_db"
|
||||||
DB_USER="adventurelog_user"
|
DB_USER="adventurelog_user"
|
||||||
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)"
|
||||||
@@ -68,8 +52,8 @@ DJANGO_ADMIN_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
|
|||||||
LOCAL_IP="$(hostname -I | awk '{print $1}')"
|
LOCAL_IP="$(hostname -I | awk '{print $1}')"
|
||||||
cd /opt
|
cd /opt
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
curl -fsSL "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
||||||
unzip -q v${RELEASE}.zip
|
$STD unzip v${RELEASE}.zip
|
||||||
mv AdventureLog-${RELEASE} /opt/adventurelog
|
mv AdventureLog-${RELEASE} /opt/adventurelog
|
||||||
cat <<EOF >/opt/adventurelog/backend/server/.env
|
cat <<EOF >/opt/adventurelog/backend/server/.env
|
||||||
PGHOST='localhost'
|
PGHOST='localhost'
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y unzip
|
|
||||||
$STD apt-get install -y apt-transport-https
|
$STD apt-get install -y apt-transport-https
|
||||||
$STD apt-get install -y alsa-utils
|
$STD apt-get install -y alsa-utils
|
||||||
$STD apt-get install -y libxext-dev
|
$STD apt-get install -y libxext-dev
|
||||||
|
|||||||
@@ -14,12 +14,7 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add newt
|
|
||||||
$STD apk add curl
|
|
||||||
$STD apk add openssh
|
|
||||||
$STD apk add tzdata
|
$STD apk add tzdata
|
||||||
$STD apk add nano
|
|
||||||
$STD apk add mc
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing Docker"
|
msg_info "Installing Docker"
|
||||||
|
|||||||
@@ -13,17 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add \
|
|
||||||
newt \
|
|
||||||
curl \
|
|
||||||
openssh \
|
|
||||||
nano \
|
|
||||||
mc \
|
|
||||||
gpg
|
|
||||||
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing Gitea"
|
msg_info "Installing Gitea"
|
||||||
$STD apk add --no-cache gitea
|
$STD apk add --no-cache gitea
|
||||||
msg_ok "Installed Gitea"
|
msg_ok "Installed Gitea"
|
||||||
|
|||||||
@@ -13,14 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add newt
|
|
||||||
$STD apk add curl
|
|
||||||
$STD apk add openssh
|
|
||||||
$STD apk add nano
|
|
||||||
$STD apk add mc
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing Grafana"
|
msg_info "Installing Grafana"
|
||||||
$STD apk add grafana
|
$STD apk add grafana
|
||||||
$STD sed -i '/http_addr/s/127.0.0.1/0.0.0.0/g' /etc/conf.d/grafana
|
$STD sed -i '/http_addr/s/127.0.0.1/0.0.0.0/g' /etc/conf.d/grafana
|
||||||
|
|||||||
@@ -14,11 +14,7 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add newt
|
$STD apk add sudo
|
||||||
$STD apk add curl
|
|
||||||
$STD apk add openssh
|
|
||||||
$STD apk add nano
|
|
||||||
$STD apk add mc
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
|
|||||||
@@ -14,12 +14,7 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add \
|
$STD apk add nginx
|
||||||
curl \
|
|
||||||
mc \
|
|
||||||
openssh \
|
|
||||||
nginx \
|
|
||||||
unzip
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing IT-Tools"
|
msg_info "Installing IT-Tools"
|
||||||
@@ -28,7 +23,7 @@ DOWNLOAD_URL="https://github.com/CorentinTh/it-tools/releases/download/${RELEASE
|
|||||||
|
|
||||||
curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
|
curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
|
||||||
mkdir -p /usr/share/nginx/html
|
mkdir -p /usr/share/nginx/html
|
||||||
unzip -q it-tools.zip -d /tmp/it-tools
|
$STD unzip it-tools.zip -d /tmp/it-tools
|
||||||
cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
|
cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
|
||||||
cat <<'EOF' >/etc/nginx/http.d/default.conf
|
cat <<'EOF' >/etc/nginx/http.d/default.conf
|
||||||
server {
|
server {
|
||||||
|
|||||||
@@ -13,12 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add \
|
|
||||||
gpg \
|
|
||||||
sudo
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing MariaDB"
|
msg_info "Installing MariaDB"
|
||||||
$STD apk add --no-cache mariadb mariadb-client
|
$STD apk add --no-cache mariadb mariadb-client
|
||||||
$STD rc-update add mariadb default
|
$STD rc-update add mariadb default
|
||||||
|
|||||||
@@ -14,12 +14,7 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add newt
|
|
||||||
$STD apk add curl
|
|
||||||
$STD apk add openssl
|
$STD apk add openssl
|
||||||
$STD apk add openssh
|
|
||||||
$STD apk add nano
|
|
||||||
$STD apk add mc
|
|
||||||
$STD apk add nginx
|
$STD apk add nginx
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
@@ -53,7 +48,7 @@ $STD apk add nextcloud-mysql mariadb mariadb-client
|
|||||||
$STD mariadb-install-db --user=mysql --datadir=/var/lib/mysql
|
$STD mariadb-install-db --user=mysql --datadir=/var/lib/mysql
|
||||||
$STD service mariadb start
|
$STD service mariadb start
|
||||||
$STD rc-update add mariadb
|
$STD rc-update add mariadb
|
||||||
mysql -uroot -p"$ADMIN_PASS" -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '$ADMIN_PASS' WITH GRANT OPTION; DELETE FROM mysql.user WHERE User=''; DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1'); DROP DATABASE test; DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%'; CREATE DATABASE $DB_NAME; GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS'; GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost.localdomain' IDENTIFIED BY '$DB_PASS'; FLUSH PRIVILEGES;"
|
mariadb -uroot -p"$ADMIN_PASS" -e "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '$ADMIN_PASS' WITH GRANT OPTION; DELETE FROM mysql.user WHERE User=''; DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1'); DROP DATABASE test; DELETE FROM mysql.db WHERE Db='test' OR Db='test\_%'; CREATE DATABASE $DB_NAME; GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS'; GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost.localdomain' IDENTIFIED BY '$DB_PASS'; FLUSH PRIVILEGES;"
|
||||||
$STD apk del mariadb-client
|
$STD apk del mariadb-client
|
||||||
msg_ok "Installed MySQL Database"
|
msg_ok "Installed MySQL Database"
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add --no-cache \
|
$STD apk add --no-cache \
|
||||||
gpg \
|
|
||||||
git \
|
git \
|
||||||
nodejs \
|
nodejs \
|
||||||
npm
|
npm
|
||||||
@@ -45,16 +44,17 @@ command="/usr/local/bin/node-red"
|
|||||||
command_args="--max-old-space-size=128 -v"
|
command_args="--max-old-space-size=128 -v"
|
||||||
command_user="nodered"
|
command_user="nodered"
|
||||||
pidfile="/var/run/nodered.pid"
|
pidfile="/var/run/nodered.pid"
|
||||||
|
command_background="yes"
|
||||||
|
|
||||||
depend() {
|
depend() {
|
||||||
use net
|
use net
|
||||||
}' >$service_path
|
}' >$service_path
|
||||||
|
|
||||||
chmod +x $service_path
|
chmod +x $service_path
|
||||||
$STD rc-update add nodered default
|
|
||||||
msg_ok "Created Node-RED Service"
|
msg_ok "Created Node-RED Service"
|
||||||
|
|
||||||
msg_info "Starting Node-RED"
|
msg_info "Starting Node-RED"
|
||||||
|
$STD rc-update add nodered
|
||||||
$STD rc-service nodered start
|
$STD rc-service nodered start
|
||||||
msg_ok "Started Node-RED"
|
msg_ok "Started Node-RED"
|
||||||
|
|
||||||
|
|||||||
@@ -13,11 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add \
|
|
||||||
gpg
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing Prometheus"
|
msg_info "Installing Prometheus"
|
||||||
$STD apk add --no-cache prometheus
|
$STD apk add --no-cache prometheus
|
||||||
msg_ok "Installed Prometheus"
|
msg_ok "Installed Prometheus"
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing dependencies"
|
msg_info "Installing dependencies"
|
||||||
$STD apk add --no-cache \
|
$STD apk add --no-cache \
|
||||||
unzip \
|
|
||||||
apache2-utils
|
apache2-utils
|
||||||
msg_ok "Installed dependencies"
|
msg_ok "Installed dependencies"
|
||||||
|
|
||||||
|
|||||||
@@ -13,17 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add \
|
|
||||||
newt \
|
|
||||||
curl \
|
|
||||||
openssh \
|
|
||||||
nano \
|
|
||||||
mc \
|
|
||||||
gpg
|
|
||||||
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing Redis"
|
msg_info "Installing Redis"
|
||||||
$STD apk add redis
|
$STD apk add redis
|
||||||
$STD sed -i 's/^bind .*/bind 0.0.0.0/' /etc/redis.conf
|
$STD sed -i 's/^bind .*/bind 0.0.0.0/' /etc/redis.conf
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Copyright (c) 2021-2025 community-scripts ORG
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
# Author: Slaviša Arežina (tremor021)
|
# Author: Slaviša Arežina (tremor021) | Co-Author: Stavros (steveiliop56)
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
# Source: https://github.com/steveiliop56/tinyauth
|
# Source: https://github.com/steveiliop56/tinyauth
|
||||||
|
|
||||||
@@ -14,45 +14,44 @@ network_check
|
|||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add --no-cache \
|
$STD apk add --no-cache curl openssl apache2-utils
|
||||||
npm \
|
|
||||||
curl \
|
|
||||||
go
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing tinyauth"
|
msg_info "Installing Tinyauth"
|
||||||
temp_file=$(mktemp)
|
|
||||||
$STD npm install -g bun
|
|
||||||
mkdir -p /opt/tinyauth
|
mkdir -p /opt/tinyauth
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
|
||||||
curl -fsSL "https://github.com/steveiliop56/tinyauth/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
|
|
||||||
tar -xzf "$temp_file" -C /opt/tinyauth --strip-components=1
|
|
||||||
cd /opt/tinyauth/frontend
|
|
||||||
$STD bun install
|
|
||||||
$STD bun run build
|
|
||||||
mv dist /opt/tinyauth/internal/assets/
|
|
||||||
cd /opt/tinyauth
|
|
||||||
$STD go mod download
|
|
||||||
CGO_ENABLED=0 go build -ldflags "-s -w"
|
|
||||||
{
|
|
||||||
echo "tinyauth Credentials"
|
|
||||||
echo "Username: admin@example.com"
|
|
||||||
echo "Password: admin"
|
|
||||||
} >>~/tinyauth.creds
|
|
||||||
echo "${RELEASE}" >/opt/tinyauth_version.txt
|
|
||||||
msg_ok "Installed tinyauth"
|
|
||||||
|
|
||||||
msg_info "Enabling tinyauth Service"
|
RELEASE=$(curl -s https://api.github.com/repos/steveiliop56/tinyauth/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
SECRET=$(head -c 16 /dev/urandom | xxd -p -c 16 | tr -d '\n')
|
curl -fsSL "https://github.com/steveiliop56/tinyauth/releases/download/v${RELEASE}/tinyauth-amd64" -o /opt/tinyauth/tinyauth
|
||||||
{
|
chmod +x /opt/tinyauth/tinyauth
|
||||||
echo "SECRET=${SECRET}"
|
|
||||||
echo "USERS=admin@example.com:\$2a\$10\$CrTK.W7WXSClo3ZY1yJUFupg5UdV8WNcynEhZhJFNjhGQB.Ga0ZDm"
|
PASSWORD=$(openssl rand -base64 8 | tr -dc 'a-zA-Z0-9' | head -c 8)
|
||||||
echo "APP_URL=http://localhost:3000"
|
USER=$(htpasswd -Bbn "tinyauth" "${PASSWORD}")
|
||||||
} >>/opt/tinyauth/.env
|
|
||||||
|
cat <<EOF > /opt/tinyauth/credentials.txt
|
||||||
|
Tinyauth Credentials
|
||||||
|
Username: tinyauth
|
||||||
|
Password: ${PASSWORD}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "${RELEASE}" >/opt/tinyauth_version.txt
|
||||||
|
msg_ok "Installed Tinyauth"
|
||||||
|
|
||||||
|
read -p "${TAB3}Enter your Tinyauth subdomain (e.g. https://tinyauth.example.com): " app_url
|
||||||
|
|
||||||
|
msg_info "Creating Tinyauth Service"
|
||||||
|
SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | head -c 32)
|
||||||
|
|
||||||
|
cat <<EOF >/opt/tinyauth/.env
|
||||||
|
SECRET=${SECRET}
|
||||||
|
USERS=${USER}
|
||||||
|
APP_URL=${app_url}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
sed -i -e 's/\$/\$\$/g' /opt/tinyauth/.env
|
||||||
|
|
||||||
cat <<EOF >/etc/init.d/tinyauth
|
cat <<EOF >/etc/init.d/tinyauth
|
||||||
#!/sbin/openrc-run
|
#!/sbin/openrc-run
|
||||||
description="tinyauth Service"
|
description="Tinyauth Service"
|
||||||
|
|
||||||
command="/opt/tinyauth/tinyauth"
|
command="/opt/tinyauth/tinyauth"
|
||||||
directory="/opt/tinyauth"
|
directory="/opt/tinyauth"
|
||||||
@@ -73,11 +72,11 @@ EOF
|
|||||||
|
|
||||||
chmod +x /etc/init.d/tinyauth
|
chmod +x /etc/init.d/tinyauth
|
||||||
$STD rc-update add tinyauth default
|
$STD rc-update add tinyauth default
|
||||||
msg_ok "Enabled tinyauth Service"
|
msg_ok "Enabled Tinyauth Service"
|
||||||
|
|
||||||
msg_info "Starting tinyauth"
|
msg_info "Starting Tinyauth"
|
||||||
$STD service tinyauth start
|
$STD service tinyauth start
|
||||||
msg_ok "Started tinyauth"
|
msg_ok "Started Tinyauth"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|||||||
@@ -15,12 +15,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apk add \
|
$STD apk add \
|
||||||
newt \
|
|
||||||
curl \
|
|
||||||
openssh \
|
|
||||||
nano \
|
|
||||||
mc \
|
|
||||||
gpg \
|
|
||||||
iptables \
|
iptables \
|
||||||
openrc
|
openrc
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|||||||
@@ -13,14 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apk add newt
|
|
||||||
$STD apk add curl
|
|
||||||
$STD apk add openssh
|
|
||||||
$STD apk add nano
|
|
||||||
$STD apk add mc
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing Alpine-Zigbee2MQTT"
|
msg_info "Installing Alpine-Zigbee2MQTT"
|
||||||
$STD apk add zigbee2mqtt
|
$STD apk add zigbee2mqtt
|
||||||
mkdir -p /root/.z2m
|
mkdir -p /root/.z2m
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y apt-transport-https
|
$STD apt-get install -y apt-transport-https
|
||||||
$STD apt-get install -y gpg
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing Eclipse Temurin (Patience)"
|
msg_info "Installing Eclipse Temurin (Patience)"
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y apt-transport-https
|
$STD apt-get install -y apt-transport-https
|
||||||
$STD apt-get install -y gnupg
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing Apache CouchDB"
|
msg_info "Installing Apache CouchDB"
|
||||||
|
|||||||
@@ -35,10 +35,11 @@ $STD apt-get install -y \
|
|||||||
libavcodec-dev \
|
libavcodec-dev \
|
||||||
libavutil-dev \
|
libavutil-dev \
|
||||||
libavformat-dev \
|
libavformat-dev \
|
||||||
mariadb-server \
|
|
||||||
default-jdk
|
default-jdk
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
install_mariadb
|
||||||
|
|
||||||
msg_info "Setup Apache Tomcat"
|
msg_info "Setup Apache Tomcat"
|
||||||
RELEASE=$(curl -fsSL https://dlcdn.apache.org/tomcat/tomcat-9/ | grep -oP '(?<=href=")v[^"/]+(?=/")' | sed 's/^v//' | sort -V | tail -n1)
|
RELEASE=$(curl -fsSL https://dlcdn.apache.org/tomcat/tomcat-9/ | grep -oP '(?<=href=")v[^"/]+(?=/")' | sed 's/^v//' | sort -V | tail -n1)
|
||||||
mkdir -p /opt/apache-guacamole/tomcat9
|
mkdir -p /opt/apache-guacamole/tomcat9
|
||||||
@@ -75,9 +76,9 @@ msg_info "Setup Database"
|
|||||||
DB_NAME=guacamole_db
|
DB_NAME=guacamole_db
|
||||||
DB_USER=guacamole_user
|
DB_USER=guacamole_user
|
||||||
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)
|
||||||
mysql -u root -e "CREATE DATABASE $DB_NAME;"
|
mariadb -u root -e "CREATE DATABASE $DB_NAME;"
|
||||||
mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('$DB_PASS');"
|
mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('$DB_PASS');"
|
||||||
mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
||||||
{
|
{
|
||||||
echo "Guacamole-Credentials"
|
echo "Guacamole-Credentials"
|
||||||
echo "Database User: $DB_USER"
|
echo "Database User: $DB_USER"
|
||||||
@@ -85,7 +86,7 @@ mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVI
|
|||||||
echo "Database Name: $DB_NAME"
|
echo "Database Name: $DB_NAME"
|
||||||
} >>~/guacamole.creds
|
} >>~/guacamole.creds
|
||||||
cd guacamole-auth-jdbc-1.5.5/mysql/schema
|
cd guacamole-auth-jdbc-1.5.5/mysql/schema
|
||||||
cat *.sql | mysql -u root ${DB_NAME}
|
cat *.sql | mariadb -u root ${DB_NAME}
|
||||||
{
|
{
|
||||||
echo "mysql-hostname: 127.0.0.1"
|
echo "mysql-hostname: 127.0.0.1"
|
||||||
echo "mysql-port: 3306"
|
echo "mysql-port: 3306"
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ msg_info "Installing Apache Tika"
|
|||||||
mkdir -p /opt/apache-tika
|
mkdir -p /opt/apache-tika
|
||||||
cd /opt/apache-tika
|
cd /opt/apache-tika
|
||||||
RELEASE="$(curl -fsSL https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)"
|
RELEASE="$(curl -fsSL https://dlcdn.apache.org/tika/ | grep -oP '(?<=href=")[0-9]+\.[0-9]+\.[0-9]+(?=/")' | sort -V | tail -n1)"
|
||||||
curl -fsSL "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" -o $(basename "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar")
|
curl -fsSL "https://dlcdn.apache.org/tika/${RELEASE}/tika-server-standard-${RELEASE}.jar" -o tika-server-standard-${RELEASE}.jar
|
||||||
mv tika-server-standard-${RELEASE}.jar tika-server-standard.jar
|
mv tika-server-standard-${RELEASE}.jar tika-server-standard.jar
|
||||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||||
msg_ok "Installed Apache Tika"
|
msg_ok "Installed Apache Tika"
|
||||||
|
|||||||
@@ -15,9 +15,7 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
gnupg2 \
|
|
||||||
lsb-release \
|
lsb-release \
|
||||||
gpg \
|
|
||||||
apt-transport-https
|
apt-transport-https
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
|||||||
@@ -33,16 +33,7 @@ $STD apt-get install -y \
|
|||||||
python3-regex
|
python3-regex
|
||||||
msg_ok "Installed Python Dependencies"
|
msg_ok "Installed Python Dependencies"
|
||||||
|
|
||||||
msg_info "Setting up Node.js Repository"
|
NODE_VERSION="22" install_node_and_modules
|
||||||
mkdir -p /etc/apt/keyrings
|
|
||||||
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
|
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
|
|
||||||
msg_ok "Set up Node.js Repository"
|
|
||||||
|
|
||||||
msg_info "Installing Node.js"
|
|
||||||
$STD apt-get update
|
|
||||||
$STD apt-get install -y nodejs
|
|
||||||
msg_ok "Installed Node.js"
|
|
||||||
|
|
||||||
msg_info "Installing Playwright"
|
msg_info "Installing Playwright"
|
||||||
$STD pip install playwright
|
$STD pip install playwright
|
||||||
|
|||||||
@@ -13,10 +13,6 @@ setting_up_container
|
|||||||
network_check
|
network_check
|
||||||
update_os
|
update_os
|
||||||
|
|
||||||
msg_info "Installing Dependencies"
|
|
||||||
$STD apt-get install -y gnupg
|
|
||||||
msg_ok "Installed Dependencies"
|
|
||||||
|
|
||||||
msg_info "Installing audiobookshelf"
|
msg_info "Installing audiobookshelf"
|
||||||
curl -fsSL https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg >/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc
|
curl -fsSL https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg >/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc
|
||||||
echo "deb [signed-by=/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc] https://advplyr.github.io/audiobookshelf-ppa ./" >/etc/apt/sources.list.d/audiobookshelf.list
|
echo "deb [signed-by=/etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc] https://advplyr.github.io/audiobookshelf-ppa ./" >/etc/apt/sources.list.d/audiobookshelf.list
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Authelia"
|
msg_info "Installing Authelia"
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/authelia/authelia/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
curl -fsSL "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" -o $(basename "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb")
|
curl -fsSL "https://github.com/authelia/authelia/releases/download/${RELEASE}/authelia_${RELEASE}_amd64.deb" -o "authelia_${RELEASE}_amd64.deb"
|
||||||
$STD dpkg -i "authelia_${RELEASE}_amd64.deb"
|
$STD dpkg -i "authelia_${RELEASE}_amd64.deb"
|
||||||
msg_ok "Install Authelia completed"
|
msg_ok "Install Authelia completed"
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ $STD apt-get install -y \
|
|||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
setup_uv
|
setup_uv
|
||||||
PG_VERSION="16" install_postgresql
|
PG_VERSION="16" PG_MODULES="contrib" install_postgresql
|
||||||
NODE_VERSION="22" install_node_and_modules
|
NODE_VERSION="22" install_node_and_modules
|
||||||
install_go
|
install_go
|
||||||
|
|
||||||
@@ -61,8 +61,7 @@ cat <<EOF >/etc/GeoIP.conf
|
|||||||
EOF
|
EOF
|
||||||
msg_ok "Installed GeoIP"
|
msg_ok "Installed GeoIP"
|
||||||
|
|
||||||
msg_info "Installing PostgreSQL"
|
msg_info "Setup PostgreSQL Database"
|
||||||
$STD apt-get install -y postgresql-16 postgresql-contrib-16
|
|
||||||
DB_NAME="authentik"
|
DB_NAME="authentik"
|
||||||
DB_USER="authentik"
|
DB_USER="authentik"
|
||||||
DB_PASS="$(openssl rand -base64 18 | cut -c1-13)"
|
DB_PASS="$(openssl rand -base64 18 | cut -c1-13)"
|
||||||
|
|||||||
54
install/backrest-install.sh
Normal file
54
install/backrest-install.sh
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright (c) 2021-2025 community-scripts ORG
|
||||||
|
# Author: ksad (enirys31)
|
||||||
|
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||||
|
# Source: https://garethgeorge.github.io/backrest/
|
||||||
|
|
||||||
|
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||||
|
color
|
||||||
|
verb_ip6
|
||||||
|
catch_errors
|
||||||
|
setting_up_container
|
||||||
|
network_check
|
||||||
|
update_os
|
||||||
|
|
||||||
|
msg_info "Installing Backrest"
|
||||||
|
RELEASE=$(curl -fsSL https://api.github.com/repos/garethgeorge/backrest/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
|
temp_file=$(mktemp)
|
||||||
|
mkdir -p /opt/backrest/{bin,config,data}
|
||||||
|
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
|
||||||
|
tar xzf $temp_file -C /opt/backrest/bin
|
||||||
|
chmod +x /opt/backrest/bin/backrest
|
||||||
|
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||||
|
msg_ok "Installed Backrest"
|
||||||
|
|
||||||
|
msg_info "Creating Service"
|
||||||
|
cat <<EOF >/etc/systemd/system/backrest.service
|
||||||
|
[Unit]
|
||||||
|
Description=Backrest
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=root
|
||||||
|
ExecStart=/opt/backrest/bin/backrest
|
||||||
|
Environment="BACKREST_PORT=9898"
|
||||||
|
Environment="BACKREST_CONFIG=/opt/backrest/config/config.json"
|
||||||
|
Environment="BACKREST_DATA=/opt/backrest/data"
|
||||||
|
Environment="XDG_CACHE_HOME=/opt/backrest/cache"
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
systemctl enable -q --now backrest
|
||||||
|
msg_ok "Created Service"
|
||||||
|
|
||||||
|
motd_ssh
|
||||||
|
customize
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f "$temp_file"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
@@ -15,13 +15,14 @@ update_os
|
|||||||
|
|
||||||
msg_info "Installing Dependencies"
|
msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
postgresql \
|
|
||||||
apache2 \
|
apache2 \
|
||||||
libapache2-mod-php \
|
libapache2-mod-php \
|
||||||
php-{pgsql,dom}
|
php-{pgsql,dom}
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Setting up PostgreSQL"
|
PG_VERSION="16" install_postgresql
|
||||||
|
|
||||||
|
msg_info "Setting up PostgreSQL Database"
|
||||||
DB_NAME=baikal
|
DB_NAME=baikal
|
||||||
DB_USER=baikal
|
DB_USER=baikal
|
||||||
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)
|
||||||
@@ -33,13 +34,13 @@ $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMP
|
|||||||
echo "Baikal Database Password: $DB_PASS"
|
echo "Baikal Database Password: $DB_PASS"
|
||||||
echo "Baikal Database Name: $DB_NAME"
|
echo "Baikal Database Name: $DB_NAME"
|
||||||
} >>~/baikal.creds
|
} >>~/baikal.creds
|
||||||
msg_ok "Set up PostgreSQL"
|
msg_ok "Set up PostgreSQL Database"
|
||||||
|
|
||||||
msg_info "Installing Baikal"
|
msg_info "Installing Baikal"
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/sabre-io/Baikal/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o $(basename "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip")
|
curl -fsSL "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip" -o "baikal-${RELEASE}.zip"
|
||||||
unzip -q "baikal-${RELEASE}.zip"
|
$STD unzip "baikal-${RELEASE}.zip"
|
||||||
cat <<EOF >/opt/baikal/config/baikal.yaml
|
cat <<EOF >/opt/baikal/config/baikal.yaml
|
||||||
database:
|
database:
|
||||||
backend: pgsql
|
backend: pgsql
|
||||||
|
|||||||
@@ -24,8 +24,8 @@ msg_ok "Installed Dependencies"
|
|||||||
msg_info "Installing barcodebuddy"
|
msg_info "Installing barcodebuddy"
|
||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
RELEASE=$(curl -fsSL https://api.github.com/repos/Forceu/barcodebuddy/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||||
cd /opt
|
cd /opt
|
||||||
curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip")
|
curl -fsSL "https://github.com/Forceu/barcodebuddy/archive/refs/tags/v${RELEASE}.zip" -o "v${RELEASE}.zip"
|
||||||
unzip -q "v${RELEASE}.zip"
|
$STD unzip "v${RELEASE}.zip"
|
||||||
mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy
|
mv "/opt/barcodebuddy-${RELEASE}" /opt/barcodebuddy
|
||||||
chown -R www-data:www-data /opt/barcodebuddy/data
|
chown -R www-data:www-data /opt/barcodebuddy/data
|
||||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ msg_ok "Setup Python3"
|
|||||||
|
|
||||||
msg_info "Installing Bazarr"
|
msg_info "Installing Bazarr"
|
||||||
mkdir -p /var/lib/bazarr/
|
mkdir -p /var/lib/bazarr/
|
||||||
curl -fsSL "https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip" -o $(basename "https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip")
|
curl -fsSL "https://github.com/morpheus65535/bazarr/releases/latest/download/bazarr.zip" -o "bazarr.zip"
|
||||||
unzip -qq bazarr -d /opt/bazarr
|
$STD unzip bazarr -d /opt/bazarr
|
||||||
chmod 775 /opt/bazarr /var/lib/bazarr/
|
chmod 775 /opt/bazarr /var/lib/bazarr/
|
||||||
$STD python3 -m pip install -q -r /opt/bazarr/requirements.txt
|
$STD python3 -m pip install -q -r /opt/bazarr/requirements.txt
|
||||||
msg_ok "Installed Bazarr"
|
msg_ok "Installed Bazarr"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user