Compare commits

...

17 Commits

Author SHA1 Message Date
community-scripts-pr-app[bot]
8a91b87f4c Update CHANGELOG.md (#5633)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-02 01:15:44 +01:00
community-scripts-pr-app[bot]
020a4b3597 Update versions.json (#5632)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-02 02:15:06 +02:00
community-scripts-pr-app[bot]
f93c568758 Update CHANGELOG.md (#5630)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 22:40:53 +01:00
community-scripts-pr-app[bot]
d9d4444f08 Update CHANGELOG.md (#5629)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 22:38:21 +01:00
community-scripts-pr-app[bot]
400a82e2cc Update CHANGELOG.md (#5628)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 22:37:47 +01:00
Austin
35a0d14110 Jellyfin GPU passthrough setup instruction (#5625) 2025-07-01 23:36:13 +02:00
community-scripts-pr-app[bot]
a78dd20a2e Update CHANGELOG.md (#5627)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 22:35:55 +01:00
community-scripts-pr-app[bot]
4af08a5c45 Update date in json (#5626)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-07-01 22:35:42 +01:00
push-app-to-main[bot]
2959d37b65 'Add new script' (#5614) 2025-07-01 23:35:18 +02:00
community-scripts-pr-app[bot]
3275136db7 Update date in json (#5624)
Co-authored-by: GitHub Actions <github-actions[bot]@users.noreply.github.com>
2025-07-01 21:02:37 +01:00
community-scripts-pr-app[bot]
c4c974a01d Update CHANGELOG.md (#5623)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 21:02:34 +01:00
push-app-to-main[bot]
4fe05d09a2 ITSM-NG (#5615)
* '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>
2025-07-01 22:02:06 +02:00
community-scripts-pr-app[bot]
7b5dd6cd69 Update versions.json (#5613)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 14:07:45 +02:00
community-scripts-pr-app[bot]
28c779ef86 Update CHANGELOG.md (#5612)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 11:31:43 +01:00
CanbiZ
8c1dac0583 Update tools.func (#5608) 2025-07-01 12:31:06 +02:00
community-scripts-pr-app[bot]
2db514f666 Update CHANGELOG.md (#5610)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-07-01 08:46:41 +01:00
Slaviša Arežina
0232dbd89d Update openwebui.sh (#5601) 2025-07-01 09:46:07 +02:00
13 changed files with 429 additions and 118 deletions

View File

@@ -14,8 +14,31 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment. All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
## 2025-07-02
## 2025-07-01 ## 2025-07-01
### 🆕 New Scripts
- Librespeed Rust ([#5614](https://github.com/community-scripts/ProxmoxVE/pull/5614))
- 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))
### 🌐 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 ## 2025-06-30
### 🆕 New Scripts ### 🆕 New Scripts

6
ct/headers/itsm-ng Normal file
View File

@@ -0,0 +1,6 @@
_______________ __ ___ _ ________
/ _/_ __/ ___// |/ / / | / / ____/
/ / / / \__ \/ /|_/ /_____/ |/ / / __
_/ / / / ___/ / / / /_____/ /| / /_/ /
/___/ /_/ /____/_/ /_/ /_/ |_/\____/

View File

@@ -0,0 +1,6 @@
__ _ __ __ ____ __
/ / (_) /_ ________ _________ ___ ___ ____/ / / __ \__ _______/ /_
/ / / / __ \/ ___/ _ \/ ___/ __ \/ _ \/ _ \/ __ /_____/ /_/ / / / / ___/ __/
/ /___/ / /_/ / / / __(__ ) /_/ / __/ __/ /_/ /_____/ _, _/ /_/ (__ ) /_
/_____/_/_.___/_/ \___/____/ .___/\___/\___/\__,_/ /_/ |_|\__,_/____/\__/
/_/

47
ct/itsm-ng.sh Normal file
View File

@@ -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}"

54
ct/librespeed-rust.sh Normal file
View File

@@ -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}"

View File

@@ -30,11 +30,11 @@ function update_script() {
if [ -x "/usr/bin/ollama" ]; then if [ -x "/usr/bin/ollama" ]; then
msg_info "Updating Ollama" msg_info "Updating Ollama"
rm -rf /usr/lib/ollama
rm -rf /usr/bin/ollama
OLLAMA_VERSION=$(ollama -v | awk '{print $NF}') 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)}') 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 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 curl -fsSLO https://ollama.com/download/ollama-linux-amd64.tgz
tar -C /usr -xzf ollama-linux-amd64.tgz tar -C /usr -xzf ollama-linux-amd64.tgz
rm -rf ollama-linux-amd64.tgz rm -rf ollama-linux-amd64.tgz

35
frontend/public/json/itsm-ng.json generated Normal file
View File

@@ -0,0 +1,35 @@
{
"name": "ITSM-NG",
"slug": "itsm-ng",
"categories": [
25
],
"date_created": "2025-07-01",
"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": []
}

View File

@@ -39,6 +39,10 @@
{ {
"text": "FFmpeg path: /usr/lib/jellyfin-ffmpeg/ffmpeg", "text": "FFmpeg path: /usr/lib/jellyfin-ffmpeg/ffmpeg",
"type": "info" "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"
} }
] ]
} }

View File

@@ -0,0 +1,35 @@
{
"name": "Librespeed Rust",
"slug": "librespeed-rust",
"categories": [
4
],
"date_created": "2025-07-01",
"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": []
}

View File

@@ -1,28 +1,123 @@
[ [
{
"name": "MagicMirrorOrg/MagicMirror",
"version": "v2.32.0",
"date": "2025-06-30T22:12:48Z"
},
{ {
"name": "mongodb/mongo", "name": "mongodb/mongo",
"version": "r8.0.11", "version": "r8.1.2",
"date": "2025-06-30T20:30:31Z" "date": "2025-07-01T22:39:32Z"
}, },
{ {
"name": "docker/compose", "name": "Threadfin/Threadfin",
"version": "v2.38.1", "version": "1.2.35",
"date": "2025-06-30T20:07:35Z" "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", "name": "home-assistant/core",
"version": "2025.6.3", "version": "2025.6.3",
"date": "2025-06-24T13:00:12Z" "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": "Checkmk/checkmk",
"version": "v2.2.0p44-rc1",
"date": "2025-07-01T11:10:25Z"
},
{ {
"name": "rcourtman/Pulse", "name": "rcourtman/Pulse",
"version": "v3.33.1", "version": "v99.99.99",
"date": "2025-06-30T11:29:32Z" "date": "2025-07-01T08:26:41Z"
},
{
"name": "Jackett/Jackett",
"version": "v0.22.2101",
"date": "2025-07-01T05:56:59Z"
},
{
"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": "wazuh/wazuh",
"version": "coverity-w27-4.13.0",
"date": "2025-07-01T03:17:32Z"
},
{
"name": "NginxProxyManager/nginx-proxy-manager",
"version": "v2.12.4",
"date": "2025-07-01T01:45:42Z"
},
{
"name": "MagicMirrorOrg/MagicMirror",
"version": "v2.32.0",
"date": "2025-06-30T22:12:48Z"
},
{
"name": "docker/compose",
"version": "v2.38.1",
"date": "2025-06-30T20:07:35Z"
}, },
{ {
"name": "jhuckaby/Cronicle", "name": "jhuckaby/Cronicle",
@@ -31,8 +126,8 @@
}, },
{ {
"name": "ollama/ollama", "name": "ollama/ollama",
"version": "v0.9.4-rc2", "version": "v0.9.4-rc6",
"date": "2025-06-27T18:45:33Z" "date": "2025-06-30T15:59:03Z"
}, },
{ {
"name": "prometheus/prometheus", "name": "prometheus/prometheus",
@@ -49,11 +144,6 @@
"version": "v7.4.4", "version": "v7.4.4",
"date": "2025-06-30T13:04:22Z" "date": "2025-06-30T13:04:22Z"
}, },
{
"name": "keycloak/keycloak",
"version": "26.3.0",
"date": "2025-06-30T12:53:32Z"
},
{ {
"name": "Graylog2/graylog2-server", "name": "Graylog2/graylog2-server",
"version": "6.3.0", "version": "6.3.0",
@@ -84,11 +174,6 @@
"version": "preview-v0.1", "version": "preview-v0.1",
"date": "2025-06-27T14:35:47Z" "date": "2025-06-27T14:35:47Z"
}, },
{
"name": "Jackett/Jackett",
"version": "v0.22.2097",
"date": "2025-06-30T05:53:30Z"
},
{ {
"name": "typesense/typesense", "name": "typesense/typesense",
"version": "v29.0", "version": "v29.0",
@@ -99,11 +184,6 @@
"version": "v6.2.19", "version": "v6.2.19",
"date": "2025-06-28T06:53:45Z" "date": "2025-06-28T06:53:45Z"
}, },
{
"name": "sysadminsmedia/homebox",
"version": "v0.20.0",
"date": "2025-06-29T18:50:03Z"
},
{ {
"name": "dgtlmoon/changedetection.io", "name": "dgtlmoon/changedetection.io",
"version": "0.50.5", "version": "0.50.5",
@@ -189,11 +269,6 @@
"version": "341.1", "version": "341.1",
"date": "2025-06-27T08:50:16Z" "date": "2025-06-27T08:50:16Z"
}, },
{
"name": "zabbix/zabbix",
"version": "7.2.10",
"date": "2025-06-27T06:40:00Z"
},
{ {
"name": "MediaBrowser/Emby.Releases", "name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.2", "version": "4.9.1.2",
@@ -264,11 +339,6 @@
"version": "2.0.5", "version": "2.0.5",
"date": "2025-06-25T14:53:31Z" "date": "2025-06-25T14:53:31Z"
}, },
{
"name": "jenkinsci/jenkins",
"version": "jenkins-2.504.3",
"date": "2025-06-25T14:43:01Z"
},
{ {
"name": "bunkerity/bunkerweb", "name": "bunkerity/bunkerweb",
"version": "testing", "version": "testing",
@@ -299,26 +369,11 @@
"version": "v2.18.0", "version": "v2.18.0",
"date": "2025-06-24T08:29:55Z" "date": "2025-06-24T08:29:55Z"
}, },
{
"name": "element-hq/synapse",
"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", "name": "fallenbagel/jellyseerr",
"version": "preview-fix-proxy-axios", "version": "preview-fix-proxy-axios",
"date": "2025-06-24T08:50:22Z" "date": "2025-06-24T08:50:22Z"
}, },
{
"name": "wazuh/wazuh",
"version": "coverity-w26-4.13.0",
"date": "2025-06-24T02:02:34Z"
},
{ {
"name": "minio/minio", "name": "minio/minio",
"version": "RELEASE.2025-06-13T11-33-47Z", "version": "RELEASE.2025-06-13T11-33-47Z",
@@ -326,8 +381,8 @@
}, },
{ {
"name": "runtipi/runtipi", "name": "runtipi/runtipi",
"version": "nightly", "version": "v4.2.1",
"date": "2025-06-23T19:10:33Z" "date": "2025-06-03T20:04:28Z"
}, },
{ {
"name": "VictoriaMetrics/VictoriaMetrics", "name": "VictoriaMetrics/VictoriaMetrics",
@@ -364,11 +419,6 @@
"version": "0.17.14", "version": "0.17.14",
"date": "2025-06-21T23:43:04Z" "date": "2025-06-21T23:43:04Z"
}, },
{
"name": "HabitRPG/habitica",
"version": "v5.37.0",
"date": "2025-06-21T14:05:12Z"
},
{ {
"name": "rogerfar/rdt-client", "name": "rogerfar/rdt-client",
"version": "v2.0.114", "version": "v2.0.114",
@@ -394,11 +444,6 @@
"version": "v4.0.15.2941", "version": "v4.0.15.2941",
"date": "2025-06-20T17:20:54Z" "date": "2025-06-20T17:20:54Z"
}, },
{
"name": "syncthing/syncthing",
"version": "2.0.0-rc.19",
"date": "2025-06-02T17:56:25Z"
},
{ {
"name": "benzino77/tasmocompiler", "name": "benzino77/tasmocompiler",
"version": "v12.7.0", "version": "v12.7.0",
@@ -619,11 +664,6 @@
"version": "v3.4.1", "version": "v3.4.1",
"date": "2025-06-11T07:53:44Z" "date": "2025-06-11T07:53:44Z"
}, },
{
"name": "openobserve/openobserve",
"version": "v0.15.0-rc2",
"date": "2025-06-11T04:29:22Z"
},
{ {
"name": "OctoPrint/OctoPrint", "name": "OctoPrint/OctoPrint",
"version": "1.11.2", "version": "1.11.2",
@@ -684,11 +724,6 @@
"version": "v0.26.1", "version": "v0.26.1",
"date": "2025-06-06T11:22:02Z" "date": "2025-06-06T11:22:02Z"
}, },
{
"name": "apache/tomcat",
"version": "10.1.42",
"date": "2025-06-05T22:39:40Z"
},
{ {
"name": "benjaminjonard/koillection", "name": "benjaminjonard/koillection",
"version": "1.6.14", "version": "1.6.14",
@@ -704,11 +739,6 @@
"version": "mariadb-11.8.2", "version": "mariadb-11.8.2",
"date": "2025-06-04T13:35:16Z" "date": "2025-06-04T13:35:16Z"
}, },
{
"name": "actualbudget/actual",
"version": "v25.6.1",
"date": "2025-06-04T22:24:31Z"
},
{ {
"name": "rabbitmq/rabbitmq-server", "name": "rabbitmq/rabbitmq-server",
"version": "v4.1.1", "version": "v4.1.1",
@@ -744,16 +774,6 @@
"version": "v1.3.2", "version": "v1.3.2",
"date": "2025-06-01T19:02:46Z" "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", "name": "blakeblackshear/frigate",
"version": "v0.14.1", "version": "v0.14.1",
@@ -769,11 +789,6 @@
"version": "0.26.3", "version": "0.26.3",
"date": "2025-05-29T21:18:15Z" "date": "2025-05-29T21:18:15Z"
}, },
{
"name": "navidrome/navidrome",
"version": "v0.56.1",
"date": "2025-05-29T19:09:16Z"
},
{ {
"name": "readeck/readeck", "name": "readeck/readeck",
"version": "0.19.2", "version": "0.19.2",
@@ -794,11 +809,6 @@
"version": "v1.12.3", "version": "v1.12.3",
"date": "2025-05-27T20:43:10Z" "date": "2025-05-27T20:43:10Z"
}, },
{
"name": "Threadfin/Threadfin",
"version": "1.2.34",
"date": "2025-05-27T18:18:00Z"
},
{ {
"name": "dani-garcia/vaultwarden", "name": "dani-garcia/vaultwarden",
"version": "1.34.1", "version": "1.34.1",
@@ -939,11 +949,6 @@
"version": "6.8.1", "version": "6.8.1",
"date": "2025-04-30T16:44:16Z" "date": "2025-04-30T16:44:16Z"
}, },
{
"name": "hivemq/hivemq-community-edition",
"version": "2025.3",
"date": "2025-04-30T02:52:28Z"
},
{ {
"name": "hargata/lubelog", "name": "hargata/lubelog",
"version": "v1.4.7", "version": "v1.4.7",
@@ -1209,11 +1214,6 @@
"version": "v25.2.1", "version": "v25.2.1",
"date": "2025-02-06T20:41:28Z" "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", "name": "AmruthPillai/Reactive-Resume",
"version": "v4.4.4", "version": "v4.4.4",

View File

@@ -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"

View File

@@ -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"

View File

@@ -761,7 +761,7 @@ function fetch_and_deploy_gh_release() {
local app_lc=$(echo "${app,,}" | tr -d ' ') local app_lc=$(echo "${app,,}" | tr -d ' ')
local version_file="$HOME/.${app_lc}" 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 download_timeout="--connect-timeout 15 --max-time 900"
local current_version="" local current_version=""
@@ -776,6 +776,14 @@ function fetch_and_deploy_gh_release() {
local header=() local header=()
[[ -n "${GITHUB_TOKEN:-}" ]] && header=(-H "Authorization: token $GITHUB_TOKEN") [[ -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 local max_retries=3 retry_delay=2 attempt=1 success=false resp http_code
while ((attempt <= max_retries)); do while ((attempt <= max_retries)); do
@@ -785,7 +793,7 @@ function fetch_and_deploy_gh_release() {
done done
if ! $success; then 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 return 1
fi fi
@@ -840,14 +848,12 @@ function fetch_and_deploy_gh_release() {
local assets url_match="" local assets url_match=""
assets=$(echo "$json" | jq -r '.assets[].browser_download_url') assets=$(echo "$json" | jq -r '.assets[].browser_download_url')
# If explicit filename pattern is provided (param $6), match that first
if [[ -n "$6" ]]; then if [[ -n "$6" ]]; then
for u in $assets; do for u in $assets; do
[[ "$u" =~ $6 || "$u" == *"$6" ]] && url_match="$u" && break [[ "$u" =~ $6 || "$u" == *"$6" ]] && url_match="$u" && break
done done
fi fi
# If no match via explicit pattern, fall back to architecture heuristic
if [[ -z "$url_match" ]]; then if [[ -z "$url_match" ]]; then
for u in $assets; do for u in $assets; do
if [[ "$u" =~ ($arch|amd64|x86_64|aarch64|arm64).*\.deb$ ]]; then if [[ "$u" =~ ($arch|amd64|x86_64|aarch64|arm64).*\.deb$ ]]; then
@@ -857,7 +863,6 @@ function fetch_and_deploy_gh_release() {
done done
fi fi
# Fallback: any .deb file
if [[ -z "$url_match" ]]; then if [[ -z "$url_match" ]]; then
for u in $assets; do for u in $assets; do
[[ "$u" =~ \.deb$ ]] && url_match="$u" && break [[ "$u" =~ \.deb$ ]] && url_match="$u" && break