From 0232dbd89d5e30916e78d2cd37aac2fa98e66f80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Slavi=C5=A1a=20Are=C5=BEina?= <58952836+tremor021@users.noreply.github.com> Date: Tue, 1 Jul 2025 09:46:07 +0200 Subject: [PATCH 01/17] Update openwebui.sh (#5601) --- ct/openwebui.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ct/openwebui.sh b/ct/openwebui.sh index dffb9dd01..a1ded95d3 100644 --- a/ct/openwebui.sh +++ b/ct/openwebui.sh @@ -30,11 +30,11 @@ function update_script() { if [ -x "/usr/bin/ollama" ]; then msg_info "Updating Ollama" - rm -rf /usr/lib/ollama - rm -rf /usr/bin/ollama OLLAMA_VERSION=$(ollama -v | awk '{print $NF}') RELEASE=$(curl -s https://api.github.com/repos/ollama/ollama/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') if [ "$OLLAMA_VERSION" != "$RELEASE" ]; then + rm -rf /usr/lib/ollama + rm -rf /usr/bin/ollama curl -fsSLO https://ollama.com/download/ollama-linux-amd64.tgz tar -C /usr -xzf ollama-linux-amd64.tgz rm -rf ollama-linux-amd64.tgz From 2db514f666ed86b2e7d227a9f8c8298670f83806 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 08:46:41 +0100 Subject: [PATCH 02/17] Update CHANGELOG.md (#5610) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index bc80e0b10..d294c97b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,12 @@ All LXC instances created using this repository come pre-installed with Midnight ## 2025-07-01 +### πŸš€ Updated Scripts + + - #### 🐞 Bug Fixes + + - Open WebUI: Fix Ollama update procedure [@tremor021](https://github.com/tremor021) ([#5601](https://github.com/community-scripts/ProxmoxVE/pull/5601)) + ## 2025-06-30 ### πŸ†• New Scripts From 8c1dac05837b91345cd18ca3aaced93cc8f85357 Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Tue, 1 Jul 2025 12:31:06 +0200 Subject: [PATCH 03/17] Update tools.func (#5608) --- misc/tools.func | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/misc/tools.func b/misc/tools.func index 67cdb610a..0f7c3f145 100644 --- a/misc/tools.func +++ b/misc/tools.func @@ -761,7 +761,7 @@ function fetch_and_deploy_gh_release() { local app_lc=$(echo "${app,,}" | tr -d ' ') local version_file="$HOME/.${app_lc}" - local api_timeout="--connect-timeout 5 --max-time 30" + local api_timeout="--connect-timeout 10 --max-time 60" local download_timeout="--connect-timeout 15 --max-time 900" local current_version="" @@ -776,6 +776,14 @@ function fetch_and_deploy_gh_release() { local header=() [[ -n "${GITHUB_TOKEN:-}" ]] && header=(-H "Authorization: token $GITHUB_TOKEN") + # dns pre check + local gh_host + gh_host=$(awk -F/ '{print $3}' <<<"$api_url") + if ! getent hosts "$gh_host" &>/dev/null; then + msg_error "DNS resolution failed for $gh_host – check /etc/resolv.conf or networking" + return 1 + fi + local max_retries=3 retry_delay=2 attempt=1 success=false resp http_code while ((attempt <= max_retries)); do @@ -785,7 +793,7 @@ function fetch_and_deploy_gh_release() { done if ! $success; then - msg_error "Failed to fetch release metadata after $max_retries attempts" + msg_error "Failed to fetch release metadata from $api_url after $max_retries attempts" return 1 fi @@ -840,14 +848,12 @@ function fetch_and_deploy_gh_release() { local assets url_match="" assets=$(echo "$json" | jq -r '.assets[].browser_download_url') - # If explicit filename pattern is provided (param $6), match that first if [[ -n "$6" ]]; then for u in $assets; do [[ "$u" =~ $6 || "$u" == *"$6" ]] && url_match="$u" && break done fi - # If no match via explicit pattern, fall back to architecture heuristic if [[ -z "$url_match" ]]; then for u in $assets; do if [[ "$u" =~ ($arch|amd64|x86_64|aarch64|arm64).*\.deb$ ]]; then @@ -857,7 +863,6 @@ function fetch_and_deploy_gh_release() { done fi - # Fallback: any .deb file if [[ -z "$url_match" ]]; then for u in $assets; do [[ "$u" =~ \.deb$ ]] && url_match="$u" && break From 28c779ef86da43dc5b3e8e6c21bff83716051ce3 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 11:31:43 +0100 Subject: [PATCH 04/17] Update CHANGELOG.md (#5612) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d294c97b8..8eb6f902e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,8 @@ All LXC instances created using this repository come pre-installed with Midnight ### πŸš€ Updated Scripts + - [tools]: increase fetch_and_deploy with dns pre check [@MickLesk](https://github.com/MickLesk) ([#5608](https://github.com/community-scripts/ProxmoxVE/pull/5608)) + - #### 🐞 Bug Fixes - Open WebUI: Fix Ollama update procedure [@tremor021](https://github.com/tremor021) ([#5601](https://github.com/community-scripts/ProxmoxVE/pull/5601)) From 7b5dd6cd697d75bc580d30aacde80a18c5e2f95d Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 14:07:45 +0200 Subject: [PATCH 05/17] Update versions.json (#5613) Co-authored-by: GitHub Actions[bot] --- frontend/public/json/versions.json | 88 +++++++++++++++--------------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/frontend/public/json/versions.json b/frontend/public/json/versions.json index fd51efbb8..554d30952 100644 --- a/frontend/public/json/versions.json +++ b/frontend/public/json/versions.json @@ -1,4 +1,44 @@ [ + { + "name": "syncthing/syncthing", + "version": "v1.30.0", + "date": "2025-07-01T11:29:11Z" + }, + { + "name": "keycloak/keycloak", + "version": "26.3.0", + "date": "2025-07-01T10:32:30Z" + }, + { + "name": "rcourtman/Pulse", + "version": "v99.99.99", + "date": "2025-07-01T08:26:41Z" + }, + { + "name": "Jackett/Jackett", + "version": "v0.22.2101", + "date": "2025-07-01T05:56:59Z" + }, + { + "name": "Checkmk/checkmk", + "version": "v2.4.0p6-rc1", + "date": "2025-07-01T05:41:26Z" + }, + { + "name": "zabbix/zabbix", + "version": "7.4.0", + "date": "2025-07-01T04:36:51Z" + }, + { + "name": "openobserve/openobserve", + "version": "v0.15.0-rc3", + "date": "2025-07-01T04:09:37Z" + }, + { + "name": "NginxProxyManager/nginx-proxy-manager", + "version": "v2.12.4", + "date": "2025-07-01T01:45:42Z" + }, { "name": "MagicMirrorOrg/MagicMirror", "version": "v2.32.0", @@ -19,11 +59,6 @@ "version": "2025.6.3", "date": "2025-06-24T13:00:12Z" }, - { - "name": "rcourtman/Pulse", - "version": "v3.33.1", - "date": "2025-06-30T11:29:32Z" - }, { "name": "jhuckaby/Cronicle", "version": "v0.9.81", @@ -31,8 +66,8 @@ }, { "name": "ollama/ollama", - "version": "v0.9.4-rc2", - "date": "2025-06-27T18:45:33Z" + "version": "v0.9.4-rc5", + "date": "2025-06-30T15:59:03Z" }, { "name": "prometheus/prometheus", @@ -49,11 +84,6 @@ "version": "v7.4.4", "date": "2025-06-30T13:04:22Z" }, - { - "name": "keycloak/keycloak", - "version": "26.3.0", - "date": "2025-06-30T12:53:32Z" - }, { "name": "Graylog2/graylog2-server", "version": "6.3.0", @@ -84,11 +114,6 @@ "version": "preview-v0.1", "date": "2025-06-27T14:35:47Z" }, - { - "name": "Jackett/Jackett", - "version": "v0.22.2097", - "date": "2025-06-30T05:53:30Z" - }, { "name": "typesense/typesense", "version": "v29.0", @@ -189,11 +214,6 @@ "version": "341.1", "date": "2025-06-27T08:50:16Z" }, - { - "name": "zabbix/zabbix", - "version": "7.2.10", - "date": "2025-06-27T06:40:00Z" - }, { "name": "MediaBrowser/Emby.Releases", "version": "4.9.1.2", @@ -304,11 +324,6 @@ "version": "v1.132.0", "date": "2025-06-17T13:49:30Z" }, - { - "name": "Checkmk/checkmk", - "version": "v2.4.0p5", - "date": "2025-06-24T13:06:53Z" - }, { "name": "fallenbagel/jellyseerr", "version": "preview-fix-proxy-axios", @@ -326,8 +341,8 @@ }, { "name": "runtipi/runtipi", - "version": "nightly", - "date": "2025-06-23T19:10:33Z" + "version": "v4.2.1", + "date": "2025-06-03T20:04:28Z" }, { "name": "VictoriaMetrics/VictoriaMetrics", @@ -394,11 +409,6 @@ "version": "v4.0.15.2941", "date": "2025-06-20T17:20:54Z" }, - { - "name": "syncthing/syncthing", - "version": "2.0.0-rc.19", - "date": "2025-06-02T17:56:25Z" - }, { "name": "benzino77/tasmocompiler", "version": "v12.7.0", @@ -619,11 +629,6 @@ "version": "v3.4.1", "date": "2025-06-11T07:53:44Z" }, - { - "name": "openobserve/openobserve", - "version": "v0.15.0-rc2", - "date": "2025-06-11T04:29:22Z" - }, { "name": "OctoPrint/OctoPrint", "version": "1.11.2", @@ -1209,11 +1214,6 @@ "version": "v25.2.1", "date": "2025-02-06T20:41:28Z" }, - { - "name": "NginxProxyManager/nginx-proxy-manager", - "version": "v2.12.3", - "date": "2025-02-06T11:07:07Z" - }, { "name": "AmruthPillai/Reactive-Resume", "version": "v4.4.4", From 4fe05d09a269fca5c18e9d0e899a87788404ee42 Mon Sep 17 00:00:00 2001 From: "push-app-to-main[bot]" <203845782+push-app-to-main[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:02:06 +0200 Subject: [PATCH 06/17] ITSM-NG (#5615) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 'Add new script' * Update itsm-ng-install.sh * Update itsm-ng-install.sh --------- Co-authored-by: push-app-to-main[bot] <203845782+push-app-to-main[bot]@users.noreply.github.com> Co-authored-by: SlaviΕ‘a AreΕΎina <58952836+tremor021@users.noreply.github.com> --- ct/headers/itsm-ng | 6 +++ ct/itsm-ng.sh | 47 +++++++++++++++++++++ frontend/public/json/itsm-ng.json | 35 ++++++++++++++++ install/itsm-ng-install.sh | 68 +++++++++++++++++++++++++++++++ 4 files changed, 156 insertions(+) create mode 100644 ct/headers/itsm-ng create mode 100644 ct/itsm-ng.sh create mode 100644 frontend/public/json/itsm-ng.json create mode 100644 install/itsm-ng-install.sh diff --git a/ct/headers/itsm-ng b/ct/headers/itsm-ng new file mode 100644 index 000000000..3af6235ed --- /dev/null +++ b/ct/headers/itsm-ng @@ -0,0 +1,6 @@ + _______________ __ ___ _ ________ + / _/_ __/ ___// |/ / / | / / ____/ + / / / / \__ \/ /|_/ /_____/ |/ / / __ + _/ / / / ___/ / / / /_____/ /| / /_/ / +/___/ /_/ /____/_/ /_/ /_/ |_/\____/ + diff --git a/ct/itsm-ng.sh b/ct/itsm-ng.sh new file mode 100644 index 000000000..81195c67d --- /dev/null +++ b/ct/itsm-ng.sh @@ -0,0 +1,47 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: Florianb63 +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://itsm-ng.com/ + +APP="ITSM-NG" +var_tags="${var_tags:-asset-management;foss}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-10}" +var_os="${var_os:-debian}" +var_version="${var_version:-12}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + + if [[ ! -f /etc/itsm-ng/config_db.php ]]; then + msg_error "No ${APP} Installation Found!" + exit 1 + fi + + msg_info "Updating ${APP} LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated Successfully" + + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}" diff --git a/frontend/public/json/itsm-ng.json b/frontend/public/json/itsm-ng.json new file mode 100644 index 000000000..c9b561c85 --- /dev/null +++ b/frontend/public/json/itsm-ng.json @@ -0,0 +1,35 @@ +{ + "name": "ITSM-NG", + "slug": "itsm-ng", + "categories": [ + 25 + ], + "date_created": "2025-06-20", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": 80, + "documentation": "https://wiki.itsm-ng.org/en/home", + "website": "https://itsm-ng.com", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/svg/itsm-ng.svg", + "config_path": "/etc/itsm-ng", + "description": "ITSM-NG is a powerful, open-source IT Service Management (ITSM) solution designed for managing IT assets, software, licenses, and support processes in accordance with ITIL best practices. It offers integrated features for asset inventory, incident tracking, problem management, change requests, and service desk workflows.", + "install_methods": [ + { + "type": "default", + "script": "ct/itsm-ng.sh", + "resources": { + "cpu": 2, + "ram": 2048, + "hdd": 10, + "os": "debian", + "version": "12" + } + } + ], + "default_credentials": { + "username": "itsm", + "password": "itsm" + }, + "notes": [] +} diff --git a/install/itsm-ng-install.sh b/install/itsm-ng-install.sh new file mode 100644 index 000000000..4f9697e12 --- /dev/null +++ b/install/itsm-ng-install.sh @@ -0,0 +1,68 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: Florianb63 +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://itsm-ng.com/ + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +setup_mariadb + +msg_info "Setting up database" +DB_NAME=itsmng_db +DB_USER=itsmng +DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13) +mariadb-tzinfo-to-sql /usr/share/zoneinfo | mariadb mysql +mariadb -u root -e "CREATE DATABASE $DB_NAME;" +mariadb -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED BY '$DB_PASS';" +mariadb -u root -e "GRANT ALL PRIVILEGES ON $DB_NAME.* TO '$DB_USER'@'localhost';" +mariadb -u root -e "GRANT SELECT ON \`mysql\`.\`time_zone_name\` TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;" +{ + echo "ITSM-NG Database Credentials" + echo "Database: $DB_NAME" + echo "Username: $DB_USER" + echo "Password: $DB_PASS" +} >>~/itsmng_db.creds +msg_ok "Set up database" + +msg_info "Setup ITSM-NG Repository" +curl -fsSL http://deb.itsm-ng.org/pubkey.gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/itsm-ng-keyring.gpg +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 +$STD apt-get update +msg_ok "Setup ITSM-NG Repository" + +msg_info "Installing ITSM-NG" +$STD apt install -y itsm-ng +cd /usr/share/itsm-ng +$STD php bin/console db:install --db-name=$DB_NAME --db-user=$DB_USER --db-password=$DB_PASS --no-interaction +$STD a2dissite 000-default.conf +echo "* * * * * php /usr/share/itsm-ng/front/cron.php" | crontab - +msg_ok "Installed ITSM-NG" + +msg_info "Configuring PHP" +PHP_VERSION=$(ls /etc/php/ | grep -E '^[0-9]+\.[0-9]+$' | head -n 1) +PHP_INI="/etc/php/$PHP_VERSION/apache2/php.ini" +sed -i 's/^upload_max_filesize = .*/upload_max_filesize = 20M/' $PHP_INI +sed -i 's/^post_max_size = .*/post_max_size = 20M/' $PHP_INI +sed -i 's/^max_execution_time = .*/max_execution_time = 60/' $PHP_INI +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/^;\?\s*session.cookie_httponly\s*=.*/session.cookie_httponly = On/' $PHP_INI +systemctl restart apache2 +msg_ok "Configured PHP" + +motd_ssh +customize + +msg_info "Cleaning up" +rm -rf /usr/share/itsm-ng/install +$STD apt-get -y autoremove +$STD apt-get -y autoclean +msg_ok "Cleaned" From c4c974a01da4d5f8ec0deccd2d6d5109be3c665f Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 21:02:34 +0100 Subject: [PATCH 07/17] Update CHANGELOG.md (#5623) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8eb6f902e..a87cc8dfd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,14 +16,20 @@ All LXC instances created using this repository come pre-installed with Midnight ## 2025-07-01 -### πŸš€ Updated Scripts +### πŸ†• New Scripts - - [tools]: increase fetch_and_deploy with dns pre check [@MickLesk](https://github.com/MickLesk) ([#5608](https://github.com/community-scripts/ProxmoxVE/pull/5608)) + - ITSM-NG ([#5615](https://github.com/community-scripts/ProxmoxVE/pull/5615)) + +### πŸš€ Updated Scripts - #### 🐞 Bug Fixes - Open WebUI: Fix Ollama update procedure [@tremor021](https://github.com/tremor021) ([#5601](https://github.com/community-scripts/ProxmoxVE/pull/5601)) + - #### ✨ New Features + + - [tools]: increase fetch_and_deploy with dns pre check [@MickLesk](https://github.com/MickLesk) ([#5608](https://github.com/community-scripts/ProxmoxVE/pull/5608)) + ## 2025-06-30 ### πŸ†• New Scripts From 3275136db71bb0238bc791233b9c95875946aa69 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 21:02:37 +0100 Subject: [PATCH 08/17] Update date in json (#5624) Co-authored-by: GitHub Actions --- frontend/public/json/itsm-ng.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/public/json/itsm-ng.json b/frontend/public/json/itsm-ng.json index c9b561c85..6ff7d184c 100644 --- a/frontend/public/json/itsm-ng.json +++ b/frontend/public/json/itsm-ng.json @@ -4,7 +4,7 @@ "categories": [ 25 ], - "date_created": "2025-06-20", + "date_created": "2025-07-01", "type": "ct", "updateable": true, "privileged": false, From 2959d37b65a113c56d3f3803119fa0ba6e211c5b Mon Sep 17 00:00:00 2001 From: "push-app-to-main[bot]" <203845782+push-app-to-main[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 23:35:18 +0200 Subject: [PATCH 09/17] 'Add new script' (#5614) --- ct/headers/librespeed-rust | 6 +++ ct/librespeed-rust.sh | 54 +++++++++++++++++++++++ frontend/public/json/librespeed-rust.json | 35 +++++++++++++++ install/librespeed-rust-install.sh | 28 ++++++++++++ 4 files changed, 123 insertions(+) create mode 100644 ct/headers/librespeed-rust create mode 100644 ct/librespeed-rust.sh create mode 100644 frontend/public/json/librespeed-rust.json create mode 100644 install/librespeed-rust-install.sh diff --git a/ct/headers/librespeed-rust b/ct/headers/librespeed-rust new file mode 100644 index 000000000..d032782ae --- /dev/null +++ b/ct/headers/librespeed-rust @@ -0,0 +1,6 @@ + __ _ __ __ ____ __ + / / (_) /_ ________ _________ ___ ___ ____/ / / __ \__ _______/ /_ + / / / / __ \/ ___/ _ \/ ___/ __ \/ _ \/ _ \/ __ /_____/ /_/ / / / / ___/ __/ + / /___/ / /_/ / / / __(__ ) /_/ / __/ __/ /_/ /_____/ _, _/ /_/ (__ ) /_ +/_____/_/_.___/_/ \___/____/ .___/\___/\___/\__,_/ /_/ |_|\__,_/____/\__/ + /_/ diff --git a/ct/librespeed-rust.sh b/ct/librespeed-rust.sh new file mode 100644 index 000000000..e10a9b679 --- /dev/null +++ b/ct/librespeed-rust.sh @@ -0,0 +1,54 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: Joseph Stubberfield (stubbers) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/librespeed/speedtest-rust + +APP="Librespeed-Rust" +var_tags="${var_tags:-network}" +var_cpu="${var_cpu:-1}" +var_ram="${var_ram:-512}" +var_disk="${var_disk:-4}" +var_os="${var_os:-debian}" +var_version="${var_version:-12}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /var/lib/librespeed-rs ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + RELEASE=$(curl -fsSL https://api.github.com/repos/librespeed/speedtest-rust/releases/latest | grep '"tag_name"' | sed -E 's/.*"tag_name": "v([^"]+).*/\1/') + if [[ "${RELEASE}" != "$(cat ~/.librespeed 2>/dev/null)" ]] || [[ ! -f ~/.librespeed ]]; then + msg_info "Stopping Services" + systemctl stop librespeed-rs + msg_ok "Services Stopped" + + fetch_and_deploy_gh_release "librespeed-rust" "librespeed/speedtest-rust" "binary" "latest" "/opt/librespeed-rust" "librespeed-rs-x86_64-unknown-linux-gnu.deb" + + msg_info "Starting Service" + systemctl start librespeed-rs + msg_ok "Started Service" + else + msg_ok "No update required. ${APP} is already at v${RELEASE}" + fi + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" diff --git a/frontend/public/json/librespeed-rust.json b/frontend/public/json/librespeed-rust.json new file mode 100644 index 000000000..753b408a6 --- /dev/null +++ b/frontend/public/json/librespeed-rust.json @@ -0,0 +1,35 @@ +{ + "name": "Librespeed Rust", + "slug": "librespeed-rust", + "categories": [ + 4 + ], + "date_created": "2025-06-27", + "type": "ct", + "updateable": true, + "privileged": false, + "config_path": "/var/lib/librespeed-rs/configs.toml", + "interface_port": 8080, + "documentation": "https://github.com/librespeed/speedtest-rust", + "website": "https://github.com/librespeed/speedtest-rust", + "logo": "https://raw.githubusercontent.com/selfhst/icons/refs/heads/main/svg/librespeed.svg", + "description": "Librespeed is a no flash, no java, no websocket speedtest server. This community script deploys the rust version for simplicity and low resource usage.", + "install_methods": [ + { + "type": "default", + "script": "ct/librespeed-rust.sh", + "resources": { + "cpu": 1, + "ram": 512, + "hdd": 4, + "os": "Debian", + "version": "12" + } + } + ], + "default_credentials": { + "username": null, + "password": null + }, + "notes": [] +} diff --git a/install/librespeed-rust-install.sh b/install/librespeed-rust-install.sh new file mode 100644 index 000000000..7013543fc --- /dev/null +++ b/install/librespeed-rust-install.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: Joseph Stubberfield (stubbers) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/librespeed/speedtest-rust + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +fetch_and_deploy_gh_release "librespeed-rust" "librespeed/speedtest-rust" "binary" "latest" "/opt/librespeed-rust" "librespeed-rs-x86_64-unknown-linux-gnu.deb" + +msg_info "Enabling Service" +systemctl enable -q --now speedtest_rs.service +msg_ok "Enabled Service" + +motd_ssh +customize + +msg_info "Cleaning up" +$STD apt-get -y autoremove +$STD apt-get -y autoclean +msg_ok "Cleaned" From 4af08a5c45ea62ee06a8606b2825430b671aabc6 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:35:42 +0100 Subject: [PATCH 10/17] Update date in json (#5626) Co-authored-by: GitHub Actions --- frontend/public/json/librespeed-rust.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/public/json/librespeed-rust.json b/frontend/public/json/librespeed-rust.json index 753b408a6..13c2eaf5e 100644 --- a/frontend/public/json/librespeed-rust.json +++ b/frontend/public/json/librespeed-rust.json @@ -4,7 +4,7 @@ "categories": [ 4 ], - "date_created": "2025-06-27", + "date_created": "2025-07-01", "type": "ct", "updateable": true, "privileged": false, From a78dd20a2e240413c9e4a9355cd66f4caae790ce Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:35:55 +0100 Subject: [PATCH 11/17] Update CHANGELOG.md (#5627) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a87cc8dfd..aa25c1b06 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,7 +18,8 @@ All LXC instances created using this repository come pre-installed with Midnight ### πŸ†• New Scripts - - ITSM-NG ([#5615](https://github.com/community-scripts/ProxmoxVE/pull/5615)) + - Librespeed Rust ([#5614](https://github.com/community-scripts/ProxmoxVE/pull/5614)) +- ITSM-NG ([#5615](https://github.com/community-scripts/ProxmoxVE/pull/5615)) ### πŸš€ Updated Scripts From 35a0d14110eac4b0d7ec3827c083ebdae75b1de8 Mon Sep 17 00:00:00 2001 From: Austin Date: Tue, 1 Jul 2025 17:36:13 -0400 Subject: [PATCH 12/17] Jellyfin GPU passthrough setup instruction (#5625) --- frontend/public/json/jellyfin.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/frontend/public/json/jellyfin.json b/frontend/public/json/jellyfin.json index 8c0429c16..4dedd7103 100644 --- a/frontend/public/json/jellyfin.json +++ b/frontend/public/json/jellyfin.json @@ -39,6 +39,10 @@ { "text": "FFmpeg path: /usr/lib/jellyfin-ffmpeg/ffmpeg", "type": "info" + }, + { + "text": "For NVIDIA graphics cards, you'll need to install the same drivers in the container that you did on the host. In the container, run the driver installation script and add the CLI arg --no-kernel-module", + "type": "info" } ] } From 400a82e2cc8df4aba1f16a552f577f2395e31d73 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:37:47 +0100 Subject: [PATCH 13/17] Update CHANGELOG.md (#5628) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index aa25c1b06..e58fe66a2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,6 +31,12 @@ All LXC instances created using this repository come pre-installed with Midnight - [tools]: increase fetch_and_deploy with dns pre check [@MickLesk](https://github.com/MickLesk) ([#5608](https://github.com/community-scripts/ProxmoxVE/pull/5608)) +### 🌐 Website + + - #### πŸ“ Script Information + + - Jellyfin GPU Passthrough NVIDIA Note [@austinpilz](https://github.com/austinpilz) ([#5625](https://github.com/community-scripts/ProxmoxVE/pull/5625)) + ## 2025-06-30 ### πŸ†• New Scripts From d9d4444f084bd4d925f3f64305de4156a99c4b85 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:38:21 +0100 Subject: [PATCH 14/17] Update CHANGELOG.md (#5629) Co-authored-by: github-actions[bot] From f93c56875832a9ff1488d6d07c77f46991eac940 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 22:40:53 +0100 Subject: [PATCH 15/17] Update CHANGELOG.md (#5630) Co-authored-by: github-actions[bot] From 020a4b3597630b8c335d4a133211068f79890b17 Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Wed, 2 Jul 2025 02:15:06 +0200 Subject: [PATCH 16/17] Update versions.json (#5632) Co-authored-by: GitHub Actions[bot] --- frontend/public/json/versions.json | 158 ++++++++++++++--------------- 1 file changed, 79 insertions(+), 79 deletions(-) diff --git a/frontend/public/json/versions.json b/frontend/public/json/versions.json index 554d30952..3f36ef931 100644 --- a/frontend/public/json/versions.json +++ b/frontend/public/json/versions.json @@ -1,13 +1,83 @@ [ + { + "name": "mongodb/mongo", + "version": "r8.1.2", + "date": "2025-07-01T22:39:32Z" + }, + { + "name": "Threadfin/Threadfin", + "version": "1.2.35", + "date": "2025-07-01T21:37:20Z" + }, + { + "name": "apache/tomcat", + "version": "10.1.43", + "date": "2025-07-01T21:32:34Z" + }, + { + "name": "actualbudget/actual", + "version": "v25.7.0", + "date": "2025-07-01T21:02:27Z" + }, + { + "name": "home-assistant/core", + "version": "2025.6.3", + "date": "2025-06-24T13:00:12Z" + }, + { + "name": "TwiN/gatus", + "version": "v5.19.0", + "date": "2025-07-01T19:59:32Z" + }, + { + "name": "Koenkk/zigbee2mqtt", + "version": "2.5.0", + "date": "2025-07-01T18:28:01Z" + }, + { + "name": "hivemq/hivemq-community-edition", + "version": "2025.4", + "date": "2025-07-01T18:01:37Z" + }, + { + "name": "HabitRPG/habitica", + "version": "v5.37.1", + "date": "2025-07-01T16:57:43Z" + }, + { + "name": "navidrome/navidrome", + "version": "v0.57.0", + "date": "2025-07-01T16:47:46Z" + }, + { + "name": "jenkinsci/jenkins", + "version": "jenkins-2.517", + "date": "2025-07-01T16:08:23Z" + }, + { + "name": "element-hq/synapse", + "version": "v1.133.0", + "date": "2025-07-01T15:13:42Z" + }, + { + "name": "sysadminsmedia/homebox", + "version": "v0.20.1", + "date": "2025-07-01T14:18:32Z" + }, + { + "name": "keycloak/keycloak", + "version": "26.3.0", + "date": "2025-07-01T13:18:12Z" + }, { "name": "syncthing/syncthing", "version": "v1.30.0", "date": "2025-07-01T11:29:11Z" }, { - "name": "keycloak/keycloak", - "version": "26.3.0", - "date": "2025-07-01T10:32:30Z" + "name": "Checkmk/checkmk", + "version": "v2.2.0p44-rc1", + "date": "2025-07-01T11:10:25Z" }, { "name": "rcourtman/Pulse", @@ -19,11 +89,6 @@ "version": "v0.22.2101", "date": "2025-07-01T05:56:59Z" }, - { - "name": "Checkmk/checkmk", - "version": "v2.4.0p6-rc1", - "date": "2025-07-01T05:41:26Z" - }, { "name": "zabbix/zabbix", "version": "7.4.0", @@ -34,6 +99,11 @@ "version": "v0.15.0-rc3", "date": "2025-07-01T04:09:37Z" }, + { + "name": "wazuh/wazuh", + "version": "coverity-w27-4.13.0", + "date": "2025-07-01T03:17:32Z" + }, { "name": "NginxProxyManager/nginx-proxy-manager", "version": "v2.12.4", @@ -44,21 +114,11 @@ "version": "v2.32.0", "date": "2025-06-30T22:12:48Z" }, - { - "name": "mongodb/mongo", - "version": "r8.0.11", - "date": "2025-06-30T20:30:31Z" - }, { "name": "docker/compose", "version": "v2.38.1", "date": "2025-06-30T20:07:35Z" }, - { - "name": "home-assistant/core", - "version": "2025.6.3", - "date": "2025-06-24T13:00:12Z" - }, { "name": "jhuckaby/Cronicle", "version": "v0.9.81", @@ -66,7 +126,7 @@ }, { "name": "ollama/ollama", - "version": "v0.9.4-rc5", + "version": "v0.9.4-rc6", "date": "2025-06-30T15:59:03Z" }, { @@ -124,11 +184,6 @@ "version": "v6.2.19", "date": "2025-06-28T06:53:45Z" }, - { - "name": "sysadminsmedia/homebox", - "version": "v0.20.0", - "date": "2025-06-29T18:50:03Z" - }, { "name": "dgtlmoon/changedetection.io", "version": "0.50.5", @@ -284,11 +339,6 @@ "version": "2.0.5", "date": "2025-06-25T14:53:31Z" }, - { - "name": "jenkinsci/jenkins", - "version": "jenkins-2.504.3", - "date": "2025-06-25T14:43:01Z" - }, { "name": "bunkerity/bunkerweb", "version": "testing", @@ -319,21 +369,11 @@ "version": "v2.18.0", "date": "2025-06-24T08:29:55Z" }, - { - "name": "element-hq/synapse", - "version": "v1.132.0", - "date": "2025-06-17T13:49:30Z" - }, { "name": "fallenbagel/jellyseerr", "version": "preview-fix-proxy-axios", "date": "2025-06-24T08:50:22Z" }, - { - "name": "wazuh/wazuh", - "version": "coverity-w26-4.13.0", - "date": "2025-06-24T02:02:34Z" - }, { "name": "minio/minio", "version": "RELEASE.2025-06-13T11-33-47Z", @@ -379,11 +419,6 @@ "version": "0.17.14", "date": "2025-06-21T23:43:04Z" }, - { - "name": "HabitRPG/habitica", - "version": "v5.37.0", - "date": "2025-06-21T14:05:12Z" - }, { "name": "rogerfar/rdt-client", "version": "v2.0.114", @@ -689,11 +724,6 @@ "version": "v0.26.1", "date": "2025-06-06T11:22:02Z" }, - { - "name": "apache/tomcat", - "version": "10.1.42", - "date": "2025-06-05T22:39:40Z" - }, { "name": "benjaminjonard/koillection", "version": "1.6.14", @@ -709,11 +739,6 @@ "version": "mariadb-11.8.2", "date": "2025-06-04T13:35:16Z" }, - { - "name": "actualbudget/actual", - "version": "v25.6.1", - "date": "2025-06-04T22:24:31Z" - }, { "name": "rabbitmq/rabbitmq-server", "version": "v4.1.1", @@ -749,16 +774,6 @@ "version": "v1.3.2", "date": "2025-06-01T19:02:46Z" }, - { - "name": "Koenkk/zigbee2mqtt", - "version": "2.4.0", - "date": "2025-06-01T18:08:44Z" - }, - { - "name": "TwiN/gatus", - "version": "v5.18.1", - "date": "2025-05-31T23:06:08Z" - }, { "name": "blakeblackshear/frigate", "version": "v0.14.1", @@ -774,11 +789,6 @@ "version": "0.26.3", "date": "2025-05-29T21:18:15Z" }, - { - "name": "navidrome/navidrome", - "version": "v0.56.1", - "date": "2025-05-29T19:09:16Z" - }, { "name": "readeck/readeck", "version": "0.19.2", @@ -799,11 +809,6 @@ "version": "v1.12.3", "date": "2025-05-27T20:43:10Z" }, - { - "name": "Threadfin/Threadfin", - "version": "1.2.34", - "date": "2025-05-27T18:18:00Z" - }, { "name": "dani-garcia/vaultwarden", "version": "1.34.1", @@ -944,11 +949,6 @@ "version": "6.8.1", "date": "2025-04-30T16:44:16Z" }, - { - "name": "hivemq/hivemq-community-edition", - "version": "2025.3", - "date": "2025-04-30T02:52:28Z" - }, { "name": "hargata/lubelog", "version": "v1.4.7", From 8a91b87f4c5d061e5bb2dc6d1295430ad414f4ee Mon Sep 17 00:00:00 2001 From: "community-scripts-pr-app[bot]" <189241966+community-scripts-pr-app[bot]@users.noreply.github.com> Date: Wed, 2 Jul 2025 01:15:44 +0100 Subject: [PATCH 17/17] Update CHANGELOG.md (#5633) Co-authored-by: github-actions[bot] --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e58fe66a2..9adf87904 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,8 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment. +## 2025-07-02 + ## 2025-07-01 ### πŸ†• New Scripts