Compare commits

..

11 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
ce33e59bf7 Update CHANGELOG.md (#8930)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-07 00:14:05 +00:00
community-scripts-pr-app[bot]
af432445e1 Update versions.json (#8929)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-07 01:13:43 +01:00
community-scripts-pr-app[bot]
a68cfab83f Update CHANGELOG.md (#8923)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-06 19:42:57 +00:00
Slaviša Arežina
d1ca42a403 Refactor: Graylog (#8912)
* Refactor

* Update graylog.sh

* Update graylog-install.sh
2025-11-06 20:42:35 +01:00
community-scripts-pr-app[bot]
2909a570b3 Update CHANGELOG.md (#8921)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-06 17:52:29 +00:00
Slaviša Arežina
a545cad897 Remove duplicate server_path_prefix configuration (#8919) 2025-11-06 18:52:02 +01:00
community-scripts-pr-app[bot]
b7bc5831b4 Update CHANGELOG.md (#8920)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-06 17:51:09 +00:00
Slaviša Arežina
d4d175d689 Change directory to /opt/grist before build steps (#8913) 2025-11-06 18:50:46 +01:00
CanbiZ
b16501652c Create temp file for SonarQube download
Added temporary file creation for SonarQube installation.
2025-11-06 15:54:37 +01:00
community-scripts-pr-app[bot]
003d6327de Update CHANGELOG.md (#8909)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-11-06 13:29:53 +00:00
Chris
602fbaf79e Jotty hotfix: SSO_FALLBACK_LOCAL value (#8907) 2025-11-06 14:29:26 +01:00
106 changed files with 649 additions and 457 deletions

View File

@@ -10,18 +10,27 @@
> [!CAUTION] > [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes. Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-11-07
## 2025-11-06 ## 2025-11-06
### 🚀 Updated Scripts ### 🚀 Updated Scripts
- #### 🐞 Bug Fixes - #### 🐞 Bug Fixes
- OpenProject: Remove duplicate server_path_prefix configuration [@tremor021](https://github.com/tremor021) ([#8919](https://github.com/community-scripts/ProxmoxVE/pull/8919))
- Grist: Fix change directory to /opt/grist before build steps [@tremor021](https://github.com/tremor021) ([#8913](https://github.com/community-scripts/ProxmoxVE/pull/8913))
- Jotty hotfix: SSO_FALLBACK_LOCAL value [@vhsdream](https://github.com/vhsdream) ([#8907](https://github.com/community-scripts/ProxmoxVE/pull/8907))
- npm: add Debian version check to update script [@MickLesk](https://github.com/MickLesk) ([#8901](https://github.com/community-scripts/ProxmoxVE/pull/8901)) - npm: add Debian version check to update script [@MickLesk](https://github.com/MickLesk) ([#8901](https://github.com/community-scripts/ProxmoxVE/pull/8901))
- #### ✨ New Features - #### ✨ New Features
- MongoDB: install script now use setup_mongodb [@MickLesk](https://github.com/MickLesk) ([#8897](https://github.com/community-scripts/ProxmoxVE/pull/8897)) - MongoDB: install script now use setup_mongodb [@MickLesk](https://github.com/MickLesk) ([#8897](https://github.com/community-scripts/ProxmoxVE/pull/8897))
- #### 🔧 Refactor
- Refactor: Graylog [@tremor021](https://github.com/tremor021) ([#8912](https://github.com/community-scripts/ProxmoxVE/pull/8912))
## 2025-11-05 ## 2025-11-05
### 🚀 Updated Scripts ### 🚀 Updated Scripts

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-8192}" var_ram="${var_ram:-8192}"
var_disk="${var_disk:-30}" var_disk="${var_disk:-30}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,15 +28,32 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop graylog-datanode systemctl stop graylog-datanode
systemctl stop graylog-server systemctl stop graylog-server
msg_info "Stopped Service" msg_info "Stopped Service"
msg_info "Updating $APP" CURRENT_VERSION=$(apt list --installed 2>/dev/null | grep graylog-server | grep -oP '\d+\.\d+\.\d+')
$STD apt-get update
$STD apt-get upgrade -y if dpkg --compare-versions "$CURRENT_VERSION" lt "6.3"; then
msg_ok "Updated $APP" MONGO_VERSION="8.0" setup_mongodb
msg_info "Updating Graylog"
$STD apt update
$STD apt upgrade -y
curl -fsSL "https://packages.graylog2.org/repo/packages/graylog-7.0-repository_latest.deb" -o "graylog-7.0-repository_latest.deb"
$STD dpkg -i graylog-7.0-repository_latest.deb
$STD apt update
$STD apt install -y graylog-server graylog-datanode
rm -f graylog-7.0-repository_latest.deb
msg_ok "Updated Graylog"
elif dpkg --compare-versions "$CURRENT_VERSION" ge "7.0"; then
msg_info "Updating Graylog"
$STD apt update
$STD apt upgrade -y
msg_ok "Updated Graylog"
fi
msg_info "Starting Service" msg_info "Starting Service"
systemctl start graylog-datanode systemctl start graylog-datanode

View File

@@ -47,6 +47,7 @@ function update_script() {
cp -r /opt/grist_bak/docs/* /opt/grist/docs/ cp -r /opt/grist_bak/docs/* /opt/grist/docs/
cp /opt/grist_bak/grist-sessions.db /opt/grist/grist-sessions.db cp /opt/grist_bak/grist-sessions.db /opt/grist/grist-sessions.db
cp /opt/grist_bak/landing.db /opt/grist/landing.db cp /opt/grist_bak/landing.db /opt/grist/landing.db
cd /opt/grist
$STD yarn install $STD yarn install
$STD yarn run build:prod $STD yarn run build:prod
$STD yarn run install:python $STD yarn run install:python

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -33,7 +33,7 @@ function update_script() {
systemctl stop healthchecks systemctl stop healthchecks
msg_ok "Stopped Services" msg_ok "Stopped Services"
PYTHON_VERSION="3.12" setup_uv setup_uv
fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks" fetch_and_deploy_gh_release "healthchecks" "healthchecks/healthchecks"
msg_info "Updating healthchecks" msg_info "Updating healthchecks"
@@ -45,6 +45,7 @@ function update_script() {
$STD uv run -- python manage.py collectstatic --noinput $STD uv run -- python manage.py collectstatic --noinput
$STD uv run -- python manage.py compress $STD uv run -- python manage.py compress
msg_ok "Updated healthchecks" msg_ok "Updated healthchecks"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start healthchecks systemctl start healthchecks
systemctl restart caddy systemctl restart caddy

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-3}"
var_ram="${var_ram:-6144}" var_ram="${var_ram:-6144}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-16}" var_disk="${var_disk:-16}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating ${APP} LXC"
$STD apt update $STD apt-get update
$STD apt install -y homebridge $STD apt-get install -y homebridge
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-5}" var_disk="${var_disk:-5}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -47,12 +47,15 @@ function update_script() {
$STD php asatru plants:attributes $STD php asatru plants:attributes
$STD php asatru calendar:classes $STD php asatru calendar:classes
chown -R www-data:www-data /opt/hortusfox chown -R www-data:www-data /opt/hortusfox
rm -r /opt/hortusfox-backup
msg_ok "Updated HortusFox" msg_ok "Updated HortusFox"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start apache2 systemctl start apache2
msg_ok "Started Service" msg_ok "Started Service"
msg_info "Cleaning up"
rm -r /opt/hortusfox-backup
msg_ok "Cleaned"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
fi fi
exit exit

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating $APP LXC" msg_info "Updating $APP LXC"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "Updated $APP LXC" msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating ${APP} LXC"
$STD apt update $STD apt-get update
$STD apt install -y hyperion $STD apt-get install -y hyperion
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -54,10 +54,10 @@ EOF
if [[ -f /etc/apt/preferences.d/immich ]]; then if [[ -f /etc/apt/preferences.d/immich ]]; then
rm /etc/apt/preferences.d/immich rm /etc/apt/preferences.d/immich
fi fi
$STD apt update $STD apt-get update
msg_ok "Added Debian Testing repo" msg_ok "Added Debian Testing repo"
msg_info "Installing libmimalloc3" msg_info "Installing libmimalloc3"
$STD apt install -t testing --no-install-recommends libmimalloc3 $STD apt-get install -t testing --no-install-recommends libmimalloc3
msg_ok "Installed libmimalloc3" msg_ok "Installed libmimalloc3"
fi fi
@@ -114,7 +114,7 @@ EOF
msg_ok "Upgraded VectorChord to v${VCHORD_RELEASE}" msg_ok "Upgraded VectorChord to v${VCHORD_RELEASE}"
fi fi
if ! dpkg -l | grep -q ccache; then if ! dpkg -l | grep -q ccache; then
$STD apt install -yqq ccache $STD apt-get install -yqq ccache
fi fi
INSTALL_DIR="/opt/${APP}" INSTALL_DIR="/opt/${APP}"
@@ -213,6 +213,12 @@ EOF
chown -R immich:immich "$INSTALL_DIR" chown -R immich:immich "$INSTALL_DIR"
msg_ok "Updated ${APP} to v${RELEASE}" msg_ok "Updated ${APP} to v${RELEASE}"
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt clean -y
msg_ok "Cleaned"
systemctl restart immich-ml immich-web systemctl restart immich-ml immich-web
fi fi
exit exit
@@ -266,7 +272,7 @@ function compile_libjxl() {
function compile_libheif() { function compile_libheif() {
SOURCE=${SOURCE_DIR}/libheif SOURCE=${SOURCE_DIR}/libheif
if ! dpkg -l | grep -q libaom; then if ! dpkg -l | grep -q libaom; then
$STD apt install -y libaom-dev $STD apt-get install -y libaom-dev
local update="required" local update="required"
fi fi
: "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}" : "${LIBHEIF_REVISION:=$(jq -cr '.revision' "$BASE_DIR"/server/sources/libheif.json)}"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,8 +28,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-6}" var_disk="${var_disk:-6}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -29,8 +29,8 @@ function update_script() {
exit exit
fi fi
msg_info "Updating $APP" msg_info "Updating $APP"
$STD apt update $STD apt-get update
$STD apt install --only-upgrade inventree -y $STD apt-get install --only-upgrade inventree -y
msg_ok "Updated $APP" msg_ok "Updated $APP"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,9 +28,9 @@ function update_script() {
exit exit
fi fi
msg_info "Updating ${APP} LXC" msg_info "Updating ${APP} LXC"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "Updated Successfully" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -26,13 +26,14 @@ function update_script() {
if [[ ! -f /etc/itsm-ng/config_db.php ]]; then if [[ ! -f /etc/itsm-ng/config_db.php ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit 1 exit
fi fi
msg_info "Updating LXC" msg_info "Updating ${APP} LXC"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_disk="${var_disk:-2}"
var_cpu="${var_cpu:-1}" var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-0}" var_unprivileged="${var_unprivileged:-0}"
header_info "$APP" header_info "$APP"

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-512}" var_ram="${var_ram:-512}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,24 +28,24 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
if [ ! -f /opt/.env ]; then if [ ! -f /opt/.env ]; then
sed -i 's|^Environment="DisableRootWarning=true"$|EnvironmentFile="/opt/.env"|' /etc/systemd/system/jackett.service sed -i 's|^Environment="DisableRootWarning=true"$|EnvironmentFile="/opt/.env"|' /etc/systemd/system/jackett.service
cat <<EOF >/opt/.env cat <<EOF >/opt/.env
DisableRootWarning=true DisableRootWarning=true
EOF EOF
fi fi
if check_for_gh_release "Jackett" "Jackett/Jackett"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop jackett systemctl stop jackett
msg_ok "Stopped Service" msg_ok "Stopped Service"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz" rm -rf /opt/Jackett
fetch_and_deploy_gh_release "jackett" "Jackett/Jackett" "prebuild" "latest" "/opt/Jackett" "Jackett.Binaries.LinuxAMDx64.tar.gz"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start jackett systemctl start jackett
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -30,8 +30,8 @@ function update_script() {
fi fi
msg_info "Updating OS" msg_info "Updating OS"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "OS updated, you can now update Jeedom from the Web UI." msg_ok "OS updated, you can now update Jeedom from the Web UI."
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -27,14 +27,11 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating $APP LXC"
JAVA_VERSION="21" setup_java $STD apt-get update
$STD apt-get -y upgrade
msg_info "Updating Jenkings" msg_ok "Updated $APP LXC"
$STD apt update msg_ok "Updated successfully!"
$STD apt -y upgrade
msg_ok "Updated Jenkins"
msg_ok "Update Successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-20}" var_disk="${var_disk:-20}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -35,18 +35,18 @@ function update_script() {
fetch_and_deploy_gh_release "joplin-server" "laurent22/joplin" "tarball" "latest" fetch_and_deploy_gh_release "joplin-server" "laurent22/joplin" "tarball" "latest"
msg_info "Updating Joplin-Server" msg_info "Updating ${APP}"
cd /opt/joplin-server cd /opt/joplin-server
sed -i "/onenote-converter/d" packages/lib/package.json sed -i "/onenote-converter/d" packages/lib/package.json
$STD yarn config set --home enableTelemetry 0 $STD yarn config set --home enableTelemetry 0
export BUILD_SEQUENCIAL=1 export BUILD_SEQUENCIAL=1
$STD yarn install --inline-builds $STD yarn install --inline-builds
msg_ok "Updated Joplin-Server" msg_ok "Updated ${APP}"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start joplin-server systemctl start joplin-server
msg_ok "Started Services" msg_ok "Started Services"
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-256}" var_ram="${var_ram:-256}"
var_disk="${var_disk:-2}" var_disk="${var_disk:-2}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -34,7 +34,7 @@ function update_script() {
if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then if check_for_gh_release "kapowarr" "Casvt/Kapowarr"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop kapowarr systemctl stop kapowarr
msg_ok "Stopped Service" msg_info "Stopped Service"
msg_info "Creating Backup" msg_info "Creating Backup"
mv /opt/kapowarr/db /opt/ mv /opt/kapowarr/db /opt/
@@ -49,7 +49,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start kapowarr systemctl start kapowarr
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Update Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -38,11 +38,14 @@ function update_script() {
msg_ok "Updated yt-dlp" msg_ok "Updated yt-dlp"
msg_info "Prepare update" msg_info "Prepare update"
$STD apt install -y graphicsmagick ghostscript if [[ -f /opt/${APP}_version.txt && "$(cat /opt/${APP}_version.txt)" < "0.23.0" ]]; then
$STD apt-get install -y graphicsmagick ghostscript
fi
if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then if [[ -f /opt/karakeep/.env ]] && [[ ! -f /etc/karakeep/karakeep.env ]]; then
mkdir -p /etc/karakeep mkdir -p /etc/karakeep
mv /opt/karakeep/.env /etc/karakeep/karakeep.env mv /opt/karakeep/.env /etc/karakeep/karakeep.env
fi fi
rm -rf /opt/karakeep
msg_ok "Update prepared" msg_ok "Update prepared"
if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then if grep -q "start:prod" /etc/systemd/system/karakeep-workers.service; then
@@ -62,7 +65,7 @@ function update_script() {
MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)" MODULE_VERSION="$(jq -r '.packageManager | split("@")[1]' /opt/karakeep/package.json)"
NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs NODE_VERSION="22" NODE_MODULE="pnpm@${MODULE_VERSION}" setup_nodejs
msg_info "Updating Karakeep" msg_info "Updating ${APP}"
corepack enable corepack enable
export PUPPETEER_SKIP_DOWNLOAD="true" export PUPPETEER_SKIP_DOWNLOAD="true"
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true" export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD="true"
@@ -83,12 +86,17 @@ function update_script() {
$STD pnpm migrate $STD pnpm migrate
$STD pnpm store prune $STD pnpm store prune
sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env sed -i "s/^SERVER_VERSION=.*$/SERVER_VERSION=${CHECK_UPDATE_RELEASE}/" /etc/karakeep/karakeep.env
msg_ok "Updated Karakeep" msg_ok "Updated ${APP}"
msg_info "Starting Services" msg_info "Starting Services"
systemctl start karakeep-browser karakeep-workers karakeep-web systemctl start karakeep-browser karakeep-workers karakeep-web
msg_ok "Started Services" msg_ok "Started Services"
msg_ok "Updated Successfully!"
msg_info "Cleaning up"
$STD apt-get autoremove -y
$STD apt-get autoclean -y
msg_ok "Cleaned"
msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-8192}" var_ram="${var_ram:-8192}"
var_disk="${var_disk:-30}" var_disk="${var_disk:-30}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-0}" var_unprivileged="${var_unprivileged:-0}"
var_fuse="${var_fuse:-yes}" var_fuse="${var_fuse:-yes}"
var_tun="${var_tun:-yes}" var_tun="${var_tun:-yes}"
@@ -29,10 +29,11 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
msg_info "Updating LXC" msg_info "Updating $APP LXC"
$STD apt update $STD apt-get update
$STD apt -y upgrade $STD apt-get -y upgrade
msg_ok "Updated LXC" msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,9 +28,9 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "keycloak_app" "keycloak/keycloak"; then if check_for_gh_release "keycloak_app" "keycloak/keycloak"; then
msg_info "Stopping Service" msg_info "Stopping Keycloak"
systemctl stop keycloak systemctl stop keycloak
msg_ok "Stopped Service" msg_ok "Stopped Keycloak"
msg_info "Updating packages" msg_info "Updating packages"
$STD apt-get update $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" fetch_and_deploy_gh_release "keycloak_app" "keycloak/keycloak" "prebuild" "latest" "/opt/keycloak" "keycloak-*.tar.gz"
msg_info "Updating Keycloak" msg_info "Updating ${APP}"
cd /opt cd /opt
cp -a keycloak.old/conf/. keycloak/conf/ cp -a keycloak.old/conf/. keycloak/conf/
cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true cp -a keycloak.old/providers/. keycloak/providers/ 2>/dev/null || true
cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true cp -a keycloak.old/themes/. keycloak/themes/ 2>/dev/null || true
msg_ok "Updated Keycloak" msg_ok "Updated ${APP} LXC"
msg_info "Restarting Service" msg_info "Restarting Keycloak"
systemctl restart keycloak systemctl restart keycloak
msg_ok "Restarted Service" msg_ok "Restarted Keycloak"
msg_info "Cleaning up" msg_info "Cleaning up"
rm -rf keycloak.old rm -rf keycloak.old

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-7}" var_disk="${var_disk:-7}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -23,16 +23,17 @@ function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if ! command -v lsb_release; then
apt install -y lsb-release
fi
if [[ ! -d /opt/kimai ]]; then if [[ ! -d /opt/kimai ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
PHP_VERSION="8.4" PHP_MODULE="mysql" PHP_APACHE="YES" setup_php CURRENT_PHP=$(php -v 2>/dev/null | awk '/^PHP/{print $2}' | cut -d. -f1,2)
setup_composer if [[ "$CURRENT_PHP" != "8.4" ]]; then
msg_info "Migrating PHP $CURRENT_PHP to 8.4"
PHP_VERSION="8.4" PHP_MODULE="gd,mysql,mbstring,bcmath,xml,curl,zip,intl,fpm" PHP_APACHE="YES" setup_php
msg_ok "Migrated PHP $CURRENT_PHP to 8.4"
fi
if check_for_gh_release "kimai" "kimai/kimai"; then if check_for_gh_release "kimai" "kimai/kimai"; then
BACKUP_DIR="/opt/kimai_backup" BACKUP_DIR="/opt/kimai_backup"
@@ -70,9 +71,8 @@ function update_script() {
chmod -R g+rw /opt/* chmod -R g+rw /opt/*
chown -R www-data:www-data /opt/* chown -R www-data:www-data /opt/*
chmod -R 777 /opt/* chmod -R 777 /opt/*
rm -rf "$BACKUP_DIR"
msg_ok "Setup Permissions" msg_ok "Setup Permissions"
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-1024}" var_ram="${var_ram:-1024}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -38,7 +38,7 @@ function update_script() {
fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection" fetch_and_deploy_gh_release "koillection" "benjaminjonard/koillection"
msg_info "Updating Koillection" msg_info "Updating ${APP}"
cd /opt/koillection cd /opt/koillection
cp -r /opt/koillection-backup/.env.local /opt/koillection cp -r /opt/koillection-backup/.env.local /opt/koillection
cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/ cp -r /opt/koillection-backup/public/uploads/. /opt/koillection/public/uploads/
@@ -50,7 +50,7 @@ function update_script() {
$STD yarn install $STD yarn install
$STD yarn build $STD yarn build
chown -R www-data:www-data /opt/koillection/public/uploads chown -R www-data:www-data /opt/koillection/public/uploads
msg_ok "Updated Koillection" msg_ok "Updated $APP"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start apache2 systemctl start apache2
@@ -59,7 +59,7 @@ function update_script() {
msg_info "Cleaning up" msg_info "Cleaning up"
rm -r /opt/koillection-backup rm -r /opt/koillection-backup
msg_ok "Cleaned" msg_ok "Cleaned"
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-8}" var_disk="${var_disk:-8}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -37,7 +37,7 @@ function update_script() {
cp /opt/kometa/config/config.yml /opt cp /opt/kometa/config/config.yml /opt
msg_ok "Backup completed" msg_ok "Backup completed"
PYTHON_VERSION="3.13" setup_uv PYTHON_VERSION="3.12" setup_uv
fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa" fetch_and_deploy_gh_release "kometa" "Kometa-Team/Kometa"
msg_info "Updating Kometa" msg_info "Updating Kometa"
@@ -49,7 +49,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start kometa systemctl start kometa
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Update Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -39,7 +39,7 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start komga systemctl start komga
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated Successfully!" msg_ok "Updated successfully!"
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -26,14 +26,14 @@ function update_script() {
[[ -d /opt/komodo ]] || { [[ -d /opt/komodo ]] || {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit 1 exit
} }
msg_info "Updating Komodo" msg_info "Updating ${APP}"
COMPOSE_FILE=$(find /opt/komodo -maxdepth 1 -type f -name '*.compose.yaml' ! -name 'compose.env' | head -n1) COMPOSE_FILE=$(find /opt/komodo -maxdepth 1 -type f -name '*.compose.yaml' ! -name 'compose.env' | head -n1)
if [[ -z "$COMPOSE_FILE" ]]; then if [[ -z "$COMPOSE_FILE" ]]; then
msg_error "No valid compose file found in /opt/komodo!" msg_error "No valid compose file found in /opt/komodo!"
exit 1 exit
fi fi
COMPOSE_BASENAME=$(basename "$COMPOSE_FILE") COMPOSE_BASENAME=$(basename "$COMPOSE_FILE")
@@ -42,26 +42,26 @@ function update_script() {
echo -e "${YW}This configuration is no longer supported since Komodo v1.18.0.${CL}" echo -e "${YW}This configuration is no longer supported since Komodo v1.18.0.${CL}"
echo -e "${YW}Please follow the migration guide:${CL}" echo -e "${YW}Please follow the migration guide:${CL}"
echo -e "${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/5689${CL}\n" echo -e "${BGN}https://github.com/community-scripts/ProxmoxVE/discussions/5689${CL}\n"
exit 1 exit
fi fi
BACKUP_FILE="/opt/komodo/${COMPOSE_BASENAME}.bak_$(date +%Y%m%d_%H%M%S)" BACKUP_FILE="/opt/komodo/${COMPOSE_BASENAME}.bak_$(date +%Y%m%d_%H%M%S)"
cp "$COMPOSE_FILE" "$BACKUP_FILE" || { cp "$COMPOSE_FILE" "$BACKUP_FILE" || {
msg_error "Failed to create backup of ${COMPOSE_BASENAME}!" msg_error "Failed to create backup of ${COMPOSE_BASENAME}!"
exit 1 exit
} }
GITHUB_URL="https://raw.githubusercontent.com/moghtech/komodo/main/compose/${COMPOSE_BASENAME}" GITHUB_URL="https://raw.githubusercontent.com/moghtech/komodo/main/compose/${COMPOSE_BASENAME}"
if ! curl -fsSL "$GITHUB_URL" -o "$COMPOSE_FILE"; then if ! curl -fsSL "$GITHUB_URL" -o "$COMPOSE_FILE"; then
msg_error "Failed to download ${COMPOSE_BASENAME} from GitHub!" msg_error "Failed to download ${COMPOSE_BASENAME} from GitHub!"
mv "$BACKUP_FILE" "$COMPOSE_FILE" mv "$BACKUP_FILE" "$COMPOSE_FILE"
exit 1 exit
fi fi
if ! grep -qxF 'COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env; then if ! grep -qxF 'COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env; then
sed -i '/^COMPOSE_KOMODO_IMAGE_TAG=latest$/a COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env sed -i '/^COMPOSE_KOMODO_IMAGE_TAG=latest$/a COMPOSE_KOMODO_BACKUPS_PATH=/etc/komodo/backups' /opt/komodo/compose.env
fi 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 pull
$STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d $STD docker compose -p komodo -f "$COMPOSE_FILE" --env-file /opt/komodo/compose.env up -d
msg_ok "Updated Komodo" msg_ok "Updated successfully!"
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"

View File

@@ -39,6 +39,7 @@ function update_script() {
msg_ok "Backup created" msg_ok "Backup created"
msg_info "Installing sonarqube" msg_info "Installing sonarqube"
temp_file=$(mktemp)
RELEASE=$(curl -fsSL https://api.github.com/repos/SonarSource/sonarqube/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') RELEASE=$(curl -fsSL https://api.github.com/repos/SonarSource/sonarqube/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
curl -fsSL "https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-${RELEASE}.zip" -o $temp_file curl -fsSL "https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-${RELEASE}.zip" -o $temp_file
unzip -q "$temp_file" -d /opt unzip -q "$temp_file" -d /opt

View File

@@ -23,7 +23,7 @@
"ram": 8192, "ram": 8192,
"hdd": 30, "hdd": 30,
"os": "debian", "os": "debian",
"version": "12" "version": "13"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 5, "hdd": 5,
"os": "Debian", "os": "Debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 6144, "ram": 6144,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 16, "hdd": 16,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 5, "hdd": 5,
"os": "Debian", "os": "Debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -22,8 +22,8 @@
"cpu": 1, "cpu": 1,
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": null,
"version": "13" "version": null
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 6, "hdd": 6,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 10, "hdd": 10,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 512, "ram": 512,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 4096, "ram": 4096,
"hdd": 20, "hdd": 20,
"os": "Debian", "os": "Debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 256, "ram": 256,
"hdd": 2, "hdd": 2,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 4096, "ram": 4096,
"hdd": 10, "hdd": 10,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 8192, "ram": 8192,
"hdd": 50, "hdd": 50,
"os": "Debian", "os": "Debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 7, "hdd": 7,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 1024, "ram": 1024,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 4096, "ram": 4096,
"hdd": 8, "hdd": 8,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -23,7 +23,7 @@
"ram": 2048, "ram": 2048,
"hdd": 10, "hdd": 10,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
}, },
{ {

View File

@@ -23,7 +23,7 @@
"ram": 4096, "ram": 4096,
"hdd": 4, "hdd": 4,
"os": "debian", "os": "debian",
"version": "13" "version": "12"
} }
} }
], ],

View File

@@ -1,4 +1,64 @@
[ [
{
"name": "FlowiseAI/Flowise",
"version": "flowise@3.0.10",
"date": "2025-11-06T23:10:38Z"
},
{
"name": "Ombi-app/Ombi",
"version": "v4.52.0",
"date": "2025-11-06T22:39:26Z"
},
{
"name": "rcourtman/Pulse",
"version": "v4.26.4",
"date": "2025-11-06T22:38:52Z"
},
{
"name": "open-webui/open-webui",
"version": "v0.6.36",
"date": "2025-11-06T21:45:33Z"
},
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.19.5",
"date": "2025-11-06T20:20:13Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.22.12",
"date": "2025-11-06T18:43:51Z"
},
{
"name": "MariaDB/server",
"version": "mariadb-11.8.4",
"date": "2025-11-06T17:24:30Z"
},
{
"name": "chrisvel/tududi",
"version": "v0.85.1",
"date": "2025-10-31T10:45:26Z"
},
{
"name": "HabitRPG/habitica",
"version": "v5.41.6",
"date": "2025-11-06T15:32:07Z"
},
{
"name": "pocket-id/pocket-id",
"version": "v1.15.0",
"date": "2025-11-06T15:03:22Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.11.2",
"date": "2025-11-06T12:08:24Z"
},
{
"name": "meilisearch/meilisearch",
"version": "prototype-v1.24.0.s3-snapshots-5",
"date": "2025-11-06T11:43:12Z"
},
{ {
"name": "transmission/transmission", "name": "transmission/transmission",
"version": "4.0.1-beta.1", "version": "4.0.1-beta.1",
@@ -9,11 +69,6 @@
"version": "v2.17.0-beta20", "version": "v2.17.0-beta20",
"date": "2025-11-06T10:49:56Z" "date": "2025-11-06T10:49:56Z"
}, },
{
"name": "FlowiseAI/Flowise",
"version": "flowise@3.0.9",
"date": "2025-11-06T10:27:13Z"
},
{ {
"name": "keycloak/keycloak", "name": "keycloak/keycloak",
"version": "26.4.3", "version": "26.4.3",
@@ -71,8 +126,8 @@
}, },
{ {
"name": "ollama/ollama", "name": "ollama/ollama",
"version": "v0.12.10-rc0", "version": "v0.12.10",
"date": "2025-11-05T19:58:03Z" "date": "2025-11-05T21:41:21Z"
}, },
{ {
"name": "neo4j/neo4j", "name": "neo4j/neo4j",
@@ -124,11 +179,6 @@
"version": "v4.6.4", "version": "v4.6.4",
"date": "2025-11-05T15:57:00Z" "date": "2025-11-05T15:57:00Z"
}, },
{
"name": "chrisvel/tududi",
"version": "v0.85.1",
"date": "2025-10-31T10:45:26Z"
},
{ {
"name": "Graylog2/graylog2-server", "name": "Graylog2/graylog2-server",
"version": "6.2.9", "version": "6.2.9",
@@ -209,16 +259,6 @@
"version": "v0.15.4", "version": "v0.15.4",
"date": "2025-11-04T22:34:12Z" "date": "2025-11-04T22:34:12Z"
}, },
{
"name": "chrisbenincasa/tunarr",
"version": "v0.23.0-alpha.21",
"date": "2025-11-04T22:05:17Z"
},
{
"name": "wizarrrr/wizarr",
"version": "v2025.11.1",
"date": "2025-11-04T20:55:51Z"
},
{ {
"name": "go-gitea/gitea", "name": "go-gitea/gitea",
"version": "v1.25.1", "version": "v1.25.1",
@@ -226,8 +266,8 @@
}, },
{ {
"name": "runtipi/runtipi", "name": "runtipi/runtipi",
"version": "v4.6.2", "version": "nightly",
"date": "2025-11-03T19:45:24Z" "date": "2025-11-04T19:16:17Z"
}, },
{ {
"name": "element-hq/synapse", "name": "element-hq/synapse",
@@ -244,11 +284,6 @@
"version": "v1.30.6", "version": "v1.30.6",
"date": "2025-11-04T17:41:01Z" "date": "2025-11-04T17:41:01Z"
}, },
{
"name": "meilisearch/meilisearch",
"version": "prototype-v1.24.0.s3-snapshots-4",
"date": "2025-11-04T16:46:01Z"
},
{ {
"name": "VictoriaMetrics/VictoriaMetrics", "name": "VictoriaMetrics/VictoriaMetrics",
"version": "v1.129.1", "version": "v1.129.1",
@@ -294,11 +329,6 @@
"version": "2025.10.4", "version": "2025.10.4",
"date": "2025-11-04T03:04:13Z" "date": "2025-11-04T03:04:13Z"
}, },
{
"name": "paperless-ngx/paperless-ngx",
"version": "v2.19.4",
"date": "2025-11-04T01:34:35Z"
},
{ {
"name": "hyperion-project/hyperion.ng", "name": "hyperion-project/hyperion.ng",
"version": "2.1.1", "version": "2.1.1",
@@ -539,11 +569,6 @@
"version": "350", "version": "350",
"date": "2025-10-29T09:51:00Z" "date": "2025-10-29T09:51:00Z"
}, },
{
"name": "pocket-id/pocket-id",
"version": "v1.14.2",
"date": "2025-10-29T08:37:03Z"
},
{ {
"name": "apache/cassandra", "name": "apache/cassandra",
"version": "cassandra-5.0.6", "version": "cassandra-5.0.6",
@@ -669,21 +694,11 @@
"version": "v2.7.0", "version": "v2.7.0",
"date": "2025-10-23T17:15:07Z" "date": "2025-10-23T17:15:07Z"
}, },
{
"name": "HabitRPG/habitica",
"version": "v5.41.5",
"date": "2025-10-23T15:12:42Z"
},
{ {
"name": "Kareadita/Kavita", "name": "Kareadita/Kavita",
"version": "v0.8.8.3", "version": "v0.8.8.3",
"date": "2025-10-23T12:31:49Z" "date": "2025-10-23T12:31:49Z"
}, },
{
"name": "rcourtman/Pulse",
"version": "issue-596",
"date": "2025-10-22T19:48:56Z"
},
{ {
"name": "louislam/uptime-kuma", "name": "louislam/uptime-kuma",
"version": "2.0.2", "version": "2.0.2",
@@ -799,21 +814,11 @@
"version": "RELEASE.2025-10-15T17-29-55Z", "version": "RELEASE.2025-10-15T17-29-55Z",
"date": "2025-10-16T19:33:51Z" "date": "2025-10-16T19:33:51Z"
}, },
{
"name": "open-webui/open-webui",
"version": "v0.6.34",
"date": "2025-10-16T16:55:58Z"
},
{ {
"name": "cloudreve/cloudreve", "name": "cloudreve/cloudreve",
"version": "4.9.2", "version": "4.9.2",
"date": "2025-10-16T03:24:44Z" "date": "2025-10-16T03:24:44Z"
}, },
{
"name": "Ombi-app/Ombi",
"version": "v4.47.1",
"date": "2025-01-05T21:14:23Z"
},
{ {
"name": "linkwarden/linkwarden", "name": "linkwarden/linkwarden",
"version": "v2.13.1", "version": "v2.13.1",
@@ -1204,11 +1209,6 @@
"version": "1012-08-09", "version": "1012-08-09",
"date": "2025-08-10T13:50:58Z" "date": "2025-08-10T13:50:58Z"
}, },
{
"name": "MariaDB/server",
"version": "mariadb-12.0.2",
"date": "2025-08-07T21:23:15Z"
},
{ {
"name": "TryGhost/Ghost-CLI", "name": "TryGhost/Ghost-CLI",
"version": "v1.28.3", "version": "v1.28.3",

View File

@@ -13,12 +13,12 @@ setting_up_container
network_check network_check
update_os update_os
MONGO_VERSION="7.0" setup_mongodb MONGO_VERSION="8.0" setup_mongodb
msg_info "Setup Graylog Data Node" msg_info "Setup Graylog Data Node"
PASSWORD_SECRET=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16) PASSWORD_SECRET=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16)
curl -fsSL "https://packages.graylog2.org/repo/packages/graylog-6.3-repository_latest.deb" -o "graylog-6.3-repository_latest.deb" curl -fsSL "https://packages.graylog2.org/repo/packages/graylog-7.0-repository_latest.deb" -o "graylog-7.0-repository_latest.deb"
$STD dpkg -i graylog-6.3-repository_latest.deb $STD dpkg -i graylog-7.0-repository_latest.deb
$STD apt-get update $STD apt-get update
$STD apt-get install graylog-datanode -y $STD apt-get install graylog-datanode -y
sed -i "s/password_secret =/password_secret = $PASSWORD_SECRET/g" /etc/graylog/datanode/datanode.conf sed -i "s/password_secret =/password_secret = $PASSWORD_SECRET/g" /etc/graylog/datanode/datanode.conf
@@ -42,9 +42,4 @@ msg_ok "Setup ${APPLICATION}"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm -f graylog-*-repository_latest.deb
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
libkrb5-dev \ libkrb5-dev \
build-essential \ build-essential \
git git
@@ -90,4 +90,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -20,7 +20,7 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
fetch_and_deploy_gh_release "headscale-admin" "GoodiesHQ/headscale-admin" "prebuild" "latest" "/opt/headscale-admin" "admin.zip" fetch_and_deploy_gh_release "headscale-admin" "GoodiesHQ/headscale-admin" "prebuild" "latest" "/opt/headscale-admin" "admin.zip"
msg_info "Configuring headscale-admin" msg_info "Configuring headscale-admin"
$STD apt install -y caddy $STD apt-get install -y caddy
$STD caddy stop $STD caddy stop
rm /etc/caddy/Caddyfile rm /etc/caddy/Caddyfile
cat <<'EOF' >/etc/caddy/Caddyfile cat <<'EOF' >/etc/caddy/Caddyfile
@@ -56,4 +56,8 @@ msg_ok "Service started"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
gcc \ gcc \
libpq-dev \ libpq-dev \
libcurl4-openssl-dev \ libcurl4-openssl-dev \
@@ -22,7 +22,7 @@ $STD apt install -y \
caddy caddy
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PYTHON_VERSION="3.12" setup_python setup_uv
PG_VERSION=16 setup_postgresql PG_VERSION=16 setup_postgresql
msg_info "Setup Database" msg_info "Setup Database"
@@ -32,6 +32,7 @@ DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)
SECRET_KEY="$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)" SECRET_KEY="$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)"
ADMIN_EMAIL="admin@helper-scripts.local" ADMIN_EMAIL="admin@helper-scripts.local"
ADMIN_PASSWORD="$DB_PASS" ADMIN_PASSWORD="$DB_PASS"
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';" $STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;" $STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';" $STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
@@ -128,4 +129,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -31,4 +31,8 @@ msg_ok "Service started"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
redis-server \ redis-server \
ca-certificates \ ca-certificates \
make \ make \
@@ -112,4 +112,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Setup Python3" msg_info "Setup Python3"
$STD apt install -y \ $STD apt-get install -y \
python3 \ python3 \
python3-dev \ python3-dev \
python3-pip \ python3-pip \
@@ -78,4 +78,8 @@ msg_ok "Installed Home Assistant $CORE_LATEST_VERSION"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -46,4 +46,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,21 +14,23 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y avahi-daemon $STD apt-get install -y avahi-daemon
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Setting up Homebridge Repository" msg_info "Setting up Homebridge Repository"
setup_deb822_repo \ curl -fsSL https://repo.homebridge.io/KEY.gpg | gpg --dearmor >/etc/apt/trusted.gpg.d/homebridge.gpg
"homebridge" \ echo 'deb [signed-by=/etc/apt/trusted.gpg.d/homebridge.gpg] https://repo.homebridge.io stable main' >/etc/apt/sources.list.d/homebridge.list
"https://repo.homebridge.io/KEY.gpg" \
"https://repo.homebridge.io" \
"stable"
msg_ok "Set up Homebridge Repository" msg_ok "Set up Homebridge Repository"
msg_info "Installing Homebridge" msg_info "Installing Homebridge"
$STD apt install -y homebridge $STD apt update
$STD apt-get install -y homebridge
msg_ok "Installed Homebridge" msg_ok "Installed Homebridge"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,11 +14,11 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y apache2 $STD apt-get install -y apache2
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
setup_mariadb
PHP_MODULE="exif,mysql" PHP_APACHE="YES" PHP_FPM="NO" PHP_VERSION="8.3" setup_php PHP_MODULE="exif,mysql" PHP_APACHE="YES" PHP_FPM="NO" PHP_VERSION="8.3" setup_php
setup_mariadb
setup_composer setup_composer
msg_info "Setting up database" msg_info "Setting up database"
@@ -97,4 +97,8 @@ msg_ok "Apache configured"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -13,6 +13,10 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing Dependencies"
$STD apt-get install -y jq
msg_ok "Installed Dependencies"
setup_uv setup_uv
fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io" fetch_and_deploy_gh_release "huntarr" "plexguide/Huntarr.io"
@@ -38,4 +42,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,12 +14,11 @@ network_check
update_os update_os
msg_info "Installing HyperHDR" msg_info "Installing HyperHDR"
setup_deb822_repo \ curl -fsSL https://awawa-dev.github.io/hyperhdr.public.apt.gpg.key >/usr/share/keyrings/hyperhdr.public.apt.gpg.key
"hyperhdr" \ chmod go+r /usr/share/keyrings/hyperhdr.public.apt.gpg.key
"https://awawa-dev.github.io/hyperhdr.public.apt.gpg.key" \ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hyperhdr.public.apt.gpg.key] https://awawa-dev.github.io $(awk -F= '/VERSION_CODENAME/ {print $2}' /etc/os-release) main" >/etc/apt/sources.list.d/hyperhdr.list
"https://awawa-dev.github.io" \ $STD apt-get update
"$(get_os_info codename)" $STD apt-get install -y hyperhdr
$STD apt install -y hyperhdr
msg_ok "Installed HyperHDR" msg_ok "Installed HyperHDR"
msg_info "Creating Service" msg_info "Creating Service"
@@ -42,4 +41,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -13,19 +13,25 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Setup Hyperion repository" msg_info "Installing Dependencies"
setup_deb822_repo \ $STD apt-get install -y lsb-release
"hyperion" \ $STD apt-get install -y apt-transport-https
"https://releases.hyperion-project.org/hyperion.pub.key" \ $STD apt-get install -y libpython3.11
"https://apt.releases.hyperion-project.org" \
"$(get_os_info codename)" msg_ok "Installed Dependencies"
msg_ok "Repository ready"
msg_info "Installing Hyperion" msg_info "Installing Hyperion"
$STD apt install -y hyperion curl -fsSL "https://releases.hyperion-project.org/hyperion.pub.key" | gpg --dearmor -o /usr/share/keyrings/hyperion.pub.gpg
systemctl enable --now hyperion@root echo "deb [signed-by=/usr/share/keyrings/hyperion.pub.gpg] https://apt.releases.hyperion-project.org/ $(lsb_release -cs) main" >/etc/apt/sources.list.d/hyperion.list
$STD apt-get update
$STD apt-get install -y hyperion
$STD systemctl enable --now hyperion@root
msg_ok "Installed Hyperion" msg_ok "Installed Hyperion"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get autoremove >/dev/null
$STD apt-get autoclean >/dev/null
msg_ok "Cleaned"

View File

@@ -16,7 +16,8 @@ update_os
setup_uv setup_uv
msg_info "Installing dependencies" msg_info "Installing dependencies"
$STD apt install --no-install-recommends -y \ $STD apt-get update
$STD apt-get install --no-install-recommends -y \
git \ git \
redis \ redis \
autoconf \ autoconf \
@@ -65,16 +66,21 @@ $STD apt install --no-install-recommends -y \
libwebp-dev \ libwebp-dev \
libaom-dev \ libaom-dev \
ccache ccache
curl -fsSL https://repo.jellyfin.org/jellyfin_team.gpg.key | gpg --dearmor -o /etc/apt/keyrings/jellyfin.gpg
setup_deb822_repo \ DPKG_ARCHITECTURE="$(dpkg --print-architecture)"
"jellyfin" \ export DPKG_ARCHITECTURE
"https://repo.jellyfin.org/jellyfin_team.gpg.key" \ cat <<EOF >/etc/apt/sources.list.d/jellyfin.sources
"https://repo.jellyfin.org/debian" \ Types: deb
"$(get_os_info codename)" URIs: https://repo.jellyfin.org/debian
$STD apt install -y jellyfin-ffmpeg7 Suites: trixie
ln -sf /usr/lib/jellyfin-ffmpeg/ffmpeg /usr/bin/ffmpeg Components: main
ln -sf /usr/lib/jellyfin-ffmpeg/ffprobe /usr/bin/ffprobe Architectures: ${DPKG_ARCHITECTURE}
Signed-By: /etc/apt/keyrings/jellyfin.gpg
EOF
$STD apt-get update
$STD apt-get install -y jellyfin-ffmpeg7
ln -s /usr/lib/jellyfin-ffmpeg/ffmpeg /usr/bin/ffmpeg
ln -s /usr/lib/jellyfin-ffmpeg/ffprobe /usr/bin/ffprobe
if [[ "$CTTYPE" == "0" && -d /dev/dri ]]; then if [[ "$CTTYPE" == "0" && -d /dev/dri ]]; then
chgrp video /dev/dri chgrp video /dev/dri
chmod 755 /dev/dri chmod 755 /dev/dri
@@ -88,7 +94,7 @@ read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machin
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing OpenVINO dependencies" msg_info "Installing OpenVINO dependencies"
touch ~/.openvino touch ~/.openvino
$STD apt install -y --no-install-recommends patchelf $STD apt-get install -y --no-install-recommends patchelf
tmp_dir=$(mktemp -d) tmp_dir=$(mktemp -d)
$STD pushd "$tmp_dir" $STD pushd "$tmp_dir"
curl -fsSLO https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-core_1.0.17384.11_amd64.deb curl -fsSLO https://github.com/intel/intel-graphics-compiler/releases/download/igc-1.0.17384.11/intel-igc-core_1.0.17384.11_amd64.deb
@@ -114,10 +120,10 @@ Package: *
Pin:release a=testing Pin:release a=testing
Pin-Priority: 450 Pin-Priority: 450
EOF EOF
$STD apt update $STD apt-get update
msg_ok "Configured Debian Testing repo" msg_ok "Configured Debian Testing repo"
msg_info "Installing libmimalloc3" msg_info "Installing libmimalloc3"
$STD apt install -t testing --no-install-recommends -yqq libmimalloc3 $STD apt-get install -t testing --no-install-recommends -yqq libmimalloc3
msg_ok "Installed libmimalloc3" msg_ok "Installed libmimalloc3"
PNPM_VERSION="$(curl -fsSL "https://raw.githubusercontent.com/immich-app/immich/refs/heads/main/package.json" | jq -r '.packageManager | split("@")[1]')" PNPM_VERSION="$(curl -fsSL "https://raw.githubusercontent.com/immich-app/immich/refs/heads/main/package.json" | jq -r '.packageManager | split("@")[1]')"
@@ -454,4 +460,9 @@ msg_ok "Modified user, created env file, scripts and services"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
$STD apt clean -y
msg_ok "Cleaned"

View File

@@ -13,12 +13,14 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing Dependencies"
$STD apt-get install -y lsb-base
$STD apt-get install -y lsb-release
msg_ok "Installed Dependencies"
msg_info "Setting up InfluxDB Repository" msg_info "Setting up InfluxDB Repository"
setup_deb822_repo \ curl -fsSL "https://repos.influxdata.com/influxdata-archive_compat.key" | gpg --dearmor >/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg
"influxdata" \ echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main" >/etc/apt/sources.list.d/influxdata.list
"https://repos.influxdata.com/influxdata-archive_compat.key" \
"https://repos.influxdata.com/$(get_os_info id)" \
"stable"
msg_ok "Set up InfluxDB Repository" msg_ok "Set up InfluxDB Repository"
read -r -p "${TAB3}Which version of InfluxDB to install? (1 or 2) " prompt read -r -p "${TAB3}Which version of InfluxDB to install? (1 or 2) " prompt
@@ -29,14 +31,13 @@ else
fi fi
msg_info "Installing InfluxDB" msg_info "Installing InfluxDB"
$STD apt update $STD apt-get update
if [[ $INFLUX == "2" ]]; then if [[ $INFLUX == "2" ]]; then
$STD apt install -y influxdb2 $STD apt-get install -y influxdb2
else else
$STD apt install -y influxdb $STD apt-get install -y influxdb
curl -fsSL "https://dl.influxdata.com/chronograf/releases/chronograf_1.10.8_amd64.deb" -o "/chronograf_1.10.8_amd64.deb" curl -fsSL "https://dl.influxdata.com/chronograf/releases/chronograf_1.10.7_amd64.deb" -o "/chronograf_1.10.7_amd64.deb"
$STD dpkg -i chronograf_1.10.8_amd64.deb $STD dpkg -i chronograf_1.10.7_amd64.deb
rm -rf /chronograf_1.10.8_amd64.deb
fi fi
$STD systemctl enable --now influxdb $STD systemctl enable --now influxdb
msg_ok "Installed InfluxDB" msg_ok "Installed InfluxDB"
@@ -44,10 +45,14 @@ msg_ok "Installed InfluxDB"
read -r -p "${TAB3}Would you like to add Telegraf? <y/N> " prompt read -r -p "${TAB3}Would you like to add Telegraf? <y/N> " prompt
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
msg_info "Installing Telegraf" msg_info "Installing Telegraf"
$STD apt install -y telegraf $STD apt-get install -y telegraf
msg_ok "Installed Telegraf" msg_ok "Installed Telegraf"
fi fi
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -34,4 +34,8 @@ msg_ok "Installed InspIRCd"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y ca-certificates $STD apt-get install -y ca-certificates
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://iobroker.net/)." msg_warn "WARNING: This script will run an external installer from a third-party source (https://iobroker.net/)."
@@ -36,4 +36,8 @@ msg_ok "Installed ioBroker"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -33,11 +33,9 @@ mariadb -u root -e "GRANT SELECT ON \`mysql\`.\`time_zone_name\` TO '$DB_USER'@'
msg_ok "Set up database" msg_ok "Set up database"
msg_info "Setup ITSM-NG Repository" msg_info "Setup ITSM-NG Repository"
setup_deb822_repo \ curl -fsSL http://deb.itsm-ng.org/pubkey.gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/itsm-ng-keyring.gpg
"itsm-ng" \ echo "deb http://deb.itsm-ng.org/$(. /etc/os-release && echo "$ID")/ $(. /etc/os-release && echo "$VERSION_CODENAME") main" >/etc/apt/sources.list.d/itsm-ng.list
"http://deb.itsm-ng.org/pubkey.gpg" \ $STD apt-get update
"http://deb.itsm-ng.org/$(get_os_info id)/" \
"$(get_os_info codename)"
msg_ok "Setup ITSM-NG Repository" msg_ok "Setup ITSM-NG Repository"
msg_info "Installing ITSM-NG" msg_info "Installing ITSM-NG"
@@ -58,9 +56,13 @@ sed -i 's/^[;]*max_input_vars *=.*/max_input_vars = 5000/' "$PHP_INI"
sed -i 's/^memory_limit = .*/memory_limit = 256M/' $PHP_INI sed -i 's/^memory_limit = .*/memory_limit = 256M/' $PHP_INI
sed -i 's/^;\?\s*session.cookie_httponly\s*=.*/session.cookie_httponly = On/' $PHP_INI sed -i 's/^;\?\s*session.cookie_httponly\s*=.*/session.cookie_httponly = On/' $PHP_INI
systemctl restart apache2 systemctl restart apache2
rm -rf /usr/share/itsm-ng/install
msg_ok "Configured PHP" msg_ok "Configured PHP"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm -rf /usr/share/itsm-ng/install
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -39,4 +39,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing dependencies" msg_info "Installing dependencies"
$STD apt install -y \ $STD apt-get install -y \
lsb-release \ lsb-release \
git git
msg_ok "Dependencies installed" msg_ok "Dependencies installed"
@@ -98,5 +98,8 @@ msg_ok "Installation checked, everything is successfuly installed. A reboot is r
motd_ssh motd_ssh
customize customize
msg_info "Cleaning up"
rm -rf /tmp/install.sh rm -rf /tmp/install.sh
cleanup_lxc $STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -70,4 +70,9 @@ msg_ok "Installed Jellyfin"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -12,18 +12,21 @@ setting_up_container
network_check network_check
update_os update_os
JAVA_VERSION="21" setup_java msg_info "Installing Dependencies"
$STD apt-get install -y openjdk-17-jre
msg_ok "Installed Dependencies"
msg_info "Setup Jenkins" msg_info "Setup Jenkins"
setup_deb822_repo \ curl -fsSL "https://pkg.jenkins.io/debian/jenkins.io-2023.key" -o "/usr/share/keyrings/jenkins-keyring.asc"
"jenkins" \ echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" https://pkg.jenkins.io/debian binary/ >/etc/apt/sources.list.d/jenkins.list
"https://pkg.jenkins.io/debian/jenkins.io-2023.key" \ $STD apt-get update
"https://pkg.jenkins.io/debian" \ $STD apt-get install -y jenkins
"binary/"
$STD apt update
$STD apt install -y jenkins
msg_ok "Setup Jenkins" msg_ok "Setup Jenkins"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,13 +14,13 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
git \ git \
rsync rsync
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PG_VERSION="17" setup_postgresql PG_VERSION="17" setup_postgresql
NODE_VERSION=22 NODE_MODULE="yarn,npm,pm2" setup_nodejs NODE_VERSION=22 NODE_MODULE="yarn@latest,npm@latest,pm2@latest" setup_nodejs
mkdir -p /opt/pm2 mkdir -p /opt/pm2
export PM2_HOME=/opt/pm2 export PM2_HOME=/opt/pm2
$STD pm2 install pm2-logrotate $STD pm2 install pm2-logrotate
@@ -91,4 +91,8 @@ msg_ok "Service Setup"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -66,4 +66,9 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -48,4 +48,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -13,11 +13,11 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Setup Python3"
$STD apt install -y python3-pip $STD apt-get install -y python3-pip
msg_ok "Installed Dependencies" msg_ok "Setup Python3"
PYTHON_VERSION="3.12" setup_uv setup_uv
fetch_and_deploy_gh_release "kapowarr" "Casvt/Kapowarr" fetch_and_deploy_gh_release "kapowarr" "Casvt/Kapowarr"
msg_info "Setup Kapowarr" msg_info "Setup Kapowarr"
@@ -47,4 +47,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
build-essential \ build-essential \
ca-certificates \ ca-certificates \
chromium \ chromium \
@@ -173,4 +173,8 @@ msg_ok "Created Services"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get autoremove -y
$STD apt-get autoclean -y
msg_ok "Cleaned"

View File

@@ -43,6 +43,10 @@ msg_ok "Installed Kasm Workspaces"
motd_ssh motd_ssh
customize customize
msg_info "Cleaning up"
rm -f /opt/kasm_release_${KASM_VERSION}.tar.gz rm -f /opt/kasm_release_${KASM_VERSION}.tar.gz
rm -f ~/kasm-install.output rm -f ~/kasm-install.output
cleanup_lxc $STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -38,4 +38,9 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -61,4 +61,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt-get install -y \
apt-transport-https \ apt-transport-https \
apache2 \ apache2 \
git \ git \
@@ -22,7 +22,7 @@ $STD apt install -y \
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
setup_mariadb setup_mariadb
PHP_VERSION="8.4" PHP_MODULE="mysql" PHP_APACHE="YES" setup_php PHP_VERSION="8.4" PHP_MODULE="gd,mysql,mbstring,bcmath,xml,curl,zip,intl" PHP_APACHE="YES" setup_php
setup_composer setup_composer
msg_info "Setting up database" msg_info "Setting up database"
@@ -30,9 +30,10 @@ DB_NAME=kimai_db
DB_USER=kimai DB_USER=kimai
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_VERSION=$(mariadb --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+') MYSQL_VERSION=$(mariadb --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
$STD mariadb -e "CREATE DATABASE $DB_NAME;" $STD mariadb -u root -e "CREATE DATABASE $DB_NAME;"
$STD mariadb -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';" $STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
$STD mariadb -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;"
$STD mariadb -u root -e "SET GLOBAL sql_mode='';"
{ {
echo "Kimai-Credentials" echo "Kimai-Credentials"
echo "Kimai Database User: $DB_USER" echo "Kimai Database User: $DB_USER"
@@ -43,13 +44,13 @@ msg_ok "Set up database"
fetch_and_deploy_gh_release "kimai" "kimai/kimai" fetch_and_deploy_gh_release "kimai" "kimai/kimai"
msg_info "Setup Kimai" msg_info "Installing Kimai"
cd /opt/kimai cd /opt/kimai
echo "export COMPOSER_ALLOW_SUPERUSER=1" >>~/.bashrc echo "export COMPOSER_ALLOW_SUPERUSER=1" >>~/.bashrc
source ~/.bashrc source ~/.bashrc
$STD composer install --no-dev --optimize-autoloader --no-interaction $STD composer install --no-dev --optimize-autoloader --no-interaction
cp .env.dist .env cp .env.dist .env
sed -i "/^DATABASE_URL=/c\DATABASE_URL=mysql://$DB_USER:$DB_PASS@127.0.0.1:3306/$DB_NAME?charset=utf8mb4&serverVersion=$MYSQL_VERSION" /opt/kimai/.env sed -i "/^DATABASE_URL=/c\DATABASE_URL=mysql://$DB_USER:$DB_PASS@127.0.0.1:3306/$DB_NAME?charset=utf8mb4&serverVersion=mariadb-$MYSQL_VERSION" /opt/kimai/.env
$STD bin/console kimai:install -n $STD bin/console kimai:install -n
$STD expect <<EOF $STD expect <<EOF
set timeout -1 set timeout -1
@@ -109,4 +110,9 @@ msg_ok "Setup Permissions"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -82,4 +82,8 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

Some files were not shown because too many files have changed in this diff Show More