Compare commits

...

6 Commits

Author SHA1 Message Date
CanbiZ
df12ea77dd Refactor install scripts for consistency and cleanup
Standardized package installation commands to use 'apt install' instead of 'apt-get'. Replaced manual database setup with helper functions for PostgreSQL and MariaDB where applicable. Hardware acceleration setup is now handled by a shared function. Removed repetitive cleanup code and replaced with a single 'cleanup_lxc' call at the end of each script. Updated PHP version for FreshRSS and simplified repository setup for Fhem and Grafana. Fixed merge conflict in graylog-install.sh and removed unnecessary temporary file handling.
2025-11-12 15:26:21 +01:00
CanbiZ
edfeb4c507 Delete dashy.sh 2025-11-12 14:09:24 +01:00
Michel Roegl-Brunner
3c2603b5b1 Merge branch 'main' into deb13_g_to_d 2025-11-12 11:47:31 +01:00
CanbiZ
5d2d54368a Refactor install scripts and cleanup handling
Replaces manual apt cleanup commands with a unified cleanup_lxc function across install scripts. Updates apt-get to apt for package installation, improves repository setup logic, and standardizes service creation. Minor messaging and variable usage improvements for consistency.
2025-11-12 11:39:28 +01:00
CanbiZ
e5c3c19106 Update scripts for Debian 13 and improve update messages
Bump default OS version from Debian 12 to 13 across all container scripts. Standardize update messages to use explicit service names and success confirmations. Refactor update functions for consistency, improve error handling, and update package management commands to use 'apt' instead of 'apt-get'.
2025-11-12 11:14:37 +01:00
CanbiZ
66409ac1cf Update grocy.sh 2025-10-23 16:29:21 +02:00
70 changed files with 453 additions and 534 deletions

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:-18}" var_disk="${var_disk:-18}"
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"
@@ -27,12 +27,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Updating Dockge"
cd /opt/dockge
$STD docker compose pull
$STD docker compose up -d
msg_ok "Updated Dockge"
msg_ok "Updated successfully"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
cd /opt/dockge cd /opt/dockge
$STD docker compose pull $STD docker compose pull
$STD docker compose up -d $STD docker compose up -d
msg_ok "Updated ${APP}" msg_ok "Updated ${APP}"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -12,6 +12,7 @@ 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:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
variables variables
@@ -44,18 +45,22 @@ function update_script() {
fetch_and_deploy_gh_release "docmost" "docmost/docmost" fetch_and_deploy_gh_release "docmost" "docmost/docmost"
msg_info "Updating ${APP}" msg_info "Updating Docmost"
cd /opt/docmost cd /opt/docmost
mv /opt/.env /opt/docmost/.env mv /opt/.env /opt/docmost/.env
mv /opt/data /opt/docmost/data mv /opt/data /opt/docmost/data
$STD pnpm install --force $STD pnpm install --force
$STD pnpm build $STD pnpm build
msg_ok "Updated ${APP}" msg_ok "Updated Docmost"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start docmost systemctl start docmost
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-1}"
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -20,15 +20,15 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /usr/share/dolibarr ]]; then if [[ ! -d /usr/share/dolibarr ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "To update ${APP}, use the applications web interface."
exit exit
fi
msg_error "To update ${APP}, use the applications web interface."
exit
} }
start start
@@ -38,4 +38,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/dolibarr/install${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/dolibarr/install${CL}"

View File

@@ -20,6 +20,13 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
header_info
check_container_storage
check_container_resources
if [[ ! -d /var/www ]]; then
msg_error "No ${APP} Installation Found!"
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -31,7 +38,14 @@ function update_script() {
$STD apt-get update $STD apt-get update
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
fi
msg_info "Updating ${APP} LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Successfully"
exit
} }
start start

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:-10}" var_disk="${var_disk:-10}"
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"
@@ -31,14 +31,22 @@ function update_script() {
if check_for_gh_release "duplicati" "duplicati/duplicati"; then if check_for_gh_release "duplicati" "duplicati/duplicati"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop duplicati systemctl stop duplicati
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb" fetch_and_deploy_gh_release "duplicati" "duplicati/duplicati" "binary" "latest" "/opt/duplicati" "duplicati-*-linux-x64-gui.deb"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start duplicati systemctl start duplicati
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -32,9 +32,9 @@ function update_script() {
msg_info "Removing old EMQX" msg_info "Removing old EMQX"
if dpkg -l | grep -q "^ii\s\+emqx\s"; then if dpkg -l | grep -q "^ii\s\+emqx\s"; then
$STD apt-get remove --purge -y emqx $STD apt remove --purge -y emqx
elif dpkg -l | grep -q "^ii\s\+emqx-enterprise\s"; then elif dpkg -l | grep -q "^ii\s\+emqx-enterprise\s"; then
$STD apt-get remove --purge -y emqx-enterprise $STD apt remove --purge -y emqx-enterprise
else else
msg_ok "No old EMQX package found" msg_ok "No old EMQX package found"
fi fi
@@ -46,11 +46,17 @@ function update_script() {
msg_ok "Downloaded EMQX" msg_ok "Downloaded EMQX"
msg_info "Installing EMQX" msg_info "Installing EMQX"
$STD apt-get install -y "$DEB_FILE" $STD apt install -y "$DEB_FILE"
echo "$RELEASE" >~/.emqx
rm -f "$DEB_FILE"
msg_ok "Installed EMQX v${RELEASE}" msg_ok "Installed EMQX v${RELEASE}"
msg_info "Starting EMQX" msg_info "Starting Service"
systemctl start emqx systemctl start emqx
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
echo "$RELEASE" >~/.emqx echo "$RELEASE" >~/.emqx
msg_ok "Started EMQX" msg_ok "Started EMQX"
@@ -58,6 +64,7 @@ function update_script() {
rm -f "$DEB_FILE" rm -f "$DEB_FILE"
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
else else
msg_ok "No update required. EMQX is already at v${RELEASE}" msg_ok "No update required. EMQX is already at v${RELEASE}"
fi fi

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:-5}" var_disk="${var_disk:-5}"
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"
@@ -27,23 +27,28 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then if check_for_gh_release "ersatztv" "ErsatzTV/ErsatzTV"; then
msg_info "Stopping ErsatzTV" msg_info "Stopping Service"
systemctl stop ersatzTV systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz" fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz"
msg_info "Starting ErsatzTV" msg_info "Starting Service"
systemctl start ersatzTV systemctl start ersatzTV
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "ErsatzTV Updated successfully"
=======
msg_ok "Started ErsatzTV" msg_ok "Started ErsatzTV"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then if check_for_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg"; then
msg_info "Stopping ErsatzTV" msg_info "Stopping Service"
systemctl stop ersatzTV systemctl stop ersatzTV
msg_ok "Stopped ErsatzTV" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz" fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz"
@@ -54,10 +59,15 @@ function update_script() {
ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe ln -sf /opt/ErsatzTV-ffmpeg/bin/ffprobe /usr/local/bin/ffprobe
msg_ok "ffmpeg links set" msg_ok "ffmpeg links set"
msg_info "Starting ErsatzTV" msg_info "Starting Service"
systemctl start ersatzTV systemctl start ersatzTV
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "ErsatzTV-ffmpeg Updated successfully"
=======
msg_ok "Started ErsatzTV" msg_ok "Started ErsatzTV"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-10}" var_disk="${var_disk:-10}"
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"
@@ -81,7 +81,11 @@ EOF
msg_info "Starting Service" msg_info "Starting Service"
systemctl start esphomeDashboard systemctl start esphomeDashboard
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -26,6 +26,18 @@ function update_script() {
if ! command -v evcc >/dev/null 2>&1; then if ! command -v evcc >/dev/null 2>&1; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit 1 exit 1
<<<<<<< HEAD
fi
if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then
setup_deb822_repo \
"evcc-stable" \
"https://dl.evcc.io/public/evcc/stable/gpg.EAD5D0E07B0EC0FD.key" \
"https://dl.evcc.io/public/evcc/stable/deb/debian/" \
"$(get_os_info codename)" \
"main"
=======
>>>>>>> main
fi fi
if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then if [[ -f /etc/apt/sources.list.d/evcc-stable.list ]]; then

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}" var_ram="${var_ram:-3072}"
var_disk="${var_disk:-10}" var_disk="${var_disk:-10}"
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"
@@ -31,20 +31,28 @@ function update_script() {
if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then if check_for_gh_release "excalidraw" "excalidraw/excalidraw"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop excalidraw systemctl stop excalidraw
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
rm -rf /opt/excalidraw rm -rf /opt/excalidraw
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw" fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Updating $APP" msg_info "Updating Excalidraw"
cd /opt/excalidraw cd /opt/excalidraw
$STD yarn $STD yarn
msg_ok "Updated $APP" msg_ok "Updated Excalidraw"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start excalidraw systemctl start excalidraw
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-8}" var_disk="${var_disk:-8}"
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"
@@ -20,6 +20,13 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/systemd/system/fhem.service ]]; then
msg_error "No ${APP} Installation Found!"
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -31,7 +38,14 @@ function update_script() {
$STD apt-get update $STD apt-get update
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
fi
msg_info "Updating ${APP} LXC"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Successfully"
exit
} }
start start

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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -28,27 +28,27 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
if ! [[ $(dpkg -s jq 2>/dev/null) ]]; then
$STD apt-get update
$STD apt-get install -y jq
fi
update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable) update_available=$(curl -fsSL -X 'GET' "http://localhost:19200/api/status/update-available" -H 'accept: application/json' | jq .UpdateAvailable)
if [[ "${update_available}" == "true" ]]; then if [[ "${update_available}" == "true" ]]; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop fileflows systemctl stop fileflows
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
msg_info "Creating Backup" msg_info "Creating Backup"
backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz" backup_filename="/opt/${APP}_backup_$(date +%F).tar.gz"
tar -czf "$backup_filename" -C /opt/fileflows Data tar -czf "$backup_filename" -C /opt/fileflows Data
msg_ok "Backup Created" msg_ok "Backup Created"
msg_info "Updating $APP to latest version" msg_info "Updating FileFlows"
temp_file=$(mktemp) temp_file=$(mktemp)
curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file" curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
$STD unzip -o -d /opt/fileflows "$temp_file" $STD unzip -o -d /opt/fileflows "$temp_file"
msg_ok "Updated $APP to latest version" msg_ok "Updated FileFlows"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start fileflows systemctl start fileflows
@@ -58,11 +58,14 @@ function update_script() {
rm -rf "$temp_file" rm -rf "$temp_file"
rm -rf "$backup_filename" rm -rf "$backup_filename"
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
else else
msg_ok "No update required. ${APP} is already at latest version" msg_ok "No update required. ${APP} is already at latest version"
fi fi
exit exit
} }

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:-2}" var_disk="${var_disk:-2}"
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"
@@ -41,7 +41,7 @@ function update_script() {
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip" fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
setup_composer setup_composer
msg_info "Updating ${APP}" msg_info "Updating Firefly"
rm -rf /opt/firefly/storage rm -rf /opt/firefly/storage
cp /opt/.env /opt/firefly/.env cp /opt/.env /opt/firefly/.env
cp -r /opt/storage /opt/firefly/storage cp -r /opt/storage /opt/firefly/storage
@@ -57,12 +57,16 @@ function update_script() {
$STD php artisan view:clear $STD php artisan view:clear
$STD php artisan firefly-iii:upgrade-database $STD php artisan firefly-iii:upgrade-database
$STD php artisan firefly-iii:laravel-passport-keys $STD php artisan firefly-iii:laravel-passport-keys
msg_ok "Updated ${APP}" msg_ok "Updated Firefly"
msg_info "Starting Apache2" msg_info "Starting Apache2"
systemctl start apache2 systemctl start apache2
msg_ok "Started Apache2" msg_ok "Started Apache2"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -28,6 +28,10 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then
msg_info "Stopping Service"
=======
if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"12"* ]]; then if [[ $(grep -E '^VERSION_ID=' /etc/os-release) == *"12"* ]]; then
msg_error "Wrong Debian version detected!" msg_error "Wrong Debian version detected!"
msg_error "You must upgrade your LXC to Debian Trixie before updating." msg_error "You must upgrade your LXC to Debian Trixie before updating."
@@ -35,16 +39,26 @@ function update_script() {
fi fi
if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then if check_for_gh_release "flaresolverr" "FlareSolverr/FlareSolverr"; then
msg_info "Stopping service" msg_info "Stopping service"
>>>>>>> main
systemctl stop flaresolverr systemctl stop flaresolverr
msg_ok "Stopped service" msg_ok "Stopped Service"
<<<<<<< HEAD
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
=======
rm -rf /opt/flaresolverr rm -rf /opt/flaresolverr
fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz" fetch_and_deploy_gh_release "flaresolverr" "FlareSolverr/FlareSolverr" "prebuild" "latest" "/opt/flaresolverr" "flaresolverr_linux_x64.tar.gz"
>>>>>>> main
msg_info "Starting service" msg_info "Starting Service"
systemctl start flaresolverr systemctl start flaresolverr
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_disk="${var_disk:-10}"
var_cpu="${var_cpu:-4}" var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
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"
@@ -27,12 +27,20 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Updating FlowiseAI"
systemctl stop flowise
npm install -g flowise --upgrade
systemctl start flowise
msg_ok "Updated FlowiseAI"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
systemctl stop flowise systemctl stop flowise
npm install -g flowise --upgrade npm install -g flowise --upgrade
systemctl start flowise systemctl start flowise
msg_ok "Updated ${APP}" msg_ok "Updated ${APP}"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-3}"
var_ram="${var_ram:-4096}" var_ram="${var_ram:-4096}"
var_disk="${var_disk:-7}" var_disk="${var_disk:-7}"
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"
@@ -31,13 +31,16 @@ function update_script() {
if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then if check_for_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"; then
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop fluid-calendar systemctl stop fluid-calendar
<<<<<<< HEAD
msg_ok "Stopped Service"
=======
msg_info "Stopped Service" msg_info "Stopped Service"
>>>>>>> main
cp /opt/fluid-calendar/.env /opt/fluid.env cp /opt/fluid-calendar/.env /opt/fluid.env
rm -rf /opt/fluid-calendar CLEAN_INSTALL=1 fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
msg_info "Updating $APP" msg_info "Updating Fluid Calendar"
mv /opt/fluid.env /opt/fluid-calendar/.env mv /opt/fluid.env /opt/fluid-calendar/.env
cd /opt/fluid-calendar cd /opt/fluid-calendar
export NEXT_TELEMETRY_DISABLED=1 export NEXT_TELEMETRY_DISABLED=1
@@ -45,12 +48,16 @@ function update_script() {
$STD npm run prisma:generate $STD npm run prisma:generate
$STD npx prisma migrate deploy $STD npx prisma migrate deploy
$STD npm run build:os $STD npm run build:os
msg_ok "Updated $APP" msg_ok "Updated Fluid Calendar"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start fluid-calendar systemctl start fluid-calendar
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -31,23 +31,24 @@ function update_script() {
systemctl stop forgejo systemctl stop forgejo
msg_ok "Stopped Service" msg_ok "Stopped Service"
msg_info "Updating ${APP}" msg_info "Updating Forgejo"
RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//') RELEASE=$(curl -fsSL https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//')
curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64" curl -fsSL "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64" -o "forgejo-$RELEASE-linux-amd64"
rm -rf /opt/forgejo/* rm -rf /opt/forgejo/*
cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64 cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64
chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64 chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64
ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo
msg_ok "Updated ${APP}"
msg_info "Cleaning"
rm -rf forgejo-$RELEASE-linux-amd64 rm -rf forgejo-$RELEASE-linux-amd64
msg_ok "Cleaned" msg_ok "Updated Forgejo"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start forgejo systemctl start forgejo
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -20,16 +20,16 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -f /lib/systemd/system/freepbx.service ]]; then if [[ ! -f /lib/systemd/system/freepbx.service ]]; then
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit
fi
msg_error "Currently we don't provide an update function for this ${APP}."
exit exit
fi
msg_error "Currently we don't provide an update function for this ${APP}."
exit
} }
start start

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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -33,7 +33,10 @@ function update_script() {
chmod +x /opt/freshrss/cli/sensitive-log.sh chmod +x /opt/freshrss/cli/sensitive-log.sh
systemctl restart apache2 systemctl restart apache2
msg_ok "Fixed wrong permissions" msg_ok "Fixed wrong permissions"
<<<<<<< HEAD
=======
exit exit
>>>>>>> main
else else
msg_error "FreshRSS should be updated via the user interface." msg_error "FreshRSS should be updated via the user interface."
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -44,7 +44,7 @@ function update_script() {
exit exit
fi fi
if ! command -v git &>/dev/null; then if ! command -v git &>/dev/null; then
$STD apt-get install -y git $STD apt install -y git
fi fi
msg_info "Stopping service $SERVICE_NAME" msg_info "Stopping service $SERVICE_NAME"
@@ -60,7 +60,11 @@ function update_script() {
msg_info "Starting service $SERVICE_NAME" msg_info "Starting service $SERVICE_NAME"
systemctl start "$SERVICE_NAME" systemctl start "$SERVICE_NAME"
msg_ok "Started service $SERVICE_NAME" msg_ok "Started service $SERVICE_NAME"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -39,8 +39,7 @@ function update_script() {
fi fi
mv /opt/gatus/config/config.yaml /opt mv /opt/gatus/config/config.yaml /opt
rm -rf /opt/gatus CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
fetch_and_deploy_gh_release "gatus" "TwiN/gatus"
msg_info "Updating Gatus" msg_info "Updating Gatus"
cd /opt/gatus cd /opt/gatus
@@ -53,7 +52,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gatus systemctl start gatus
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -56,11 +56,15 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start ghostfolio systemctl start ghostfolio
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_info "Cleaning Up" msg_info "Cleaning Up"
$STD npm cache clean --force $STD npm cache clean --force
msg_ok "Cleanup Completed" msg_ok "Cleanup Completed"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
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:-6}" var_disk="${var_disk:-6}"
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"
@@ -96,17 +96,15 @@ EOF
ln -sf /opt/bun/bin/bun /usr/local/bin/bunx ln -sf /opt/bun/bin/bun /usr/local/bin/bunx
msg_ok "Installed Bun" msg_ok "Installed Bun"
rm -rf /opt/gitea-mirror CLEAN_INSTALL=1 fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
fetch_and_deploy_gh_release "gitea-mirror" "RayLabsHQ/gitea-mirror"
msg_info "Updating and rebuilding ${APP}" msg_info "Updating Gitea-Mirror"
cd /opt/gitea-mirror cd /opt/gitea-mirror
$STD bun run setup $STD bun run setup
$STD bun run build $STD bun run build
APP_VERSION=$(grep -o '"version": *"[^"]*"' package.json | cut -d'"' -f4) APP_VERSION=$(grep -o '"version": *"[^"]*"' package.json | cut -d'"' -f4)
sudo sed -i.bak "s|^npm_package_version=.*|npm_package_version=${APP_VERSION}|" /opt/gitea-mirror.env sudo sed -i.bak "s|^npm_package_version=.*|npm_package_version=${APP_VERSION}|" /opt/gitea-mirror.env
msg_ok "Updated and rebuilt ${APP}" msg_ok "Updated Gitea-Mirror"
msg_info "Restoring Data" msg_info "Restoring Data"
cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data cp /opt/gitea-mirror-backup/data/* /opt/gitea-mirror/data
@@ -114,8 +112,13 @@ EOF
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gitea-mirror systemctl start gitea-mirror
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Service Started" msg_ok "Service Started"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

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:-8}" var_disk="${var_disk:-8}"
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"
@@ -29,18 +29,23 @@ function update_script() {
exit exit
fi fi
if check_for_gh_release "gitea" "go-gitea/gitea"; then if check_for_gh_release "gitea" "go-gitea/gitea"; then
msg_info "Stopping service" msg_info "Stopping Service"
systemctl stop gitea systemctl stop gitea
msg_ok "Service stopped" msg_ok "Stopped Service"
rm -rf /usr/local/bin/gitea rm -rf /usr/local/bin/gitea
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64" fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64"
chmod +x /usr/local/bin/gitea chmod +x /usr/local/bin/gitea
msg_info "Starting service" msg_info "Starting Service"
systemctl start gitea systemctl start gitea
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -39,7 +39,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start glance systemctl start glance
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -12,6 +12,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-2048}" var_ram="${var_ram:-2048}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-13}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
variables variables
@@ -27,11 +28,17 @@ function update_script() {
exit exit
fi fi
msg_info "Updating $APP LXC" msg_info "Updating Globaleaks"
$STD apt update $STD apt update
$STD apt -y upgrade $STD apt -y upgrade
<<<<<<< HEAD
msg_ok "Updated Globaleaks"
msg_ok "Updated successfully"
exit
=======
msg_ok "Updated $APP LXC" msg_ok "Updated $APP LXC"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
} }
start start

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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -29,16 +29,21 @@ function update_script() {
fi fi
if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then if check_for_gh_release "go2rtc" "AlexxIT/go2rtc"; then
msg_info "Stopping service" msg_info "Stopping Service"
systemctl stop go2rtc systemctl stop go2rtc
msg_ok "Stopped service" msg_ok "Stopped Service"
fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64" fetch_and_deploy_gh_release "go2rtc" "AlexxIT/go2rtc" "singlefile" "latest" "/opt/go2rtc" "go2rtc_linux_amd64"
msg_info "Starting service" msg_info "Starting Service"
systemctl start go2rtc systemctl start go2rtc
<<<<<<< HEAD
msg_ok "Started Service"
msg_ok "Updated successfully"
=======
msg_ok "Started service" msg_ok "Started service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -38,8 +38,12 @@ function update_script() {
msg_info "Starting Services" msg_info "Starting Services"
systemctl start goaway systemctl start goaway
msg_ok "Started Services" msg_ok "Started Services"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
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:-4}" var_disk="${var_disk:-4}"
var_os="${var_os:-debian}" var_os="${var_os:-debian}"
var_version="${var_version:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -37,7 +37,11 @@ function update_script() {
msg_info "Starting Service" msg_info "Starting Service"
systemctl start gokapi systemctl start gokapi
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
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:-12}" var_version="${var_version:-13}"
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:-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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -20,6 +20,22 @@ color
catch_errors catch_errors
function update_script() { function update_script() {
<<<<<<< HEAD
header_info
check_container_storage
check_container_resources
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating Grafana"
$STD apt update
$STD apt -y upgrade
msg_ok "Updated Grafana"
msg_ok "Updated successfully"
exit
=======
header_info header_info
check_container_storage check_container_storage
check_container_resources check_container_resources
@@ -33,6 +49,7 @@ function update_script() {
$STD apt-get -y upgrade $STD apt-get -y upgrade
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
exit exit
>>>>>>> main
} }
start start

View File

@@ -28,6 +28,21 @@ function update_script() {
msg_error "No ${APP} Installation Found!" msg_error "No ${APP} Installation Found!"
exit exit
fi fi
<<<<<<< HEAD
msg_info "Stopping Services"
systemctl stop graylog-datanode graylog-server
msg_ok "Stopped Services"
msg_info "Updating Graylog"
$STD apt update
$STD apt upgrade -y
msg_ok "Updated Graylog"
msg_info "Starting Services"
systemctl start graylog-datanode graylog-server
msg_ok "Started Services"
msg_ok "Updated successfully"
=======
msg_info "Stopping Service" msg_info "Stopping Service"
systemctl stop graylog-datanode systemctl stop graylog-datanode
@@ -60,6 +75,7 @@ function update_script() {
systemctl start graylog-server systemctl start graylog-server
msg_ok "Started Service" msg_ok "Started Service"
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
exit exit
} }

View File

@@ -11,7 +11,7 @@ var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-3072}" var_ram="${var_ram:-3072}"
var_disk="${var_disk:-6}" var_disk="${var_disk:-6}"
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"
@@ -41,8 +41,13 @@ function update_script() {
fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball" fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball"
<<<<<<< HEAD
msg_info "Updating Grist"
mkdir -p grist/docs
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
mkdir -p /opt/grist/docs mkdir -p /opt/grist/docs
>>>>>>> main
cp -n /opt/grist_bak/.env /opt/grist/.env cp -n /opt/grist_bak/.env /opt/grist/.env
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
@@ -51,13 +56,17 @@ function update_script() {
$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
msg_ok "Updated ${APP}" msg_ok "Updated Grist"
msg_info "Starting Service" msg_info "Starting Service"
systemctl start grist systemctl start grist
msg_ok "Started Service" msg_ok "Started Service"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
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:-12}" var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}" var_unprivileged="${var_unprivileged:-1}"
header_info "$APP" header_info "$APP"
@@ -32,9 +32,16 @@ function update_script() {
PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php
fi fi
if check_for_gh_release "grocy" "grocy/grocy"; then if check_for_gh_release "grocy" "grocy/grocy"; then
<<<<<<< HEAD
msg_info "Updating Grocy"
$STD bash /var/www/html/update.sh
msg_ok "Updated Grocy"
msg_ok "Updated Successfully"
=======
msg_info "Updating ${APP}" msg_info "Updating ${APP}"
bash /var/www/html/update.sh bash /var/www/html/update.sh
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -55,7 +55,10 @@ function update_script() {
cd /opt/guardian/backend cd /opt/guardian/backend
$STD npm ci $STD npm ci
$STD npm run build $STD npm run build
<<<<<<< HEAD
=======
>>>>>>> main
cd /opt/guardian/frontend cd /opt/guardian/frontend
$STD npm ci $STD npm ci
export DEPLOYMENT_MODE=standalone export DEPLOYMENT_MODE=standalone
@@ -65,7 +68,11 @@ function update_script() {
msg_info "Starting Services" msg_info "Starting Services"
systemctl start guardian-backend guardian-frontend systemctl start guardian-backend guardian-frontend
msg_ok "Started Services" msg_ok "Started Services"
<<<<<<< HEAD
msg_ok "Updated Successfully"
=======
msg_ok "Updated successfully!" msg_ok "Updated successfully!"
>>>>>>> main
fi fi
exit exit
} }

View File

@@ -28,24 +28,7 @@ msg_ok "Installed Dependencies"
setup_uv setup_uv
NODE_VERSION="24" setup_nodejs NODE_VERSION="24" setup_nodejs
PG_VERSION="16" setup_postgresql PG_VERSION="16" setup_postgresql
PG_DB_NAME="dispatcharr_db" PG_DB_USER="dispatcharr_usr" setup_postgresql_db
msg_info "Creating PostgreSQL Database"
DB_NAME=dispatcharr_db
DB_USER=dispatcharr_usr
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
$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 "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC';"
{
echo "Dispatcharr Credentials"
echo "Database Name: $DB_NAME"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo ""
} >>~/dispatcharr.creds
msg_ok "Created PostgreSQL Database"
fetch_and_deploy_gh_release "dispatcharr" "Dispatcharr/Dispatcharr" fetch_and_deploy_gh_release "dispatcharr" "Dispatcharr/Dispatcharr"
@@ -62,18 +45,18 @@ install -d -m 755 \
/data/uploads/{m3us,epgs} \ /data/uploads/{m3us,epgs} \
/data/{m3us,epgs} /data/{m3us,epgs}
chown -R root:root /data chown -R root:root /data
export DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}" export DATABASE_URL="postgresql://${PG_DB_USER}:${PG_DB_PASS}@localhost:5432/${PG_DB_NAME}"
export POSTGRES_DB=$DB_NAME export POSTGRES_DB=$PG_DB_NAME
export POSTGRES_USER=$DB_USER export POSTGRES_USER=$PG_DB_USER
export POSTGRES_PASSWORD=$DB_PASS export POSTGRES_PASSWORD=$PG_DB_PASS
export POSTGRES_HOST=localhost export POSTGRES_HOST=localhost
$STD uv run python manage.py migrate --noinput $STD uv run python manage.py migrate --noinput
$STD uv run python manage.py collectstatic --noinput $STD uv run python manage.py collectstatic --noinput
cat <<EOF >/opt/dispatcharr/.env cat <<EOF >/opt/dispatcharr/.env
DATABASE_URL=postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME} DATABASE_URL=postgresql://${PG_DB_USER}:${PG_DB_PASS}@localhost:5432/${PG_DB_NAME}
POSTGRES_DB=$DB_NAME POSTGRES_DB=$PG_DB_NAME
POSTGRES_USER=$DB_USER POSTGRES_USER=$PG_DB_USER
POSTGRES_PASSWORD=$DB_PASS POSTGRES_PASSWORD=$PG_DB_PASS
POSTGRES_HOST=localhost POSTGRES_HOST=localhost
CELERY_BROKER_URL=redis://localhost:6379/0 CELERY_BROKER_URL=redis://localhost:6379/0
EOF EOF
@@ -260,9 +243,4 @@ msg_ok "Created Services"
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

@@ -14,40 +14,21 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt install -y redis make
redis \
jq \
make
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
HOST_IP=$(hostname -I | awk '{print $1}') HOST_IP=$(hostname -I | awk '{print $1}')
NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs NODE_VERSION="22" NODE_MODULE="pnpm@$(curl -s https://raw.githubusercontent.com/docmost/docmost/main/package.json | jq -r '.packageManager | split("@")[1]')" setup_nodejs
PG_VERSION="16" setup_postgresql PG_VERSION="16" setup_postgresql
PG_DB_NAME="docmost_db" PG_DB_USER="docmost_user" setup_postgresql_db
fetch_and_deploy_gh_release "docmost" "docmost/docmost" fetch_and_deploy_gh_release "docmost" "docmost/docmost"
msg_info "Setting up PostgreSQL"
DB_NAME="docmost_db"
DB_USER="docmost_user"
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
$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 "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC'"
{
echo "Docmost-Credentials"
echo "Database Name: $DB_NAME"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
} >>~/docmost.creds
msg_ok "Set up PostgreSQL"
msg_info "Configuring Docmost (Patience)" msg_info "Configuring Docmost (Patience)"
cd /opt/docmost cd /opt/docmost
mv .env.example .env mv .env.example .env
mkdir data mkdir data
sed -i -e "s|APP_SECRET=.*|APP_SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)|" \ sed -i -e "s|APP_SECRET=.*|APP_SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)|" \
-e "s|DATABASE_URL=.*|DATABASE_URL=postgres://$DB_USER:$DB_PASS@localhost:5432/$DB_NAME|" \ -e "s|DATABASE_URL=.*|DATABASE_URL=postgres://$PG_DB_USER:$PG_DB_PASS@localhost:5432/$PG_DB_NAME|" \
-e "s|FILE_UPLOAD_SIZE_LIMIT=.*|FILE_UPLOAD_SIZE_LIMIT=50mb|" \ -e "s|FILE_UPLOAD_SIZE_LIMIT=.*|FILE_UPLOAD_SIZE_LIMIT=50mb|" \
-e "s|DRAWIO_URL=.*|DRAWIO_URL=https://embed.diagrams.net|" \ -e "s|DRAWIO_URL=.*|DRAWIO_URL=https://embed.diagrams.net|" \
-e "s|DISABLE_TELEMETRY=.*|DISABLE_TELEMETRY=true|" \ -e "s|DISABLE_TELEMETRY=.*|DISABLE_TELEMETRY=true|" \
@@ -78,9 +59,4 @@ 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

@@ -45,10 +45,4 @@ 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

@@ -14,13 +14,12 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get update $STD apt install -y \
$STD apt-get install -y \
ssh \ ssh \
software-properties-common software-properties-common
$STD add-apt-repository -y ppa:dotnet/backports $STD add-apt-repository -y ppa:dotnet/backports
$STD apt-get install -y \ $STD apt install -y \
dotnet-sdk-9.0 \ dotnet-sdk-9.0 \
vsftpd \ vsftpd \
nginx nginx
@@ -105,8 +104,4 @@ 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-get install -y \ $STD apt install -y \
libice6 \ libice6 \
libsm6 \ libsm6 \
libfontconfig1 libfontconfig1
@@ -49,8 +49,4 @@ 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,16 +13,7 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Setting Up Hardware Acceleration" setup_hwaccel
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
if [[ "$CTTYPE" == "0" ]]; then
chgrp video /dev/dri
chmod 755 /dev/dri
chmod 660 /dev/dri/*
$STD adduser $(id -u -n) video
$STD adduser $(id -u -n) render
fi
msg_ok "Set Up Hardware Acceleration"
fetch_and_deploy_gh_release "emby" "MediaBrowser/Emby.Releases" "binary" fetch_and_deploy_gh_release "emby" "MediaBrowser/Emby.Releases" "binary"
@@ -36,8 +27,4 @@ msg_ok "Configured Emby"
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-get install -y ca-certificates $STD apt install -y ca-certificates
msg_ok "Installed dependencies" msg_ok "Installed dependencies"
msg_info "Fetching latest EMQX Enterprise version" msg_info "Fetching latest EMQX Enterprise version"
@@ -33,19 +33,12 @@ $STD curl -fsSL -o "$DEB_FILE" "$DOWNLOAD_URL"
msg_ok "Downloaded EMQX" msg_ok "Downloaded EMQX"
msg_info "Installing EMQX" msg_info "Installing EMQX"
$STD apt-get install -y "$DEB_FILE" $STD apt install -y "$DEB_FILE"
echo "$LATEST_VERSION" >~/.emqx echo "$LATEST_VERSION" >~/.emqx
msg_ok "Installed EMQX" rm -f "$DEB_FILE"
msg_info "Starting EMQX service"
$STD systemctl enable -q --now emqx $STD systemctl enable -q --now emqx
msg_ok "Enabled EMQX service" msg_ok "Installed EMQX"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm -f "$DEB_FILE"
$STD apt-get autoremove
$STD apt-get autoclean
msg_ok "Cleaned"

View File

@@ -13,38 +13,7 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Setting Up Hardware Acceleration" setup_hwaccel
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
if [[ "$CTTYPE" == "0" ]]; then
chgrp video /dev/dri
chmod 755 /dev/dri
chmod 660 /dev/dri/*
$STD adduser $(id -u -n) video
$STD adduser $(id -u -n) render
fi
msg_ok "Set Up Hardware Acceleration"
read -r -p "${TAB3}Do you need the intel-media-va-driver-non-free driver for HW encoding (Debian 12 only)? <y/N> " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing Intel Hardware Acceleration (non-free)"
cat <<EOF >/etc/apt/sources.list.d/non-free.list
deb http://deb.debian.org/debian bookworm non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm non-free non-free-firmware
deb http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb-src http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
EOF
$STD apt-get update
$STD apt-get -y install {intel-media-va-driver-non-free,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
else
msg_info "Installing Intel Hardware Acceleration"
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
fi
msg_ok "Installed and Set Up Intel Hardware Acceleration"
fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz" fetch_and_deploy_gh_release "ersatztv" "ErsatzTV/ErsatzTV" "prebuild" "latest" "/opt/ErsatzTV" "*linux-x64.tar.gz"
fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz" fetch_and_deploy_gh_release "ersatztv-ffmpeg" "ErsatzTV/ErsatzTV-ffmpeg" "prebuild" "latest" "/opt/ErsatzTV-ffmpeg" "*-linux64-gpl-7.1.tar.xz"
@@ -78,8 +47,4 @@ 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-get install -y git $STD apt install -y git
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PYTHON_VERSION="3.12" setup_uv PYTHON_VERSION="3.12" setup_uv
@@ -55,8 +55,4 @@ 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,10 +14,10 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y xdg-utils $STD apt install -y xdg-utils
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw" fetch_and_deploy_gh_release "excalidraw" "excalidraw/excalidraw"
msg_info "Configuring Excalidraw" msg_info "Configuring Excalidraw"
@@ -45,8 +45,4 @@ 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,23 +14,20 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y avahi-daemon $STD apt install -y avahi-daemon
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Setting up Fhem Repository" setup_deb822_repo \
curl -fsSL https://debian.fhem.de/archive.key | gpg --dearmor >/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg "debianfhemde" \
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/debianfhemde-archive-keyring.gpg] https://debian.fhem.de/nightly/ /' >/etc/apt/sources.list.d/fhem.list "https://debian.fhem.de/archive.key" \
msg_ok "Set up Fhem Repository" "https://debian.fhem.de/nightly/" \
"/" \
""
msg_info "Installing Fhem" msg_info "Installing Fhem"
$STD apt-get update $STD apt install -y fhem
$STD apt-get install -y fhem msg_ok "Installed Fhem"
msg_info "Installed Fhem"
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

@@ -15,33 +15,12 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y \
ffmpeg \ ffmpeg \
jq \
imagemagick imagemagick
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
read -r -p "${TAB3}Do you need the intel-media-va-driver-non-free driver for HW encoding (Debian 12 only)? <y/N> " prompt setup_hwaccel
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Installing Intel Hardware Acceleration (non-free)"
cat <<EOF >/etc/apt/sources.list.d/non-free.list
deb http://deb.debian.org/debian bookworm non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm non-free non-free-firmware
deb http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb-src http://deb.debian.org/debian-security bookworm-security non-free non-free-firmware
deb http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
deb-src http://deb.debian.org/debian bookworm-updates non-free non-free-firmware
EOF
$STD apt-get update
$STD apt-get -y install {intel-media-va-driver-non-free,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
else
msg_info "Installing Intel Hardware Acceleration"
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
fi
msg_ok "Installed and Set Up Intel Hardware Acceleration"
msg_info "Installing ASP.NET Core Runtime" msg_info "Installing ASP.NET Core Runtime"
curl -fsSL https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -o packages-microsoft-prod.deb curl -fsSL https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -o packages-microsoft-prod.deb
@@ -51,7 +30,7 @@ $STD apt-get update
$STD apt-get install -y aspnetcore-runtime-8.0 $STD apt-get install -y aspnetcore-runtime-8.0
msg_ok "Installed ASP.NET Core Runtime" msg_ok "Installed ASP.NET Core Runtime"
msg_info "Setup ${APPLICATION}" msg_info "Setup FileFlows"
$STD ln -svf /usr/bin/ffmpeg /usr/local/bin/ffmpeg $STD ln -svf /usr/bin/ffmpeg /usr/local/bin/ffmpeg
$STD ln -svf /usr/bin/ffprobe /usr/local/bin/ffprobe $STD ln -svf /usr/bin/ffprobe /usr/local/bin/ffprobe
temp_file=$(mktemp) temp_file=$(mktemp)
@@ -59,13 +38,9 @@ curl -fsSL https://fileflows.com/downloads/zip -o "$temp_file"
$STD unzip -d /opt/fileflows "$temp_file" $STD unzip -d /opt/fileflows "$temp_file"
(cd /opt/fileflows/Server && dotnet FileFlows.Server.dll --systemd install --root true) (cd /opt/fileflows/Server && dotnet FileFlows.Server.dll --systemd install --root true)
systemctl enable -q --now fileflows systemctl enable -q --now fileflows
msg_ok "Setup ${APPLICATION}" rm -f "$temp_file"
msg_ok "Setup FileFlows"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm -f "$temp_file"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -16,32 +16,18 @@ update_os
PHP_VERSION="8.4" PHP_APACHE="YES" PHP_MODULE="mysql" setup_php PHP_VERSION="8.4" PHP_APACHE="YES" PHP_MODULE="mysql" setup_php
setup_composer setup_composer
setup_mariadb setup_mariadb
LOCAL_IP=$(hostname -I | awk '{print $1}') MARIADB_DB_NAME="firefly" MARIADB_DB_USER="firefly" setup_mariadb_db
msg_info "Setting up database"
DB_NAME=firefly
DB_USER=firefly
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
$STD mariadb -u root -e "CREATE DATABASE $DB_NAME;"
$STD mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';"
mariadb -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
{
echo "Firefly-Credentials"
echo "Firefly Database User: $DB_USER"
echo "Firefly Database Password: $DB_PASS"
echo "Firefly Database Name: $DB_NAME"
} >>~/firefly.creds
msg_ok "Set up database"
fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip" fetch_and_deploy_gh_release "firefly" "firefly-iii/firefly-iii" "prebuild" "latest" "/opt/firefly" "FireflyIII-*.zip"
msg_info "Configuring Firefly III (Patience)" msg_info "Configuring Firefly III (Patience)"
LOCAL_IP=$(hostname -I | awk '{print $1}')
chown -R www-data:www-data /opt/firefly chown -R www-data:www-data /opt/firefly
chmod -R 775 /opt/firefly/storage chmod -R 775 /opt/firefly/storage
cd /opt/firefly cd /opt/firefly
cp .env.example .env cp .env.example .env
sed -i "s/DB_HOST=.*/DB_HOST=localhost/" /opt/firefly/.env sed -i "s/DB_HOST=.*/DB_HOST=localhost/" /opt/firefly/.env
sed -i "s/DB_PASSWORD=.*/DB_PASSWORD=$DB_PASS/" /opt/firefly/.env sed -i "s/DB_PASSWORD=.*/DB_PASSWORD=$MARIADB_DB_PASS/" /opt/firefly/.env
$STD composer install --no-dev --no-plugins --no-interaction $STD composer install --no-dev --no-plugins --no-interaction
$STD php artisan firefly:upgrade-database $STD php artisan firefly:upgrade-database
$STD php artisan firefly:correct-database $STD php artisan firefly:correct-database
@@ -55,6 +41,7 @@ tar -xzf "DataImporter-v${IMPORTER_RELEASE}.tar.gz" -C /opt/firefly/dataimporter
cp /opt/firefly/dataimporter/.env.example /opt/firefly/dataimporter/.env cp /opt/firefly/dataimporter/.env.example /opt/firefly/dataimporter/.env
sed -i "s#FIREFLY_III_URL=#FIREFLY_III_URL=http://${LOCAL_IP}#g" /opt/firefly/dataimporter/.env sed -i "s#FIREFLY_III_URL=#FIREFLY_III_URL=http://${LOCAL_IP}#g" /opt/firefly/dataimporter/.env
chown -R www-data:www-data /opt/firefly chown -R www-data:www-data /opt/firefly
rm -rf "/opt/DataImporter-v${IMPORTER_RELEASE}.tar.gz"
msg_ok "Configured Firefly III" msg_ok "Configured Firefly III"
msg_info "Creating Service" msg_info "Creating Service"
@@ -95,9 +82,4 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm -rf "/opt/DataImporter-v${IMPORTER_RELEASE}.tar.gz"
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -15,9 +15,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y apt-transport-https xvfb
apt-transport-https \
xvfb
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Installing Chrome" msg_info "Installing Chrome"
@@ -28,7 +26,6 @@ setup_deb822_repo \
"stable" "stable"
$STD apt update $STD apt update
$STD apt install -y google-chrome-stable $STD apt install -y google-chrome-stable
# remove google-chrome.list added by google-chrome-stable
rm /etc/apt/sources.list.d/google-chrome.list rm /etc/apt/sources.list.d/google-chrome.list
msg_ok "Installed Chrome" msg_ok "Installed Chrome"
@@ -57,8 +54,4 @@ 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

@@ -44,8 +44,4 @@ 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,35 +14,20 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y zip $STD apt install -y zip
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PG_VERSION="17" setup_postgresql PG_VERSION="17" setup_postgresql
NODE_VERSION="20" setup_nodejs NODE_VERSION="20" setup_nodejs
PG_DB_NAME="fluiddb" PG_DB_USER="fluiduser" PG_DB_GRANT_SUPERUSER="true" setup_postgresql_db
msg_info "Setting up Postgresql Database"
DB_NAME="fluiddb"
DB_USER="fluiduser"
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)"
NEXTAUTH_SECRET="$(openssl rand -base64 44 | tr -dc 'a-zA-Z0-9' | cut -c1-32)"
$STD sudo -u postgres psql -c "CREATE USER $DB_USER WITH ENCRYPTED 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 "GRANT ALL PRIVILEGES ON DATABASE $DB_NAME to $DB_USER;"
$STD sudo -u postgres psql -c "ALTER USER $DB_USER WITH SUPERUSER;"
{
echo "${APPLICATION} Credentials"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo "Database Name: $DB_NAME"
echo "NextAuth Secret: $NEXTAUTH_SECRET"
} >>~/$APPLICATION.creds
msg_ok "Set up Postgresql Database"
fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar" fetch_and_deploy_gh_release "fluid-calendar" "dotnetfactory/fluid-calendar"
msg_info "Configuring ${APPLICATION}" msg_info "Setup Fluid Calendar"
NEXTAUTH_SECRET="$(openssl rand -base64 44 | tr -dc 'a-zA-Z0-9' | cut -c1-32)"
echo "NextAuth Secret: $NEXTAUTH_SECRET" >>~/$APPLICATION.creds
cat <<EOF >/opt/fluid-calendar/.env cat <<EOF >/opt/fluid-calendar/.env
DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@localhost:5432/${DB_NAME}" DATABASE_URL="postgresql://${PG_DB_USER}:${PG_DB_PASS}@localhost:5432/${PG_DB_NAME}"
# Change the URL below to your external URL # Change the URL below to your external URL
NEXTAUTH_URL="http://localhost:3000" NEXTAUTH_URL="http://localhost:3000"
@@ -61,7 +46,7 @@ $STD npm install --legacy-peer-deps
$STD npm run prisma:generate $STD npm run prisma:generate
$STD npx prisma migrate deploy $STD npx prisma migrate deploy
$STD npm run build:os $STD npm run build:os
msg_ok "Configuring ${APPLICATION}" msg_ok "Setup Fluid Calendar"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/fluid-calendar.service cat <<EOF >/etc/systemd/system/fluid-calendar.service
@@ -82,8 +67,4 @@ 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,8 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y git $STD apt install -y git git-lfs
$STD apt-get install -y git-lfs
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Installing Forgejo" msg_info "Installing Forgejo"
@@ -59,8 +58,4 @@ 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,15 +14,11 @@ network_check
update_os update_os
msg_info "Installing FreePBX (Patience)" msg_info "Installing FreePBX (Patience)"
curl -fsSL https://github.com/FreePBX/sng_freepbx_debian_install/raw/master/sng_freepbx_debian_install.sh -o /opt/sng_freepbx_debian_install.sh curl -fsSL https://github.com/FreePBX/sng_freepbx_debian_install/raw/master/sng_freepbx_debian_install.sh -o /opt/sng_freepbx_debian_install.sh
$STD bash /opt/sng_freepbx_debian_install.sh $STD bash /opt/sng_freepbx_debian_install.sh
rm /opt/sng_freepbx_debian_install.sh
msg_ok "Installed FreePBX" msg_ok "Installed FreePBX"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
rm /opt/sng_freepbx_debian_install.sh
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"

View File

@@ -13,22 +13,9 @@ setting_up_container
network_check network_check
update_os update_os
PHP_VERSION="8.2" PHP_MODULE="curl,xml,mbstring,intl,zip,pgsql,gmp" PHP_APACHE="YES" setup_php PHP_VERSION="8.3" PHP_MODULE="curl,xml,mbstring,intl,zip,pgsql,gmp" PHP_APACHE="YES" setup_php
PG_VERSION="16" setup_postgresql PG_VERSION="16" setup_postgresql
PG_DB_NAME="freshrss" PG_DB_USER="freshrss" setup_postgresql_db
msg_info "Setting up PostgreSQL"
DB_NAME=freshrss
DB_USER=freshrss
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)
$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 TEMPLATE template0;"
{
echo "FreshRSS Credentials"
echo "FreshRSS Database User: $DB_USER"
echo "FreshRSS Database Password: $DB_PASS"
echo "FreshRSS Database Name: $DB_NAME"
} >>~/freshrss.creds
msg_ok "Set up PostgreSQL"
fetch_and_deploy_gh_release "freshrss" "FreshRSS/FreshRSS" fetch_and_deploy_gh_release "freshrss" "FreshRSS/FreshRSS"

View File

@@ -13,12 +13,12 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y \
ca-certificates \ ca-certificates \
git git
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="pnpm@latest" setup_nodejs NODE_VERSION="22" NODE_MODULE="pnpm" setup_nodejs
msg_info "Installing Fumadocs" msg_info "Installing Fumadocs"
mkdir -p /opt/fumadocs mkdir -p /opt/fumadocs
@@ -47,8 +47,4 @@ 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

@@ -23,10 +23,10 @@ RPC_SECRET=$(openssl rand -hex 32)
ADMIN_TOKEN=$(openssl rand -base64 32) ADMIN_TOKEN=$(openssl rand -base64 32)
METRICS_TOKEN=$(openssl rand -base64 32) METRICS_TOKEN=$(openssl rand -base64 32)
{ {
echo "Garage Tokens and Secrets" echo "Garage Tokens and Secrets"
echo "RPC Secret: $RPC_SECRET" echo "RPC Secret: $RPC_SECRET"
echo "Admin Token: $ADMIN_TOKEN" echo "Admin Token: $ADMIN_TOKEN"
echo "Metrics Token: $METRICS_TOKEN" echo "Metrics Token: $METRICS_TOKEN"
} >>~/garage.creds } >>~/garage.creds
echo $GITEA_RELEASE >>~/.garage echo $GITEA_RELEASE >>~/.garage
cat <<EOF >/etc/garage.toml cat <<EOF >/etc/garage.toml
@@ -59,7 +59,6 @@ metrics_token = "${METRICS_TOKEN}"
EOF EOF
msg_ok "Set up Garage" msg_ok "Set up Garage"
msg_info "Creating service" msg_info "Creating service"
cat <<'EOF' >/etc/systemd/system/garage.service cat <<'EOF' >/etc/systemd/system/garage.service
[Unit] [Unit]
@@ -87,9 +86,4 @@ 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

@@ -14,7 +14,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y \
ca-certificates \ ca-certificates \
libcap2-bin libcap2-bin
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
@@ -51,8 +51,4 @@ 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

@@ -15,49 +15,32 @@ update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt install -y \ $STD apt install -y \
build-essential \ build-essential \
openssl \ openssl \
ca-certificates \ ca-certificates \
redis-server redis-server
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
PG_VERSION="17" setup_postgresql PG_VERSION="17" setup_postgresql
NODE_VERSION="24" setup_nodejs NODE_VERSION="24" setup_nodejs
PG_DB_NAME="ghostfolio" PG_DB_USER="ghostfolio" PG_DB_SCHEMA_PERMS="true" setup_postgresql_db
msg_info "Setting up Database"
DB_NAME=ghostfolio
DB_USER=ghostfolio
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
REDIS_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
ACCESS_TOKEN_SALT=$(openssl rand -base64 32)
JWT_SECRET_KEY=$(openssl rand -base64 32)
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME;"
$STD sudo -u postgres psql -c "CREATE USER $DB_USER WITH ENCRYPTED PASSWORD '$DB_PASS';"
$STD sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE $DB_NAME TO $DB_USER;"
$STD sudo -u postgres psql -c "ALTER USER $DB_USER CREATEDB;"
$STD sudo -u postgres psql -d $DB_NAME -c "GRANT ALL ON SCHEMA public TO $DB_USER;"
$STD sudo -u postgres psql -d $DB_NAME -c "GRANT CREATE ON SCHEMA public TO $DB_USER;"
$STD sudo -u postgres psql -d $DB_NAME -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO $DB_USER;"
$STD sudo -u postgres psql -d $DB_NAME -c "ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON SEQUENCES TO $DB_USER;"
{
echo "Ghostfolio Credentials"
echo "Database User: $DB_USER"
echo "Database Password: $DB_PASS"
echo "Database Name: $DB_NAME"
echo "Redis Password: $REDIS_PASS"
echo "Access Token Salt: $ACCESS_TOKEN_SALT"
echo "JWT Secret Key: $JWT_SECRET_KEY"
} >>~/ghostfolio.creds
msg_ok "Set up Database"
fetch_and_deploy_gh_release "ghostfolio" "ghostfolio/ghostfolio" "tarball" "latest" "/opt/ghostfolio" fetch_and_deploy_gh_release "ghostfolio" "ghostfolio/ghostfolio" "tarball" "latest" "/opt/ghostfolio"
msg_info "Setup Ghostfolio" msg_info "Setup Ghostfolio"
REDIS_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
ACCESS_TOKEN_SALT=$(openssl rand -base64 32)
JWT_SECRET_KEY=$(openssl rand -base64 32)
sed -i "s/# requirepass foobared/requirepass $REDIS_PASS/" /etc/redis/redis.conf sed -i "s/# requirepass foobared/requirepass $REDIS_PASS/" /etc/redis/redis.conf
systemctl restart redis-server systemctl restart redis-server
cd /opt/ghostfolio cd /opt/ghostfolio
$STD npm ci $STD npm ci
$STD npm run build:production $STD npm run build:production
{
echo "Redis Password: $REDIS_PASS"
echo "Access Token Salt: $ACCESS_TOKEN_SALT"
echo "JWT Secret Key: $JWT_SECRET_KEY"
} >>~/ghostfolio.creds
msg_ok "Built Ghostfolio" msg_ok "Built Ghostfolio"
echo -e "" echo -e ""
@@ -69,7 +52,7 @@ read -rp "${TAB3}CoinGecko Pro API key (press Enter to skip): " COINGECKO_PRO_KE
msg_info "Setting up Environment" msg_info "Setting up Environment"
cat <<EOF >/opt/ghostfolio/.env cat <<EOF >/opt/ghostfolio/.env
DATABASE_URL=postgresql://$DB_USER:$DB_PASS@localhost:5432/$DB_NAME?connect_timeout=300&sslmode=prefer DATABASE_URL=postgresql://$PG_DB_USER:$PG_DB_PASS@localhost:5432/$PG_DB_NAME?connect_timeout=300&sslmode=prefer
REDIS_HOST=localhost REDIS_HOST=localhost
REDIS_PORT=6379 REDIS_PORT=6379
REDIS_PASSWORD=$REDIS_PASS REDIS_PASSWORD=$REDIS_PASS
@@ -82,11 +65,11 @@ TZ=Etc/UTC
EOF EOF
if [[ -n "${COINGECKO_DEMO_KEY:-}" ]]; then if [[ -n "${COINGECKO_DEMO_KEY:-}" ]]; then
echo "API_KEY_COINGECKO_DEMO=$COINGECKO_DEMO_KEY" >>/opt/ghostfolio/.env echo "API_KEY_COINGECKO_DEMO=$COINGECKO_DEMO_KEY" >>/opt/ghostfolio/.env
fi fi
if [[ -n "${COINGECKO_PRO_KEY:-}" ]]; then if [[ -n "${COINGECKO_PRO_KEY:-}" ]]; then
echo "API_KEY_COINGECKO_PRO=$COINGECKO_PRO_KEY" >>/opt/ghostfolio/.env echo "API_KEY_COINGECKO_PRO=$COINGECKO_PRO_KEY" >>/opt/ghostfolio/.env
fi fi
msg_ok "Set up Environment" msg_ok "Set up Environment"
@@ -122,10 +105,4 @@ msg_ok "Created Service"
motd_ssh motd_ssh
customize customize
cleanup_lxc
msg_info "Cleaning up"
$STD npm cache clean --force
$STD apt -y autoremove
$STD apt -y autoclean
$STD apt -y clean
msg_ok "Cleaned"

View File

@@ -15,8 +15,7 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y git $STD apt install -y git sqlite3
$STD apt-get install -y sqlite3
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64" fetch_and_deploy_gh_release "gitea" "go-gitea/gitea" "singlefile" "latest" "/usr/local/bin" "gitea-*-linux-amd64"
@@ -68,8 +67,4 @@ 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

@@ -39,8 +39,7 @@ EOF
msg_ok "Configured Glance" msg_ok "Configured Glance"
msg_info "Creating Service" msg_info "Creating Service"
service_path="/etc/systemd/system/glance.service" cat <<EOF >/etc/systemd/system/glance.service
echo "[Unit]
Description=Glance Daemon Description=Glance Daemon
After=network.target After=network.target
@@ -53,15 +52,11 @@ KillMode=process
Restart=on-failure Restart=on-failure
[Install] [Install]
WantedBy=multi-user.target" >$service_path WantedBy=multi-user.target
EOF
systemctl enable -q --now glance systemctl enable -q --now glance
msg_ok "Created Service" 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

@@ -23,8 +23,4 @@ msg_ok "Setup GlobaLeaks"
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,8 +34,4 @@ 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-get install -y net-tools $STD apt install -y net-tools
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
fetch_and_deploy_gh_release "goaway" "pommee/goaway" "prebuild" "latest" "/opt/goaway" "goaway_*_linux_amd64.tar.gz" fetch_and_deploy_gh_release "goaway" "pommee/goaway" "prebuild" "latest" "/opt/goaway" "goaway_*_linux_amd64.tar.gz"
@@ -54,9 +54,4 @@ msg_ok "Service Created"
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

@@ -39,8 +39,4 @@ 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

@@ -39,8 +39,4 @@ 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-get install -y \ $STD apt install -y \
apt-transport-https \ apt-transport-https \
software-properties-common software-properties-common
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
@@ -25,15 +25,11 @@ echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com st
msg_ok "Set up Grafana Repository" msg_ok "Set up Grafana Repository"
msg_info "Installing Grafana" msg_info "Installing Grafana"
$STD apt-get update $STD apt update
$STD apt-get install -y grafana $STD apt install -y grafana
systemctl enable -q --now grafana-server systemctl enable -q --now grafana-server
msg_ok "Installed Grafana" msg_ok "Installed Grafana"
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

@@ -25,11 +25,11 @@ sed -i "s/password_secret =/password_secret = $PASSWORD_SECRET/g" /etc/graylog/d
systemctl enable -q --now graylog-datanode systemctl enable -q --now graylog-datanode
msg_ok "Setup Graylog Data Node" msg_ok "Setup Graylog Data Node"
msg_info "Setup ${APPLICATION}" msg_info "Setup Graylog"
$STD apt-get install graylog-server $STD apt install graylog-server
ROOT_PASSWORD=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16) ROOT_PASSWORD=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16)
{ {
echo "${APPLICATION} Credentials" echo "Graylog Credentials"
echo "Admin User: admin" echo "Admin User: admin"
echo "Admin Password: ${ROOT_PASSWORD}" echo "Admin Password: ${ROOT_PASSWORD}"
} >>~/graylog.creds } >>~/graylog.creds
@@ -38,7 +38,8 @@ sed -i "s/password_secret =/password_secret = $PASSWORD_SECRET/g" /etc/graylog/s
sed -i "s/root_password_sha2 =/root_password_sha2 = $ROOT_PASSWORD/g" /etc/graylog/server/server.conf sed -i "s/root_password_sha2 =/root_password_sha2 = $ROOT_PASSWORD/g" /etc/graylog/server/server.conf
sed -i 's/#http_bind_address = 127.0.0.1.*/http_bind_address = 0.0.0.0:9000/g' /etc/graylog/server/server.conf sed -i 's/#http_bind_address = 127.0.0.1.*/http_bind_address = 0.0.0.0:9000/g' /etc/graylog/server/server.conf
systemctl enable -q --now graylog-server systemctl enable -q --now graylog-server
msg_ok "Setup ${APPLICATION}" rm -f graylog-*-repository_latest.deb
msg_ok "Setup Graylog"
motd_ssh motd_ssh
customize customize

