mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-05 10:52:49 +00:00
Compare commits
30 Commits
2025-10-21
...
deb13_k_to
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9c59abf838 | ||
|
|
99617f265a | ||
|
|
1fe00c2493 | ||
|
|
05fd03d160 | ||
|
|
e837ebb0e5 | ||
|
|
8e1a9ffb07 | ||
|
|
af991286dc | ||
|
|
c1205691e7 | ||
|
|
394787e10e | ||
|
|
e37ef10283 | ||
|
|
130e3c7efe | ||
|
|
634a847c06 | ||
|
|
c92f9d5518 | ||
|
|
c7fffd85d3 | ||
|
|
2ae62055a6 | ||
|
|
e6bd1b5759 | ||
|
|
55120ae165 | ||
|
|
4672934701 | ||
|
|
560e1fdad3 | ||
|
|
e60020a998 | ||
|
|
dfda118e65 | ||
|
|
6d7c318dec | ||
|
|
9c39c9cd67 | ||
|
|
0ed95ea9cb | ||
|
|
433119e830 | ||
|
|
a794358c14 | ||
|
|
0f69e8cc69 | ||
|
|
2e34f534eb | ||
|
|
1c9d325ae8 | ||
|
|
a117cb7a34 |
22
CHANGELOG.md
22
CHANGELOG.md
@@ -10,8 +10,30 @@
|
||||
> [!CAUTION]
|
||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||
|
||||
## 2025-10-23
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- MeTube: Fix inserting path into .bashrc [@tremor021](https://github.com/tremor021) ([#8589](https://github.com/community-scripts/ProxmoxVE/pull/8589))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- Refactor: Kavita + Updated tools.func (no-same-owner) [@MickLesk](https://github.com/MickLesk) ([#8594](https://github.com/community-scripts/ProxmoxVE/pull/8594))
|
||||
- tools.func: update update_check messages for clarity [@MickLesk](https://github.com/MickLesk) ([#8588](https://github.com/community-scripts/ProxmoxVE/pull/8588))
|
||||
|
||||
## 2025-10-22
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- Refactor: Full Change & Feature-Bump of tools.func [@MickLesk](https://github.com/MickLesk) ([#8409](https://github.com/community-scripts/ProxmoxVE/pull/8409))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- part-db: use helper-script php function [@MickLesk](https://github.com/MickLesk) ([#8575](https://github.com/community-scripts/ProxmoxVE/pull/8575))
|
||||
- omada: remove static mongodb install [@MickLesk](https://github.com/MickLesk) ([#8577](https://github.com/community-scripts/ProxmoxVE/pull/8577))
|
||||
|
||||
## 2025-10-21
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
@@ -11,7 +11,7 @@ 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_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -28,8 +28,8 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -29,11 +29,10 @@ function update_script() {
|
||||
exit 1
|
||||
fi
|
||||
|
||||
msg_info "Updating ${APP} LXC"
|
||||
msg_info "Updating LXC"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated Successfully"
|
||||
|
||||
msg_ok "Updated Successfully!"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_disk="${var_disk:-2}"
|
||||
var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-512}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-0}"
|
||||
|
||||
header_info "$APP"
|
||||
|
||||
@@ -28,24 +28,24 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
|
||||
if [ ! -f /opt/.env ]; then
|
||||
sed -i 's|^Environment="DisableRootWarning=true"$|EnvironmentFile="/opt/.env"|' /etc/systemd/system/jackett.service
|
||||
cat <<EOF >/opt/.env
|
||||
DisableRootWarning=true
|
||||
EOF
|
||||
fi
|
||||
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
|
||||
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop jackett
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
rm -rf /opt/Jackett
|
||||
fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start jackett
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated Successfully"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -27,10 +27,14 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating $APP LXC"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated $APP LXC"
|
||||
|
||||
JAVA_VERSION="21" setup_java
|
||||
|
||||
msg_info "Updating Jenkings"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Jenkins"
|
||||
msg_ok "Update Successfully!"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-20}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -35,19 +35,18 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "joplin-server" "laurent22/joplin" "tarball" "latest"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Joplin-Server"
|
||||
cd /opt/joplin-server
|
||||
sed -i "/onenote-converter/d" packages/lib/package.json
|
||||
$STD yarn config set --home enableTelemetry 0
|
||||
export BUILD_SEQUENCIAL=1
|
||||
$STD yarn install --inline-builds
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated Joplin-Server"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start joplin-server
|
||||
msg_ok "Started Services"
|
||||
|
||||
msg_ok "Updated Successfully"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-256}"
|
||||
var_disk="${var_disk:-2}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -32,9 +32,9 @@ function update_script() {
|
||||
setup_uv
|
||||
|
||||
if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then
|
||||
msg_info "Stopping $APP"
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop kapowarr
|
||||
msg_ok "Stopped $APP"
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
mv /opt/kapowarr/db /opt/
|
||||
@@ -42,14 +42,14 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "kapowarr" "Casvt/Kapowarr"
|
||||
|
||||
msg_info "Updating $APP"
|
||||
msg_info "Updating Kapowarr"
|
||||
mv /opt/db /opt/kapowarr
|
||||
msg_ok "Updated $APP"
|
||||
msg_ok "Updated Kapowarr"
|
||||
|
||||
msg_info "Starting $APP"
|
||||
msg_info "Starting Service"
|
||||
systemctl start kapowarr
|
||||
msg_ok "Started $APP"
|
||||
msg_ok "Update Successful"
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Update Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -38,14 +38,11 @@ function update_script() {
|
||||
msg_ok "Updated yt-dlp"
|
||||
|
||||
msg_info "Prepare update"
|
||||
if [[ -f /opt/${APP}_version.txt && "$(cat /opt/${APP}_version.txt)" < "0.23.0" ]]; then
|
||||
$STD apt-get install -y graphicsmagick ghostscript
|
||||
fi
|
||||
$STD apt install -y graphicsmagick ghostscript
|
||||
if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then
|
||||
mkdir -p /etc/karakeep
|
||||
mv /opt/karakeep/.env /etc/karakeep/karakeep.env
|
||||
fi
|
||||
rm -rf /opt/karakeep
|
||||
msg_ok "Update prepared"
|
||||
|
||||
if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then
|
||||
@@ -65,7 +62,7 @@ function update_script() {
|
||||
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
|
||||
NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Karakeep"
|
||||
corepack enable
|
||||
export PUPPETEER_SKIP_DOWNLOAD="true"
|
||||
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
|
||||
@@ -86,17 +83,18 @@ function update_script() {
|
||||
$STD pnpm migrate
|
||||
$STD pnpm store prune
|
||||
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated Karakeep"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start karakeep-browser karakeep-workers karakeep-web
|
||||
msg_ok "Started Services"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
$STD apt-get autoremove -y
|
||||
$STD apt-get autoclean -y
|
||||
$STD apt autoremove -y
|
||||
$STD apt autoclean -y
|
||||
$STD apt clean -y
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Successfully"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
10
ct/kasm.sh
10
ct/kasm.sh
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-8192}"
|
||||
var_disk="${var_disk:-30}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-0}"
|
||||
var_fuse="${var_fuse:-yes}"
|
||||
var_tun="${var_tun:-yes}"
|
||||
@@ -29,10 +29,10 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating $APP LXC"
|
||||
$STD apt-get update
|
||||
$STD apt-get -y upgrade
|
||||
msg_ok "Updated $APP LXC"
|
||||
msg_info "Updating LXC"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
21
ct/kavita.sh
21
ct/kavita.sh
@@ -11,7 +11,7 @@ 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_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -27,15 +27,20 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating $APP LXC"
|
||||
|
||||
if check_for_gh_release "kavita" "Kareadita/Kavita"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop kavita
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
$STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner
|
||||
rm -rf Kavita/config
|
||||
cp -r Kavita/* /opt/Kavita
|
||||
rm -rf Kavita
|
||||
msg_ok "Service Stopped"
|
||||
|
||||
fetch_and_deploy_gh_release "kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-x64.tar.gz"
|
||||
chmod +x /opt/Kavita/Kavita && chown root:root /opt/Kavita/Kavita
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start kavita
|
||||
msg_ok "Updated $APP LXC"
|
||||
msg_ok "Service Started"
|
||||
msg_ok "Update Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -28,9 +28,9 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "keycloak_app" "keycloak/keycloak"; then
|
||||
msg_info "Stopping Keycloak"
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop keycloak
|
||||
msg_ok "Stopped Keycloak"
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating packages"
|
||||
$STD apt-get update
|
||||
@@ -44,16 +44,16 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "keycloak_app" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Keycloak"
|
||||
cd /opt
|
||||
cp -a keycloak.old/conf/. keycloak/conf/
|
||||
cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true
|
||||
cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true
|
||||
msg_ok "Updated ${APP} LXC"
|
||||
msg_ok "Updated Keycloak"
|
||||
|
||||
msg_info "Restarting Keycloak"
|
||||
msg_info "Restarting Service"
|
||||
systemctl restart keycloak
|
||||
msg_ok "Restarted Keycloak"
|
||||
msg_ok "Restarted Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf keycloak.old
|
||||
|
||||
40
ct/kimai.sh
40
ct/kimai.sh
@@ -30,25 +30,13 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
CURRENT_PHP=$(php -v 2>/dev/null | awk '/^PHP/{print $2}' | cut -d. -f1,2)
|
||||
if [[ "$CURRENT_PHP" != "8.4" ]]; then
|
||||
msg_info "Migrating PHP $CURRENT_PHP to 8.4"
|
||||
$STD curl -fsSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
|
||||
$STD sh -c '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 remove -y php"${CURRENT_PHP//./}"*
|
||||
$STD apt-get install -y \
|
||||
php8.4 composer \
|
||||
php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm} \
|
||||
libapache2-mod-php8.4
|
||||
msg_ok "Migrated PHP $CURRENT_PHP to 8.4"
|
||||
fi
|
||||
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
PHP_VERSION="8.4" PHP_MODULE="mysql" PHP_APACHE="YES" setup_php
|
||||
setup_composer
|
||||
|
||||
if check_for_gh_release "koillection" "benjaminjonard/koillection"; then
|
||||
BACKUP_DIR="/opt/kimai_backup"
|
||||
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Apache2"
|
||||
systemctl stop apache2
|
||||
msg_ok "Stopped Apache2"
|
||||
@@ -60,15 +48,9 @@ function update_script() {
|
||||
[ -f /opt/kimai/config/packages/local.yaml ] && cp /opt/kimai/config/packages/local.yaml "$BACKUP_DIR/"
|
||||
msg_ok "Backup completed"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
trap "echo Unable to download release file for version ${RELEASE}; try again later" ERR
|
||||
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")
|
||||
$STD unzip "${RELEASE}".zip
|
||||
set +e
|
||||
trap - ERR
|
||||
rm -rf /opt/kimai
|
||||
mv kimai-"${RELEASE}" /opt/kimai
|
||||
fetch_and_deploy_gh_release "kimai" "kimai/kimai"
|
||||
|
||||
msg_info "Updating Kimai"
|
||||
[ -d "$BACKUP_DIR/var" ] && cp -r "$BACKUP_DIR/var" /opt/kimai/
|
||||
[ -f "$BACKUP_DIR/.env" ] && cp "$BACKUP_DIR/.env" /opt/kimai/
|
||||
[ -f "$BACKUP_DIR/local.yaml" ] && cp "$BACKUP_DIR/local.yaml" /opt/kimai/config/packages/
|
||||
@@ -76,8 +58,7 @@ function update_script() {
|
||||
cd /opt/kimai
|
||||
$STD composer install --no-dev --optimize-autoloader
|
||||
$STD bin/console kimai:update
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
msg_ok "Updated Kimai"
|
||||
|
||||
msg_info "Starting Apache2"
|
||||
systemctl start apache2
|
||||
@@ -92,12 +73,9 @@ function update_script() {
|
||||
msg_ok "Setup Permissions"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf "${RELEASE}".zip
|
||||
rm -rf "$BACKUP_DIR"
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -38,7 +38,7 @@ function update_script() {
|
||||
|
||||
fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Koillection"
|
||||
cd /opt/koillection
|
||||
cp -r /opt/koillection-backup/.env.local /opt/koillection
|
||||
cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/
|
||||
@@ -50,7 +50,7 @@ function update_script() {
|
||||
$STD yarn install
|
||||
$STD yarn build
|
||||
chown -R www-data:www-data /opt/koillection/public/uploads
|
||||
msg_ok "Updated $APP"
|
||||
msg_ok "Updated Koillection"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start apache2
|
||||
@@ -59,7 +59,7 @@ function update_script() {
|
||||
msg_info "Cleaning up"
|
||||
rm -r /opt/koillection-backup
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Successfully"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ function update_script() {
|
||||
cp /opt/kometa/config/config.yml /opt
|
||||
msg_ok "Backup completed"
|
||||
|
||||
PYTHON_VERSION="3.12" setup_uv
|
||||
PYTHON_VERSION="3.13" setup_uv
|
||||
fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa"
|
||||
|
||||
msg_info "Updating Kometa"
|
||||
@@ -49,7 +49,7 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start kometa
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Update Successful"
|
||||
msg_ok "Update Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ function update_script() {
|
||||
msg_info "Starting Service"
|
||||
systemctl start komga
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated Successfully"
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -29,7 +29,7 @@ function update_script() {
|
||||
exit 1
|
||||
}
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
msg_info "Updating Komodo"
|
||||
COMPOSE_FILE=$(find /opt/komodo -maxdepth 1 -type f -name '*.compose.yaml' ! -name 'compose.env' | head -n1)
|
||||
if [[ -z "$COMPOSE_FILE" ]]; then
|
||||
msg_error "No valid compose file found in /opt/komodo!"
|
||||
@@ -61,7 +61,7 @@ function update_script() {
|
||||
fi
|
||||
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env pull
|
||||
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_ok "Updated Komodo"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-4}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
var_version="${var_version:-13}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
@@ -37,7 +37,7 @@ function update_script() {
|
||||
msg_info "Starting service"
|
||||
systemctl start ipfs
|
||||
msg_ok "Service started"
|
||||
msg_ok "Updated successfully"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ function update_script() {
|
||||
fi
|
||||
|
||||
if [[ $(echo ":$PATH:" != *":/usr/local/bin:"*) ]]; then
|
||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc
|
||||
echo -e "\nexport PATH=\"/usr/local/bin:\$PATH\"" >>~/.bashrc
|
||||
source ~/.bashrc
|
||||
if ! command -v deno &>/dev/null; then
|
||||
export DENO_INSTALL="/usr/local"
|
||||
@@ -110,6 +110,7 @@ EOF
|
||||
|
||||
msg_ok "Updated Successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -28,6 +28,19 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
|
||||
if command -v node &> /dev/null; then
|
||||
CURRENT_NODE_VERSION=$(node --version | cut -d'v' -f2 | cut -d'.' -f1)
|
||||
if [[ "$CURRENT_NODE_VERSION" != "22" ]]; then
|
||||
systemctl stop openresty
|
||||
apt-get purge -y nodejs npm
|
||||
apt-get autoremove -y
|
||||
rm -rf /usr/local/bin/node /usr/local/bin/npm
|
||||
rm -rf /usr/local/lib/node_modules
|
||||
rm -rf ~/.npm
|
||||
rm -rf /root/.npm
|
||||
fi
|
||||
fi
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
|
||||
export NODE_OPTIONS="--openssl-legacy-provider"
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"ram": 2048,
|
||||
"hdd": 8,
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
"version": "13"
|
||||
}
|
||||
}
|
||||
],
|
||||
|
||||
@@ -1,4 +1,129 @@
|
||||
[
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.2.0.0-2.2.0.0_stable_2025-10-23",
|
||||
"date": "2025-10-23T11:25:25Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.4.2",
|
||||
"date": "2025-10-23T06:59:32Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.175",
|
||||
"date": "2025-10-23T05:50:23Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.1.31",
|
||||
"date": "2025-10-23T00:45:04Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.4.20",
|
||||
"date": "2025-10-23T00:27:05Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v4.0.1",
|
||||
"date": "2025-10-15T16:53:55Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.78.7-nightly",
|
||||
"date": "2025-10-22T22:33:31Z"
|
||||
},
|
||||
{
|
||||
"name": "jhuckaby/Cronicle",
|
||||
"version": "v0.9.99",
|
||||
"date": "2025-10-22T22:20:33Z"
|
||||
},
|
||||
{
|
||||
"name": "sabnzbd/sabnzbd",
|
||||
"version": "4.5.4",
|
||||
"date": "2025-10-22T21:23:17Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.5",
|
||||
"date": "2025-09-27T20:59:46Z"
|
||||
},
|
||||
{
|
||||
"name": "paperless-ngx/paperless-ngx",
|
||||
"version": "v2.19.1",
|
||||
"date": "2025-10-22T20:40:07Z"
|
||||
},
|
||||
{
|
||||
"name": "rcourtman/Pulse",
|
||||
"version": "issue-596",
|
||||
"date": "2025-10-22T19:48:56Z"
|
||||
},
|
||||
{
|
||||
"name": "gtsteffaniak/filebrowser",
|
||||
"version": "v0.8.10-beta",
|
||||
"date": "2025-10-22T18:41:54Z"
|
||||
},
|
||||
{
|
||||
"name": "docker/compose",
|
||||
"version": "v2.40.2",
|
||||
"date": "2025-10-22T17:38:12Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/uptime-kuma",
|
||||
"version": "2.0.2",
|
||||
"date": "2025-10-22T17:03:54Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisvel/tududi",
|
||||
"version": "v0.84.2",
|
||||
"date": "2025-10-22T17:03:48Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/prometheus",
|
||||
"version": "v0.307.2",
|
||||
"date": "2025-10-22T16:00:08Z"
|
||||
},
|
||||
{
|
||||
"name": "thecfu/scraparr",
|
||||
"version": "v3.0.0-beta",
|
||||
"date": "2025-10-22T13:12:10Z"
|
||||
},
|
||||
{
|
||||
"name": "NLnetLabs/unbound",
|
||||
"version": "release-1.24.1",
|
||||
"date": "2025-10-22T10:28:00Z"
|
||||
},
|
||||
{
|
||||
"name": "mattermost/mattermost",
|
||||
"version": "server/public/v0.1.21",
|
||||
"date": "2025-10-16T09:46:16Z"
|
||||
},
|
||||
{
|
||||
"name": "zabbix/zabbix",
|
||||
"version": "7.4.4rc1",
|
||||
"date": "2025-10-22T09:20:59Z"
|
||||
},
|
||||
{
|
||||
"name": "SigNoz/signoz",
|
||||
"version": "v0.98.0",
|
||||
"date": "2025-10-22T06:49:36Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "create-fumadocs-app@16.0.1",
|
||||
"date": "2025-10-22T05:44:06Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisbenincasa/tunarr",
|
||||
"version": "v0.23.0-alpha.17",
|
||||
"date": "2025-10-22T00:33:47Z"
|
||||
},
|
||||
{
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.30.0",
|
||||
@@ -14,11 +139,6 @@
|
||||
"version": "0.50.28",
|
||||
"date": "2025-10-21T19:51:28Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.78.6-nightly",
|
||||
"date": "2025-10-21T19:12:46Z"
|
||||
},
|
||||
{
|
||||
"name": "mongodb/mongo",
|
||||
"version": "r8.0.15",
|
||||
@@ -34,16 +154,6 @@
|
||||
"version": "v5.27.2",
|
||||
"date": "2025-10-21T18:03:22Z"
|
||||
},
|
||||
{
|
||||
"name": "paperless-ngx/paperless-ngx",
|
||||
"version": "v2.19.0",
|
||||
"date": "2025-10-21T17:41:30Z"
|
||||
},
|
||||
{
|
||||
"name": "jhuckaby/Cronicle",
|
||||
"version": "v0.9.98",
|
||||
"date": "2025-10-21T17:21:13Z"
|
||||
},
|
||||
{
|
||||
"name": "kyantech/Palmr",
|
||||
"version": "v3.2.5-beta",
|
||||
@@ -66,14 +176,19 @@
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.7.1",
|
||||
"date": "2025-10-15T10:44:03Z"
|
||||
"version": "v1.7.2",
|
||||
"date": "2025-10-21T14:36:48Z"
|
||||
},
|
||||
{
|
||||
"name": "laurent22/joplin",
|
||||
"version": "server-v3.4.4",
|
||||
"date": "2025-09-25T13:19:26Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "v4.14.0",
|
||||
"date": "2025-10-21T13:39:55Z"
|
||||
},
|
||||
{
|
||||
"name": "goauthentik/authentik",
|
||||
"version": "version/2025.10.0-rc2",
|
||||
@@ -99,11 +214,6 @@
|
||||
"version": "0.209.3",
|
||||
"date": "2025-10-21T10:53:07Z"
|
||||
},
|
||||
{
|
||||
"name": "zabbix/zabbix",
|
||||
"version": "7.0.20rc1",
|
||||
"date": "2025-10-21T09:14:14Z"
|
||||
},
|
||||
{
|
||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||
"version": "pmm-6401-v1.128.0",
|
||||
@@ -114,26 +224,11 @@
|
||||
"version": "prototype-v1.24.0.ignore-embedding-failures-2",
|
||||
"date": "2025-10-21T07:36:22Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.166",
|
||||
"date": "2025-10-21T05:54:33Z"
|
||||
},
|
||||
{
|
||||
"name": "openobserve/openobserve",
|
||||
"version": "v0.16.0-rc1",
|
||||
"date": "2025-10-21T00:37:47Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.4.20",
|
||||
"date": "2025-10-21T00:27:05Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v4.0.1",
|
||||
"date": "2025-10-15T16:53:55Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v1.13.0",
|
||||
@@ -144,11 +239,6 @@
|
||||
"version": "v0.14.1",
|
||||
"date": "2025-10-20T22:10:56Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.4.1",
|
||||
"date": "2025-10-16T07:21:53Z"
|
||||
},
|
||||
{
|
||||
"name": "booklore-app/booklore",
|
||||
"version": "v1.8.1",
|
||||
@@ -164,11 +254,6 @@
|
||||
"version": "v1.0.23",
|
||||
"date": "2025-10-20T19:51:33Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisbenincasa/tunarr",
|
||||
"version": "v0.23.0-alpha.16",
|
||||
"date": "2025-10-20T19:29:20Z"
|
||||
},
|
||||
{
|
||||
"name": "MediaBrowser/Emby.Releases",
|
||||
"version": "4.9.1.80",
|
||||
@@ -179,16 +264,6 @@
|
||||
"version": "v1.91.0-pre",
|
||||
"date": "2025-10-20T16:18:51Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/uptime-kuma",
|
||||
"version": "2.0.1",
|
||||
"date": "2025-10-20T16:11:12Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisvel/tududi",
|
||||
"version": "v0.84.1",
|
||||
"date": "2025-10-20T15:32:24Z"
|
||||
},
|
||||
{
|
||||
"name": "rclone/rclone",
|
||||
"version": "v1.71.2",
|
||||
@@ -259,11 +334,6 @@
|
||||
"version": "v13.0.0",
|
||||
"date": "2025-10-19T10:03:18Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Prowlarr/Prowlarr",
|
||||
"version": "v2.0.5.5160",
|
||||
@@ -289,11 +359,6 @@
|
||||
"version": "v2025-10-18",
|
||||
"date": "2025-10-18T20:35:54Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.5",
|
||||
"date": "2025-09-27T20:59:46Z"
|
||||
},
|
||||
{
|
||||
"name": "project-zot/zot",
|
||||
"version": "v2.1.10",
|
||||
@@ -304,11 +369,6 @@
|
||||
"version": "v1.42.1",
|
||||
"date": "2025-10-18T18:31:38Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.1.29",
|
||||
"date": "2025-10-18T17:35:19Z"
|
||||
},
|
||||
{
|
||||
"name": "Notifiarr/notifiarr",
|
||||
"version": "v0.9.0",
|
||||
@@ -344,11 +404,6 @@
|
||||
"version": "v1.19.17",
|
||||
"date": "2025-10-17T23:40:02Z"
|
||||
},
|
||||
{
|
||||
"name": "gtsteffaniak/filebrowser",
|
||||
"version": "v0.8.9-beta",
|
||||
"date": "2025-10-17T21:51:21Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.10.3",
|
||||
@@ -369,31 +424,11 @@
|
||||
"version": "v4.6.1",
|
||||
"date": "2025-10-17T15:21:59Z"
|
||||
},
|
||||
{
|
||||
"name": "docker/compose",
|
||||
"version": "v2.40.1",
|
||||
"date": "2025-10-17T13:42:04Z"
|
||||
},
|
||||
{
|
||||
"name": "neo4j/neo4j",
|
||||
"version": "5.26.14",
|
||||
"date": "2025-10-17T12:38:22Z"
|
||||
},
|
||||
{
|
||||
"name": "mattermost/mattermost",
|
||||
"version": "server/public/v0.1.21",
|
||||
"date": "2025-10-16T09:46:16Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "coverity-w43-4.14.0",
|
||||
"date": "2025-10-17T09:07:27Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/prometheus",
|
||||
"version": "v0.307.1",
|
||||
"date": "2025-10-17T08:41:04Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v11.5.2",
|
||||
@@ -426,19 +461,14 @@
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.12.6-rc1",
|
||||
"date": "2025-10-16T16:36:25Z"
|
||||
"version": "v0.12.6",
|
||||
"date": "2025-10-16T20:07:41Z"
|
||||
},
|
||||
{
|
||||
"name": "minio/minio",
|
||||
"version": "RELEASE.2025-10-15T17-29-55Z",
|
||||
"date": "2025-10-16T19:33:51Z"
|
||||
},
|
||||
{
|
||||
"name": "SigNoz/signoz",
|
||||
"version": "v0.98.0-rc.1",
|
||||
"date": "2025-10-16T17:49:50Z"
|
||||
},
|
||||
{
|
||||
"name": "open-webui/open-webui",
|
||||
"version": "v0.6.34",
|
||||
@@ -449,11 +479,6 @@
|
||||
"version": "v3.2.8",
|
||||
"date": "2025-10-16T14:21:48Z"
|
||||
},
|
||||
{
|
||||
"name": "rcourtman/Pulse",
|
||||
"version": "v4.24.0",
|
||||
"date": "2025-10-16T09:08:47Z"
|
||||
},
|
||||
{
|
||||
"name": "zitadel/zitadel",
|
||||
"version": "v4.4.0",
|
||||
@@ -549,11 +574,6 @@
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-10-13T19:59:30Z"
|
||||
},
|
||||
{
|
||||
"name": "sabnzbd/sabnzbd",
|
||||
"version": "4.5.3",
|
||||
"date": "2025-08-25T13:59:56Z"
|
||||
},
|
||||
{
|
||||
"name": "node-red/node-red",
|
||||
"version": "4.1.1",
|
||||
@@ -584,11 +604,6 @@
|
||||
"version": "v0.10.4",
|
||||
"date": "2025-10-11T19:53:39Z"
|
||||
},
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.1.2.3-2.1.2.3_beta_2025-10-11",
|
||||
"date": "2025-10-11T06:49:43Z"
|
||||
},
|
||||
{
|
||||
"name": "0xERR0R/blocky",
|
||||
"version": "v0.27.0",
|
||||
@@ -709,11 +724,6 @@
|
||||
"version": "v0.15.1",
|
||||
"date": "2025-10-07T20:30:56Z"
|
||||
},
|
||||
{
|
||||
"name": "thecfu/scraparr",
|
||||
"version": "v2.2.5",
|
||||
"date": "2025-10-07T12:34:31Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v1.13.1",
|
||||
@@ -734,11 +744,6 @@
|
||||
"version": "v2.2.2",
|
||||
"date": "2025-10-06T21:31:07Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-ui@15.8.4",
|
||||
"date": "2025-10-06T15:41:49Z"
|
||||
},
|
||||
{
|
||||
"name": "bunkerity/bunkerweb",
|
||||
"version": "v1.6.5",
|
||||
@@ -944,11 +949,6 @@
|
||||
"version": "v0.23.2",
|
||||
"date": "2025-09-18T17:18:59Z"
|
||||
},
|
||||
{
|
||||
"name": "NLnetLabs/unbound",
|
||||
"version": "release-1.24.0",
|
||||
"date": "2025-09-18T08:36:55Z"
|
||||
},
|
||||
{
|
||||
"name": "eclipse-mosquitto/mosquitto",
|
||||
"version": "2.1.0-test1",
|
||||
|
||||
@@ -13,15 +13,11 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Kavita"
|
||||
cd /opt
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
$STD tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner
|
||||
msg_ok "Installed Kavita"
|
||||
fetch_and_deploy_gh_release "Kavita" "Kareadita/Kavita" "prebuild" "latest" "/opt/Kavita" "kavita-linux-x64.tar.gz"
|
||||
|
||||
msg_info "Creating Service"
|
||||
service_path="/etc/systemd/system/kavita.service"
|
||||
echo "[Unit]
|
||||
cat <<EOF >/etc/systemd/system/kavita.service
|
||||
[Unit]
|
||||
Description=Kavita Server
|
||||
After=network.target
|
||||
|
||||
@@ -34,15 +30,17 @@ KillMode=process
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target" >$service_path
|
||||
chmod +x /opt/Kavita/* && chown root /opt/Kavita/*
|
||||
systemctl enable --now -q kavita.service
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
chmod +x /opt/Kavita/Kavita && chown root:root /opt/Kavita/Kavita
|
||||
systemctl enable -q --now kavita
|
||||
msg_ok "Created Service"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
|
||||
msg_info "Cleaning up"
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
$STD apt -y autoremove
|
||||
$STD apt -y autoclean
|
||||
$STD apt -y clean
|
||||
msg_ok "Cleaned"
|
||||
|
||||
@@ -14,40 +14,25 @@ network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt-get install -y \
|
||||
$STD apt install -y \
|
||||
apt-transport-https \
|
||||
apache2 \
|
||||
git \
|
||||
expect \
|
||||
composer \
|
||||
lsb-release
|
||||
expect
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
setup_mysql
|
||||
|
||||
msg_info "Adding PHP8.4 Repository"
|
||||
$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
|
||||
$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb
|
||||
$STD sh -c '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
|
||||
msg_ok "Added PHP8.4 Repository"
|
||||
|
||||
msg_info "Installing PHP"
|
||||
$STD apt-get remove -y php8.2*
|
||||
$STD apt-get install -y \
|
||||
php8.4 \
|
||||
php8.4-{gd,mysql,mbstring,bcmath,xml,curl,zip,intl} \
|
||||
libapache2-mod-php8.4
|
||||
msg_ok "Installed PHP"
|
||||
setup_mariadb
|
||||
PHP_VERSION="8.4" PHP_MODULE="mysql" PHP_APACHE="YES" setup_php
|
||||
setup_composer
|
||||
|
||||
msg_info "Setting up database"
|
||||
DB_NAME=kimai_db
|
||||
DB_USER=kimai
|
||||
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
|
||||
MYSQL_VERSION=$(mysql --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
|
||||
$STD mysql -u root -e "CREATE DATABASE $DB_NAME;"
|
||||
$STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
|
||||
$STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
||||
MYSQL_VERSION=$(mariadb --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
|
||||
$STD mariadb -e "CREATE DATABASE $DB_NAME;"
|
||||
$STD mariadb -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
|
||||
$STD mariadb -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
|
||||
{
|
||||
echo "Kimai-Credentials"
|
||||
echo "Kimai Database User: $DB_USER"
|
||||
@@ -56,11 +41,9 @@ $STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH
|
||||
} >>~/kimai.creds
|
||||
msg_ok "Set up database"
|
||||
|
||||
msg_info "Installing Kimai (Patience)"
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o "${RELEASE}".zip
|
||||
$STD unzip "${RELEASE}".zip
|
||||
mv kimai-"${RELEASE}" /opt/kimai
|
||||
fetch_and_deploy_gh_release "kimai" "kimai/kimai"
|
||||
|
||||
msg_info "Setup Kimai"
|
||||
cd /opt/kimai
|
||||
echo "export COMPOSER_ALLOW_SUPERUSER=1" >>~/.bashrc
|
||||
source ~/.bashrc
|
||||
@@ -92,8 +75,6 @@ admin_lte:
|
||||
options:
|
||||
default_avatar: build/apple-touch-icon.png
|
||||
EOF
|
||||
|
||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
||||
msg_ok "Installed Kimai"
|
||||
|
||||
msg_info "Creating Service"
|
||||
@@ -131,6 +112,7 @@ customize
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf "${RELEASE}".zip
|
||||
$STD apt-get -y autoremove
|
||||
$STD apt-get -y autoclean
|
||||
$STD apt -y autoremove
|
||||
$STD apt -y autoclean
|
||||
$STD apt -y clean
|
||||
msg_ok "Cleaned"
|
||||
|
||||
@@ -33,7 +33,7 @@ msg_info "Installing Deno"
|
||||
export DENO_INSTALL="/usr/local"
|
||||
curl -fsSL https://deno.land/install.sh | $STD sh -s -- -y
|
||||
[[ ":$PATH:" != *":/usr/local/bin:"* ]] &&
|
||||
echo 'export PATH="/usr/local/bin:$PATH"' >>~/.bashrc &&
|
||||
echo -e "\nexport PATH=\"/usr/local/bin:\$PATH\"" >>~/.bashrc &&
|
||||
source ~/.bashrc
|
||||
msg_ok "Installed Deno"
|
||||
|
||||
|
||||
@@ -19,11 +19,11 @@ msg_ok "Installed Dependencies"
|
||||
|
||||
msg_info "Checking CPU Features"
|
||||
if lscpu | grep -q 'avx'; then
|
||||
MONGODB_VERSION="7.0"
|
||||
msg_ok "AVX detected: Using MongoDB 7.0"
|
||||
MONGODB_VERSION="8.0"
|
||||
msg_ok "AVX detected: Using MongoDB 8.0"
|
||||
MONGO_VERSION="8.0" setup_mongodb
|
||||
else
|
||||
msg_error "No AVX detected: TP-Link Canceled Support for Old MongoDB for Debian 12\n https://www.tp-link.com/baltic/support/faq/4160/"
|
||||
exit 0
|
||||
MONGO_VERSION="4.4" setup_mongodb
|
||||
fi
|
||||
|
||||
msg_info "Installing Azul Zulu Java"
|
||||
@@ -34,27 +34,15 @@ $STD apt update
|
||||
$STD apt -y install zulu21-jre-headless
|
||||
msg_ok "Installed Azul Zulu Java"
|
||||
|
||||
msg_info "Installing libssl (if needed)"
|
||||
|
||||
if ! dpkg -l | grep -q 'libssl1.1'; then
|
||||
msg_info "Installing libssl (if needed)"
|
||||
curl -fsSL "https://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.1_1.1.1w-0+deb11u4_amd64.deb" -o "/tmp/libssl.deb"
|
||||
$STD dpkg -i /tmp/libssl.deb
|
||||
rm -f /tmp/libssl.deb
|
||||
msg_ok "Installed libssl1.1"
|
||||
fi
|
||||
|
||||
msg_info "Installing MongoDB $MONGODB_VERSION"
|
||||
curl -fsSL "https://www.mongodb.org/static/pgp/server-${MONGODB_VERSION}.asc" | gpg --dearmor >/usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg
|
||||
cat <<EOF >/etc/apt/sources.list.d/mongodb-org-${MONGODB_VERSION}.sources
|
||||
Types: deb
|
||||
URIs: http://repo.mongodb.org/apt/debian
|
||||
Suites: $(grep '^VERSION_CODENAME=' /etc/os-release | cut -d'=' -f2)/mongodb-org/${MONGODB_VERSION}
|
||||
Components: main
|
||||
Signed-By: /usr/share/keyrings/mongodb-server-${MONGODB_VERSION}.gpg
|
||||
EOF
|
||||
$STD apt update
|
||||
$STD apt install -y mongodb-org
|
||||
msg_ok "Installed MongoDB $MONGODB_VERSION"
|
||||
|
||||
msg_info "Installing Omada Controller"
|
||||
OMADA_URL=$(curl -fsSL "https://support.omadanetworks.com/en/download/software/omada-controller/" |
|
||||
grep -o 'https://static\.tp-link\.com/upload/software/[^"]*linux_x64[^"]*\.deb' |
|
||||
|
||||
@@ -13,19 +13,10 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y \
|
||||
ca-certificates \
|
||||
software-properties-common \
|
||||
apt-transport-https \
|
||||
lsb-release \
|
||||
php-{opcache,curl,gd,mbstring,xml,bcmath,intl,zip,xsl,pgsql} \
|
||||
libapache2-mod-php \
|
||||
composer
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
|
||||
PG_VERSION="16" setup_postgresql
|
||||
PHP_VERSION="8.4" PHP_APACHE="YES" PHP_MODULE="xsl,pgsql" setup_php
|
||||
setup_composer
|
||||
|
||||
msg_info "Setting up PHP"
|
||||
PHPVER=$(php -r 'echo PHP_MAJOR_VERSION . "." . PHP_MINOR_VERSION . "\n";')
|
||||
|
||||
2323
misc/tools.func
2323
misc/tools.func
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user