View File

@@ -14,11 +14,12 @@ network_check
update_os update_os
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apt-get install -y \ $STD apt install -y \
make \ make \
ca-certificates \ ca-certificates \
python3-venv python3-venv
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs NODE_VERSION="22" NODE_MODULE="yarn@latest" setup_nodejs
fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball" fetch_and_deploy_gh_release "grist" "gristlabs/grist-core" "tarball"
@@ -50,14 +51,9 @@ EnvironmentFile=-/opt/grist/.env
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target
EOF EOF
systemctl enable -q --now grist systemctl enable -q --now grist
msg_ok "Created Service" 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,10 +13,6 @@ setting_up_container
network_check network_check
update_os update_os
msg_info "Installing Dependencies"
$STD apt-get install -y apt-transport-https
msg_ok "Installed Dependencies"
PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php PHP_VERSION="8.3" PHP_MODULE="sqlite3,bz2" PHP_APACHE="yes" setup_php
fetch_and_deploy_gh_release "grocy" "grocy/grocy" "prebuild" "latest" "/var/www/html" "grocy*.zip" fetch_and_deploy_gh_release "grocy" "grocy/grocy" "prebuild" "latest" "/var/www/html" "grocy*.zip"
@@ -47,8 +43,4 @@ msg_ok "Installed grocy"
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 @@ msg_ok "Installed Dependencies"
NODE_VERSION="24" setup_nodejs NODE_VERSION="24" setup_nodejs
fetch_and_deploy_gh_release "guardian" "HydroshieldMKII/Guardian" "tarball" "latest" "/opt/guardian" fetch_and_deploy_gh_release "guardian" "HydroshieldMKII/Guardian" "tarball" "latest" "/opt/guardian"
msg_info "Configuring ${APPLICATION}" msg_info "Configuring Guardian"
cd /opt/guardian/backend cd /opt/guardian/backend
$STD npm ci $STD npm ci
$STD npm run build $STD npm run build
@@ -28,7 +28,7 @@ cd /opt/guardian/frontend
$STD npm ci $STD npm ci
export DEPLOYMENT_MODE=standalone export DEPLOYMENT_MODE=standalone
$STD npm run build $STD npm run build
msg_ok "Configured ${APPLICATION}" msg_ok "Configured Guardian"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/guardian-backend.service cat <<EOF >/etc/systemd/system/guardian-backend.service
@@ -60,16 +60,10 @@ RestartSec=3
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target
EOF EOF
systemctl enable -q --now guardian-backend systemctl enable -q --now guardian-backend
systemctl enable -q --now guardian-frontend systemctl enable -q --now guardian-frontend
msg_ok "Created Service" 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"