mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-11-23 22:15:16 +00:00
Compare commits
1 Commits
MickLesk-p
...
ct_cleanup
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a6e53dea01 |
45
CHANGELOG.md
45
CHANGELOG.md
@@ -10,53 +10,8 @@
|
|||||||
> [!CAUTION]
|
> [!CAUTION]
|
||||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||||
|
|
||||||
## 2025-11-23
|
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
|
||||||
|
|
||||||
- #### 🐞 Bug Fixes
|
|
||||||
|
|
||||||
- [LibreNMS] Correcting mariadb sed string for Debian 13 default in install/librenms-install.sh, website config for Debian 13 #9369 [@htmlspinnr](https://github.com/htmlspinnr) ([#9370](https://github.com/community-scripts/ProxmoxVE/pull/9370))
|
|
||||||
- fix: Snipe-IT update check failure [@ruanmed](https://github.com/ruanmed) ([#9371](https://github.com/community-scripts/ProxmoxVE/pull/9371))
|
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- PVE Kernel Clean: Add info about currently running kernel [@tremor021](https://github.com/tremor021) ([#9388](https://github.com/community-scripts/ProxmoxVE/pull/9388))
|
|
||||||
|
|
||||||
- #### 🔧 Refactor
|
|
||||||
|
|
||||||
- Update glpi-install.sh to remove install.php [@CrazyWolf13](https://github.com/CrazyWolf13) ([#9378](https://github.com/community-scripts/ProxmoxVE/pull/9378))
|
|
||||||
|
|
||||||
### 🌐 Website
|
|
||||||
|
|
||||||
- #### 🐞 Bug Fixes
|
|
||||||
|
|
||||||
- fix: enhance back navigation in NotFoundPage component and remove unused deps [@BramSuurdje](https://github.com/BramSuurdje) ([#9341](https://github.com/community-scripts/ProxmoxVE/pull/9341))
|
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- feat(frontend): add script disable functionality with visual indicators [@AlphaLawless](https://github.com/AlphaLawless) ([#9374](https://github.com/community-scripts/ProxmoxVE/pull/9374))
|
|
||||||
|
|
||||||
## 2025-11-22
|
## 2025-11-22
|
||||||
|
|
||||||
### 🆕 New Scripts
|
|
||||||
|
|
||||||
- Upgopher ([#9360](https://github.com/community-scripts/ProxmoxVE/pull/9360))
|
|
||||||
|
|
||||||
### 🚀 Updated Scripts
|
|
||||||
|
|
||||||
- Expand support to Proxmox VE 9.1 in VM scripts [@MickLesk](https://github.com/MickLesk) ([#9351](https://github.com/community-scripts/ProxmoxVE/pull/9351))
|
|
||||||
|
|
||||||
- #### 🐞 Bug Fixes
|
|
||||||
|
|
||||||
- fix: Snipe-IT install and update failure due to new repository url [@ruanmed](https://github.com/ruanmed) ([#9362](https://github.com/community-scripts/ProxmoxVE/pull/9362))
|
|
||||||
- glpi - allow migration of existing databases [@moodyblue](https://github.com/moodyblue) ([#9353](https://github.com/community-scripts/ProxmoxVE/pull/9353))
|
|
||||||
|
|
||||||
- #### ✨ New Features
|
|
||||||
|
|
||||||
- Refactor cleanup steps to use cleanup_lxc function (install/ Folder) [@MickLesk](https://github.com/MickLesk) ([#9354](https://github.com/community-scripts/ProxmoxVE/pull/9354))
|
|
||||||
- Remove redundant cleanup steps from update scripts (ct/ Folder) [@MickLesk](https://github.com/MickLesk) ([#9359](https://github.com/community-scripts/ProxmoxVE/pull/9359))
|
|
||||||
|
|
||||||
### 🌐 Website
|
### 🌐 Website
|
||||||
|
|
||||||
- #### ✨ New Features
|
- #### ✨ New Features
|
||||||
|
|||||||
@@ -1,6 +0,0 @@
|
|||||||
__ __ __
|
|
||||||
/ / / /___ ____ _____ ____ / /_ ___ _____
|
|
||||||
/ / / / __ \/ __ `/ __ \/ __ \/ __ \/ _ \/ ___/
|
|
||||||
/ /_/ / /_/ / /_/ / /_/ / /_/ / / / / __/ /
|
|
||||||
\____/ .___/\__, /\____/ .___/_/ /_/\___/_/
|
|
||||||
/_/ /____/ /_/
|
|
||||||
@@ -31,7 +31,7 @@ function update_script() {
|
|||||||
sed -i '/index index.php;/i \ client_max_body_size 100M;' /etc/nginx/conf.d/snipeit.conf
|
sed -i '/index index.php;/i \ client_max_body_size 100M;' /etc/nginx/conf.d/snipeit.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "snipe-it" "grokability/snipe-it"; then
|
if check_for_gh_release "snipe-it" "snipe/snipe-it"; then
|
||||||
msg_info "Stopping Services"
|
msg_info "Stopping Services"
|
||||||
systemctl stop nginx
|
systemctl stop nginx
|
||||||
msg_ok "Services Stopped"
|
msg_ok "Services Stopped"
|
||||||
@@ -40,7 +40,7 @@ function update_script() {
|
|||||||
mv /opt/snipe-it /opt/snipe-it-backup
|
mv /opt/snipe-it /opt/snipe-it-backup
|
||||||
msg_ok "Backup created"
|
msg_ok "Backup created"
|
||||||
|
|
||||||
fetch_and_deploy_gh_release "snipe-it" "grokability/snipe-it" "tarball"
|
fetch_and_deploy_gh_release "snipe-it" "snipe/snipe-it" "tarball"
|
||||||
[[ "$(php -v 2>/dev/null)" == PHP\ 8.2* ]] && PHP_VERSION="8.3" PHP_MODULE="common,ctype,ldap,fileinfo,iconv,mysql,soap,xsl" PHP_FPM="YES" setup_php
|
[[ "$(php -v 2>/dev/null)" == PHP\ 8.2* ]] && PHP_VERSION="8.3" PHP_MODULE="common,ctype,ldap,fileinfo,iconv,mysql,soap,xsl" PHP_FPM="YES" setup_php
|
||||||
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/snipeit.conf
|
sed -i 's/php8.2/php8.3/g' /etc/nginx/conf.d/snipeit.conf
|
||||||
setup_composer
|
setup_composer
|
||||||
|
|||||||
@@ -1,54 +0,0 @@
|
|||||||
#!/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: Eduard González (wanetty)
|
|
||||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
|
||||||
# Source: https://github.com/wanetty/upgopher
|
|
||||||
|
|
||||||
APP="Upgopher"
|
|
||||||
var_tags="${var_tags:-file-sharing}"
|
|
||||||
var_cpu="${var_cpu:-1}"
|
|
||||||
var_ram="${var_ram:-512}"
|
|
||||||
var_disk="${var_disk:-4}"
|
|
||||||
var_os="${var_os:-debian}"
|
|
||||||
var_version="${var_version:-13}"
|
|
||||||
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 /opt/upgopher ]]; then
|
|
||||||
msg_error "No ${APP} Installation Found!"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
|
|
||||||
if check_for_gh_release "upgopher" "wanetty/upgopher"; then
|
|
||||||
msg_info "Stopping Service"
|
|
||||||
systemctl stop upgopher
|
|
||||||
msg_ok "Stopped Service"
|
|
||||||
|
|
||||||
fetch_and_deploy_gh_release "upgopher" "wanetty/upgopher" "prebuild" "latest" "/opt/upgopher" "upgopher_*_linux_amd64.tar.gz"
|
|
||||||
chmod +x /opt/upgopher/upgopher
|
|
||||||
|
|
||||||
msg_info "Starting Service"
|
|
||||||
systemctl start upgopher
|
|
||||||
msg_ok "Started Service"
|
|
||||||
msg_ok "Updated successfully!"
|
|
||||||
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}:9090${CL}"
|
|
||||||
850
frontend/bun.lock
generated
850
frontend/bun.lock
generated
File diff suppressed because it is too large
Load Diff
6
frontend/package.json
generated
6
frontend/package.json
generated
@@ -37,7 +37,6 @@
|
|||||||
"clsx": "^2.1.1",
|
"clsx": "^2.1.1",
|
||||||
"cmdk": "^1.1.1",
|
"cmdk": "^1.1.1",
|
||||||
"date-fns": "^4.1.0",
|
"date-fns": "^4.1.0",
|
||||||
|
|
||||||
"framer-motion": "^11.18.2",
|
"framer-motion": "^11.18.2",
|
||||||
"fuse.js": "^7.1.0",
|
"fuse.js": "^7.1.0",
|
||||||
"lucide-react": "^0.554.0",
|
"lucide-react": "^0.554.0",
|
||||||
@@ -46,15 +45,20 @@
|
|||||||
"next": "15.5.2",
|
"next": "15.5.2",
|
||||||
"next-themes": "^0.4.4",
|
"next-themes": "^0.4.4",
|
||||||
"nuqs": "^2.4.1",
|
"nuqs": "^2.4.1",
|
||||||
|
"pocketbase": "^0.21.5",
|
||||||
"prettier-plugin-organize-imports": "^4.1.0",
|
"prettier-plugin-organize-imports": "^4.1.0",
|
||||||
"react": "19.0.0",
|
"react": "19.0.0",
|
||||||
"react-chartjs-2": "^5.3.0",
|
"react-chartjs-2": "^5.3.0",
|
||||||
|
"react-code-blocks": "^0.1.6",
|
||||||
|
"react-datepicker": "^7.6.0",
|
||||||
"react-day-picker": "^9.4.3",
|
"react-day-picker": "^9.4.3",
|
||||||
"react-dom": "19.0.0",
|
"react-dom": "19.0.0",
|
||||||
"react-icons": "^5.5.0",
|
"react-icons": "^5.5.0",
|
||||||
|
"react-simple-typewriter": "^5.0.1",
|
||||||
"react-use-measure": "^2.1.7",
|
"react-use-measure": "^2.1.7",
|
||||||
"recharts": "2.15.4",
|
"recharts": "2.15.4",
|
||||||
"sharp": "^0.33.5",
|
"sharp": "^0.33.5",
|
||||||
|
"simple-icons": "^13.21.0",
|
||||||
"sonner": "^1.7.4",
|
"sonner": "^1.7.4",
|
||||||
"tailwind-merge": "^2.6.0",
|
"tailwind-merge": "^2.6.0",
|
||||||
"zod": "^3.24.2"
|
"zod": "^3.24.2"
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
"ram": 2048,
|
"ram": 2048,
|
||||||
"hdd": 4,
|
"hdd": 4,
|
||||||
"os": "Debian",
|
"os": "Debian",
|
||||||
"version": "13"
|
"version": "12"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,43 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "OPNsense",
|
|
||||||
"slug": "opnsense-vm",
|
|
||||||
"categories": [
|
|
||||||
4,
|
|
||||||
2
|
|
||||||
],
|
|
||||||
"date_created": "2025-11-23",
|
|
||||||
"type": "vm",
|
|
||||||
"updateable": true,
|
|
||||||
"privileged": false,
|
|
||||||
"interface_port": 443,
|
|
||||||
"documentation": "https://docs.opnsense.org/",
|
|
||||||
"website": "https://opnsense.org/",
|
|
||||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/opnsense.webp",
|
|
||||||
"config_path": "",
|
|
||||||
"description": "OPNsense is an open-source firewall and routing platform based on FreeBSD. It provides advanced security features, including intrusion detection, VPN support, traffic shaping, and web filtering, with an intuitive web interface for easy management. Known for its reliability and regular updates, OPNsense is a popular choice for both businesses and home networks.",
|
|
||||||
"disable": true,
|
|
||||||
"disable_description": "This script has been temporarily disabled due to installation failures. The OPNsense bootstrap process was not completing successfully, resulting in a plain FreeBSD VM instead of a functional OPNsense installation. The issue is being investigated and the script will be re-enabled once resolved. For more details, see: https://github.com/community-scripts/ProxmoxVE/issues/6183",
|
|
||||||
"install_methods": [
|
|
||||||
{
|
|
||||||
"type": "default",
|
|
||||||
"script": "vm/opnsense-vm.sh",
|
|
||||||
"resources": {
|
|
||||||
"cpu": 4,
|
|
||||||
"ram": 8192,
|
|
||||||
"hdd": 10,
|
|
||||||
"os": "FreeBSD",
|
|
||||||
"version": "latest"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"default_credentials": {
|
|
||||||
"username": "root",
|
|
||||||
"password": "opnsense"
|
|
||||||
},
|
|
||||||
"notes": [
|
|
||||||
{
|
|
||||||
"text": "It will fail with default settings if there is no vmbr0 and vmbr1 on your node. Use advanced settings in this case.",
|
|
||||||
"type": "warning"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Upgopher",
|
|
||||||
"slug": "upgopher",
|
|
||||||
"categories": [
|
|
||||||
11
|
|
||||||
],
|
|
||||||
"date_created": "2025-11-22",
|
|
||||||
"type": "ct",
|
|
||||||
"updateable": true,
|
|
||||||
"privileged": false,
|
|
||||||
"interface_port": 9090,
|
|
||||||
"documentation": "https://github.com/wanetty/upgopher#readme",
|
|
||||||
"config_path": "",
|
|
||||||
"website": "https://github.com/wanetty/upgopher",
|
|
||||||
"logo": "https://raw.githubusercontent.com/wanetty/upgopher/main/static/logopher.webp",
|
|
||||||
"description": "A simple Go web server for file upload, download, and browsing. Cross-platform alternative to Python-based file servers with no library dependencies. Features file upload via web interface, directory navigation, URL copying to clipboard, optional basic authentication, HTTPS support, and hidden files toggle.",
|
|
||||||
"install_methods": [
|
|
||||||
{
|
|
||||||
"type": "default",
|
|
||||||
"script": "ct/upgopher.sh",
|
|
||||||
"resources": {
|
|
||||||
"cpu": 1,
|
|
||||||
"ram": 512,
|
|
||||||
"hdd": 4,
|
|
||||||
"os": "Debian",
|
|
||||||
"version": "13"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"default_credentials": {
|
|
||||||
"username": null,
|
|
||||||
"password": null
|
|
||||||
},
|
|
||||||
"notes": [
|
|
||||||
{
|
|
||||||
"text": "Default uploads directory: `/opt/upgopher/uploads`",
|
|
||||||
"type": "info"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"text": "Set application startup options by editing `/etc/systemd/system/upgopher.service`. Read documentation for available options.",
|
|
||||||
"type": "info"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,99 +1,4 @@
|
|||||||
[
|
[
|
||||||
{
|
|
||||||
"name": "rcourtman/Pulse",
|
|
||||||
"version": "v4.32.4",
|
|
||||||
"date": "2025-11-23T11:05:14Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "readeck/readeck",
|
|
||||||
"version": "0.21.2",
|
|
||||||
"date": "2025-11-23T10:56:43Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "verdaccio/verdaccio",
|
|
||||||
"version": "generator-verdaccio-plugin@6.0.0-next-8.26",
|
|
||||||
"date": "2025-11-23T07:46:06Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "morpheus65535/bazarr",
|
|
||||||
"version": "v1.5.3",
|
|
||||||
"date": "2025-09-20T12:12:33Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Jackett/Jackett",
|
|
||||||
"version": "v0.24.340",
|
|
||||||
"date": "2025-11-23T06:00:18Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "tobychui/zoraxy",
|
|
||||||
"version": "v3.3.0-rc1",
|
|
||||||
"date": "2025-11-23T05:42:35Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "hyperion-project/hyperion.ng",
|
|
||||||
"version": "2.1.1",
|
|
||||||
"date": "2025-06-14T17:45:06Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "BerriAI/litellm",
|
|
||||||
"version": "v1.80.5.rc.2",
|
|
||||||
"date": "2025-11-23T00:31:24Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "steveiliop56/tinyauth",
|
|
||||||
"version": "v4.0.1",
|
|
||||||
"date": "2025-10-15T16:53:55Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "jeedom/core",
|
|
||||||
"version": "4.4.20",
|
|
||||||
"date": "2025-11-23T00:27:04Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "paperless-ngx/paperless-ngx",
|
|
||||||
"version": "v2.20.0",
|
|
||||||
"date": "2025-11-22T21:56:00Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "OliveTin/OliveTin",
|
|
||||||
"version": "2025.11.25",
|
|
||||||
"date": "2025-11-22T21:00:52Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Cleanuparr/Cleanuparr",
|
|
||||||
"version": "v2.4.6",
|
|
||||||
"date": "2025-11-22T20:32:09Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "go-gitea/gitea",
|
|
||||||
"version": "v1.25.2",
|
|
||||||
"date": "2025-11-22T19:37:02Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "msgbyte/tianji",
|
|
||||||
"version": "v1.30.13",
|
|
||||||
"date": "2025-11-22T18:22:32Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "nzbgetcom/nzbget",
|
|
||||||
"version": "v25.4",
|
|
||||||
"date": "2025-10-09T10:27:01Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "bunkerity/bunkerweb",
|
|
||||||
"version": "v1.6.6",
|
|
||||||
"date": "2025-11-22T16:10:29Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "TechnitiumSoftware/DnsServer",
|
|
||||||
"version": "v14.2.0",
|
|
||||||
"date": "2025-11-22T12:54:08Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "keycloak/keycloak",
|
|
||||||
"version": "26.4.5",
|
|
||||||
"date": "2025-11-12T15:24:23Z"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "pocketbase/pocketbase",
|
"name": "pocketbase/pocketbase",
|
||||||
"version": "v0.34.0",
|
"version": "v0.34.0",
|
||||||
@@ -114,16 +19,36 @@
|
|||||||
"version": "1.1.5",
|
"version": "1.1.5",
|
||||||
"date": "2025-11-22T07:02:52Z"
|
"date": "2025-11-22T07:02:52Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Jackett/Jackett",
|
||||||
|
"version": "v0.24.339",
|
||||||
|
"date": "2025-11-22T06:05:53Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "theonedev/onedev",
|
"name": "theonedev/onedev",
|
||||||
"version": "v13.1.0",
|
"version": "v13.1.0",
|
||||||
"date": "2025-11-22T04:29:25Z"
|
"date": "2025-11-22T04:29:25Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "jeedom/core",
|
||||||
|
"version": "4.4.20",
|
||||||
|
"date": "2025-11-22T00:27:05Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "steveiliop56/tinyauth",
|
||||||
|
"version": "v4.0.1",
|
||||||
|
"date": "2025-10-15T16:53:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "TwiN/gatus",
|
"name": "TwiN/gatus",
|
||||||
"version": "v5.33.0",
|
"version": "v5.33.0",
|
||||||
"date": "2025-11-21T22:54:49Z"
|
"date": "2025-11-21T22:54:49Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "BerriAI/litellm",
|
||||||
|
"version": "v1.78.5-stable-patch-1",
|
||||||
|
"date": "2025-11-21T19:57:45Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "homarr-labs/homarr",
|
"name": "homarr-labs/homarr",
|
||||||
"version": "v1.44.0",
|
"version": "v1.44.0",
|
||||||
@@ -139,6 +64,16 @@
|
|||||||
"version": "v1.72.0",
|
"version": "v1.72.0",
|
||||||
"date": "2025-11-21T18:20:58Z"
|
"date": "2025-11-21T18:20:58Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "keycloak/keycloak",
|
||||||
|
"version": "26.4.5",
|
||||||
|
"date": "2025-11-12T15:24:23Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "readeck/readeck",
|
||||||
|
"version": "0.21.1",
|
||||||
|
"date": "2025-11-21T17:17:52Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "mattermost/mattermost",
|
"name": "mattermost/mattermost",
|
||||||
"version": "v10.11.8",
|
"version": "v10.11.8",
|
||||||
@@ -174,11 +109,21 @@
|
|||||||
"version": "v13.0.3",
|
"version": "v13.0.3",
|
||||||
"date": "2025-11-21T12:43:04Z"
|
"date": "2025-11-21T12:43:04Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "bunkerity/bunkerweb",
|
||||||
|
"version": "v1.6.5",
|
||||||
|
"date": "2025-10-06T15:25:17Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "chrisbenincasa/tunarr",
|
"name": "chrisbenincasa/tunarr",
|
||||||
"version": "v0.23.0-alpha.24",
|
"version": "v0.23.0-alpha.24",
|
||||||
"date": "2025-11-21T12:16:39Z"
|
"date": "2025-11-21T12:16:39Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "rcourtman/Pulse",
|
||||||
|
"version": "v4.32.3",
|
||||||
|
"date": "2025-11-21T11:16:25Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "seriousm4x/UpSnap",
|
"name": "seriousm4x/UpSnap",
|
||||||
"version": "5.2.4",
|
"version": "5.2.4",
|
||||||
@@ -209,6 +154,11 @@
|
|||||||
"version": "mariadb-12.1.2",
|
"version": "mariadb-12.1.2",
|
||||||
"date": "2025-11-18T15:16:21Z"
|
"date": "2025-11-18T15:16:21Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "morpheus65535/bazarr",
|
||||||
|
"version": "v1.5.3",
|
||||||
|
"date": "2025-09-20T12:12:33Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "bluenviron/mediamtx",
|
"name": "bluenviron/mediamtx",
|
||||||
"version": "v1.15.4",
|
"version": "v1.15.4",
|
||||||
@@ -234,6 +184,11 @@
|
|||||||
"version": "v3007.9",
|
"version": "v3007.9",
|
||||||
"date": "2025-11-20T17:58:32Z"
|
"date": "2025-11-20T17:58:32Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "msgbyte/tianji",
|
||||||
|
"version": "v1.30.12",
|
||||||
|
"date": "2025-11-20T16:13:19Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "neo4j/neo4j",
|
"name": "neo4j/neo4j",
|
||||||
"version": "5.26.17",
|
"version": "5.26.17",
|
||||||
@@ -374,6 +329,11 @@
|
|||||||
"version": "v1.143.0rc1",
|
"version": "v1.143.0rc1",
|
||||||
"date": "2025-11-19T00:09:31Z"
|
"date": "2025-11-19T00:09:31Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "hyperion-project/hyperion.ng",
|
||||||
|
"version": "2.1.1",
|
||||||
|
"date": "2025-06-14T17:45:06Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "gtsteffaniak/filebrowser",
|
"name": "gtsteffaniak/filebrowser",
|
||||||
"version": "v1.0.1-stable",
|
"version": "v1.0.1-stable",
|
||||||
@@ -504,11 +464,26 @@
|
|||||||
"version": "v25.11.1",
|
"version": "v25.11.1",
|
||||||
"date": "2025-11-16T13:04:21Z"
|
"date": "2025-11-16T13:04:21Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "TechnitiumSoftware/DnsServer",
|
||||||
|
"version": "v14.1.0",
|
||||||
|
"date": "2025-11-16T11:32:10Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "FlowiseAI/Flowise",
|
"name": "FlowiseAI/Flowise",
|
||||||
"version": "flowise@3.0.11",
|
"version": "flowise@3.0.11",
|
||||||
"date": "2025-11-16T01:29:06Z"
|
"date": "2025-11-16T01:29:06Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "OliveTin/OliveTin",
|
||||||
|
"version": "3000.4.0",
|
||||||
|
"date": "2025-11-16T01:02:49Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "paperless-ngx/paperless-ngx",
|
||||||
|
"version": "v2.19.6",
|
||||||
|
"date": "2025-11-15T22:56:45Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "karakeep-app/karakeep",
|
"name": "karakeep-app/karakeep",
|
||||||
"version": "android/v1.8.2-2",
|
"version": "android/v1.8.2-2",
|
||||||
@@ -539,6 +514,16 @@
|
|||||||
"version": "v4.7.0",
|
"version": "v4.7.0",
|
||||||
"date": "2025-11-14T09:45:13Z"
|
"date": "2025-11-14T09:45:13Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "nzbgetcom/nzbget",
|
||||||
|
"version": "v25.4",
|
||||||
|
"date": "2025-10-09T10:27:01Z"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "verdaccio/verdaccio",
|
||||||
|
"version": "generator-verdaccio-plugin@6.0.0-next-8.25",
|
||||||
|
"date": "2025-11-14T08:14:55Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "runtipi/runtipi",
|
"name": "runtipi/runtipi",
|
||||||
"version": "v4.6.5",
|
"version": "v4.6.5",
|
||||||
@@ -659,6 +644,11 @@
|
|||||||
"version": "v1.0.0-beta19",
|
"version": "v1.0.0-beta19",
|
||||||
"date": "2025-11-09T17:26:30Z"
|
"date": "2025-11-09T17:26:30Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "Cleanuparr/Cleanuparr",
|
||||||
|
"version": "v2.4.5",
|
||||||
|
"date": "2025-11-09T17:14:01Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "authelia/authelia",
|
"name": "authelia/authelia",
|
||||||
"version": "v4.39.14",
|
"version": "v4.39.14",
|
||||||
@@ -789,6 +779,11 @@
|
|||||||
"version": "v4.0.16.2944",
|
"version": "v4.0.16.2944",
|
||||||
"date": "2025-11-05T01:56:48Z"
|
"date": "2025-11-05T01:56:48Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "go-gitea/gitea",
|
||||||
|
"version": "v1.25.1",
|
||||||
|
"date": "2025-11-04T20:01:09Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "jhuckaby/Cronicle",
|
"name": "jhuckaby/Cronicle",
|
||||||
"version": "v0.9.100",
|
"version": "v0.9.100",
|
||||||
@@ -839,6 +834,11 @@
|
|||||||
"version": "v1.9.1",
|
"version": "v1.9.1",
|
||||||
"date": "2025-11-02T21:14:50Z"
|
"date": "2025-11-02T21:14:50Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "tobychui/zoraxy",
|
||||||
|
"version": "v3.2.9",
|
||||||
|
"date": "2025-11-02T05:48:39Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "9001/copyparty",
|
"name": "9001/copyparty",
|
||||||
"version": "v1.19.20",
|
"version": "v1.19.20",
|
||||||
|
|||||||
@@ -35,22 +35,12 @@ export const ScriptSchema = z.object({
|
|||||||
logo: z.string().url().nullable(),
|
logo: z.string().url().nullable(),
|
||||||
config_path: z.string(),
|
config_path: z.string(),
|
||||||
description: z.string().min(1, "Description is required"),
|
description: z.string().min(1, "Description is required"),
|
||||||
disable: z.boolean().optional(),
|
|
||||||
disable_description: z.string().optional(),
|
|
||||||
install_methods: z.array(InstallMethodSchema).min(1, "At least one install method is required"),
|
install_methods: z.array(InstallMethodSchema).min(1, "At least one install method is required"),
|
||||||
default_credentials: z.object({
|
default_credentials: z.object({
|
||||||
username: z.string().nullable(),
|
username: z.string().nullable(),
|
||||||
password: z.string().nullable(),
|
password: z.string().nullable(),
|
||||||
}),
|
}),
|
||||||
notes: z.array(NoteSchema),
|
notes: z.array(NoteSchema),
|
||||||
}).refine((data) => {
|
|
||||||
if (data.disable === true && !data.disable_description) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}, {
|
|
||||||
message: "disable_description is required when disable is true",
|
|
||||||
path: ["disable_description"],
|
|
||||||
});
|
});
|
||||||
|
|
||||||
export type Script = z.infer<typeof ScriptSchema>;
|
export type Script = z.infer<typeof ScriptSchema>;
|
||||||
|
|||||||
@@ -42,8 +42,6 @@ const initialScript: Script = {
|
|||||||
website: null,
|
website: null,
|
||||||
logo: null,
|
logo: null,
|
||||||
description: "",
|
description: "",
|
||||||
disable: undefined,
|
|
||||||
disable_description: undefined,
|
|
||||||
install_methods: [],
|
install_methods: [],
|
||||||
default_credentials: {
|
default_credentials: {
|
||||||
username: null,
|
username: null,
|
||||||
@@ -263,25 +261,7 @@ export default function JSONGenerator() {
|
|||||||
<Switch checked={script.privileged} onCheckedChange={checked => updateScript("privileged", checked)} />
|
<Switch checked={script.privileged} onCheckedChange={checked => updateScript("privileged", checked)} />
|
||||||
<label>Privileged</label>
|
<label>Privileged</label>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex items-center space-x-2">
|
|
||||||
<Switch checked={script.disable || false} onCheckedChange={checked => updateScript("disable", checked)} />
|
|
||||||
<label>Disabled</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
{script.disable && (
|
|
||||||
<div>
|
|
||||||
<Label>
|
|
||||||
Disable Description
|
|
||||||
{" "}
|
|
||||||
<span className="text-red-500">*</span>
|
|
||||||
</Label>
|
|
||||||
<Textarea
|
|
||||||
placeholder="Explain why this script is disabled..."
|
|
||||||
value={script.disable_description || ""}
|
|
||||||
onChange={e => updateScript("disable_description", e.target.value)}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
)}
|
|
||||||
<Input
|
<Input
|
||||||
placeholder="Interface Port"
|
placeholder="Interface Port"
|
||||||
type="number"
|
type="number"
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
"use client";
|
"use client";
|
||||||
import { Button } from "@/components/ui/button";
|
import { Button } from "@/components/ui/button";
|
||||||
import { basePath } from "@/config/site-config";
|
|
||||||
|
|
||||||
export default function NotFoundPage() {
|
export default function NotFoundPage() {
|
||||||
return (
|
return (
|
||||||
@@ -13,17 +12,7 @@ export default function NotFoundPage() {
|
|||||||
Oops, the page you are looking for could not be found.
|
Oops, the page you are looking for could not be found.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<Button
|
<Button onClick={() => window.history.back()} variant="secondary">
|
||||||
onClick={() => {
|
|
||||||
if (window.history.length > 1) {
|
|
||||||
window.history.back();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
window.location.href = `/${basePath}`;
|
|
||||||
}
|
|
||||||
}}
|
|
||||||
variant="secondary"
|
|
||||||
>
|
|
||||||
Go Back
|
Go Back
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -123,7 +123,7 @@ export default function ScriptAccordion({
|
|||||||
className={`flex cursor-pointer items-center justify-between gap-1 px-1 py-1 text-muted-foreground hover:rounded-lg hover:bg-accent/60 hover:dark:bg-accent/20 ${selectedScript === script.slug
|
className={`flex cursor-pointer items-center justify-between gap-1 px-1 py-1 text-muted-foreground hover:rounded-lg hover:bg-accent/60 hover:dark:bg-accent/20 ${selectedScript === script.slug
|
||||||
? "rounded-lg bg-accent font-semibold dark:bg-accent/30 dark:text-white"
|
? "rounded-lg bg-accent font-semibold dark:bg-accent/30 dark:text-white"
|
||||||
: ""
|
: ""
|
||||||
} ${script.disable ? "opacity-60" : ""}`}
|
}`}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
handleSelected(script.slug);
|
handleSelected(script.slug);
|
||||||
setSelectedCategory(category.name);
|
setSelectedCategory(category.name);
|
||||||
@@ -143,9 +143,7 @@ export default function ScriptAccordion({
|
|||||||
alt={script.name}
|
alt={script.name}
|
||||||
className="mr-1 w-4 h-4 rounded-full"
|
className="mr-1 w-4 h-4 rounded-full"
|
||||||
/>
|
/>
|
||||||
<span className="flex items-center gap-2">
|
<span className="flex items-center gap-2">{script.name}</span>
|
||||||
{script.name}
|
|
||||||
</span>
|
|
||||||
</div>
|
</div>
|
||||||
{formattedBadge(script.type)}
|
{formattedBadge(script.type)}
|
||||||
</Link>
|
</Link>
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import { useVersions } from "@/hooks/use-versions";
|
|||||||
import { basePath } from "@/config/site-config";
|
import { basePath } from "@/config/site-config";
|
||||||
import { extractDate } from "@/lib/time";
|
import { extractDate } from "@/lib/time";
|
||||||
|
|
||||||
import DisableDescription from "./script-items/disable-description";
|
|
||||||
import { getDisplayValueFromType } from "./script-info-blocks";
|
import { getDisplayValueFromType } from "./script-info-blocks";
|
||||||
import DefaultPassword from "./script-items/default-password";
|
import DefaultPassword from "./script-items/default-password";
|
||||||
import InstallCommand from "./script-items/install-command";
|
import InstallCommand from "./script-items/install-command";
|
||||||
@@ -147,15 +146,9 @@ export function ScriptItem({ item, setSelectedScript }: ScriptItemProps) {
|
|||||||
<ScriptHeader item={item} />
|
<ScriptHeader item={item} />
|
||||||
</Suspense>
|
</Suspense>
|
||||||
|
|
||||||
{item.disable && item.disable_description && (
|
|
||||||
<DisableDescription item={item} />
|
|
||||||
) }
|
|
||||||
|
|
||||||
{!item.disable && (
|
|
||||||
<>
|
|
||||||
<Description item={item} />
|
<Description item={item} />
|
||||||
|
|
||||||
<Alerts item={item} />
|
<Alerts item={item} />
|
||||||
|
|
||||||
<div className="mt-4 rounded-lg border shadow-sm">
|
<div className="mt-4 rounded-lg border shadow-sm">
|
||||||
<div className="flex gap-3 px-4 py-2 bg-accent/25">
|
<div className="flex gap-3 px-4 py-2 bg-accent/25">
|
||||||
<h2 className="text-lg font-semibold">
|
<h2 className="text-lg font-semibold">
|
||||||
@@ -184,8 +177,6 @@ export function ScriptItem({ item, setSelectedScript }: ScriptItemProps) {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<DefaultPassword item={item} />
|
<DefaultPassword item={item} />
|
||||||
</>
|
|
||||||
)}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
import { AlertCircle } from "lucide-react";
|
|
||||||
|
|
||||||
import type { Script } from "@/lib/types";
|
|
||||||
|
|
||||||
import TextParseLinks from "@/components/text-parse-links";
|
|
||||||
import { AlertColors } from "@/config/site-config";
|
|
||||||
import { cn } from "@/lib/utils";
|
|
||||||
|
|
||||||
export default function DisableDescription({ item }: { item: Script }) {
|
|
||||||
return (
|
|
||||||
<div className="mt-4 flex flex-col shadow-sm gap-2">
|
|
||||||
<div
|
|
||||||
className={cn(
|
|
||||||
"flex items-start gap-3 rounded-lg border p-4 text-sm",
|
|
||||||
AlertColors.warning,
|
|
||||||
)}
|
|
||||||
>
|
|
||||||
<AlertCircle className="h-5 min-h-5 w-5 min-w-5 mt-0.5" />
|
|
||||||
<div className="flex flex-col gap-2">
|
|
||||||
<h3 className="font-semibold text-base">Script Disabled</h3>
|
|
||||||
<p>{TextParseLinks(item.disable_description!)}</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@@ -1,52 +0,0 @@
|
|||||||
import { ClipboardIcon, ExternalLink } from "lucide-react";
|
|
||||||
import { Fragment } from "react";
|
|
||||||
|
|
||||||
import handleCopy from "./handle-copy";
|
|
||||||
|
|
||||||
const URL_PATTERN = /(https?:\/\/[^\s,]+)/;
|
|
||||||
const CODE_PATTERN = /`([^`]*)`/;
|
|
||||||
|
|
||||||
export default function TextParseLinks(text: string) {
|
|
||||||
const codeParts = text.split(CODE_PATTERN);
|
|
||||||
|
|
||||||
return codeParts.map((part: string, codeIndex: number) => {
|
|
||||||
if (codeIndex % 2 === 1) {
|
|
||||||
return (
|
|
||||||
<span
|
|
||||||
key={`code-${codeIndex}`}
|
|
||||||
className="bg-secondary py-1 px-2 rounded-lg inline-flex items-center gap-2"
|
|
||||||
>
|
|
||||||
{part}
|
|
||||||
<ClipboardIcon
|
|
||||||
className="size-3 cursor-pointer"
|
|
||||||
onClick={() => handleCopy("command", part)}
|
|
||||||
/>
|
|
||||||
</span>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
const urlParts = part.split(URL_PATTERN);
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Fragment key={`text-${codeIndex}`}>
|
|
||||||
{urlParts.map((urlPart: string, urlIndex: number) => {
|
|
||||||
if (urlIndex % 2 === 1) {
|
|
||||||
return (
|
|
||||||
<a
|
|
||||||
key={`url-${codeIndex}-${urlIndex}`}
|
|
||||||
href={urlPart}
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
|
||||||
className="inline-flex items-center gap-1 text-blue-600 dark:text-blue-400 hover:underline font-medium transition-colors"
|
|
||||||
>
|
|
||||||
{urlPart}
|
|
||||||
<ExternalLink className="size-3" />
|
|
||||||
</a>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
return <Fragment key={`plain-${codeIndex}-${urlIndex}`}>{urlPart}</Fragment>;
|
|
||||||
})}
|
|
||||||
</Fragment>
|
|
||||||
);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { useInView, useMotionValue, useSpring } from "motion/react";
|
import { useInView, useMotionValue, useSpring } from "framer-motion";
|
||||||
import { useEffect, useRef } from "react";
|
import { useEffect, useRef } from "react";
|
||||||
|
|
||||||
import { cn } from "@/lib/utils";
|
import { cn } from "@/lib/utils";
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import React from "react";
|
|||||||
import type { OperatingSystem } from "@/lib/types";
|
import type { OperatingSystem } from "@/lib/types";
|
||||||
|
|
||||||
// eslint-disable-next-line node/no-process-env
|
// eslint-disable-next-line node/no-process-env
|
||||||
export const basePath = process.env.BASE_PATH || "ProxmoxVE";
|
export const basePath = process.env.BASE_PATH || "";
|
||||||
|
|
||||||
export const navbarLinks = [
|
export const navbarLinks = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ export type Script = {
|
|||||||
logo: string | null;
|
logo: string | null;
|
||||||
config_path: string;
|
config_path: string;
|
||||||
description: string;
|
description: string;
|
||||||
disable?: boolean;
|
|
||||||
disable_description?: string;
|
|
||||||
install_methods: {
|
install_methods: {
|
||||||
type: "default" | "alpine";
|
type: "default" | "alpine";
|
||||||
script: string;
|
script: string;
|
||||||
|
|||||||
@@ -97,4 +97,9 @@ msg_ok "Configured 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"
|
||||||
|
|||||||
@@ -89,4 +89,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -41,4 +41,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -146,4 +146,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -30,7 +30,6 @@ curl -fsSL "$RELEASE" -o $(basename "$RELEASE")
|
|||||||
$STD unzip Agent_Linux64*.zip
|
$STD unzip Agent_Linux64*.zip
|
||||||
chmod +x ./Agent
|
chmod +x ./Agent
|
||||||
echo $RELEASE >~/.agentdvr
|
echo $RELEASE >~/.agentdvr
|
||||||
rm -rf Agent_Linux64*.zip
|
|
||||||
msg_ok "Installed AgentDVR"
|
msg_ok "Installed AgentDVR"
|
||||||
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
@@ -54,4 +53,10 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf Agent_Linux64*.zip
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -34,4 +34,8 @@ msg_ok "Installed Apache Cassandra"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -36,4 +36,8 @@ msg_ok "Installed Apache CouchDB."
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -71,8 +71,6 @@ mv ~/mysql-connector-j-9.3.0/mysql-connector-j-9.3.0.jar /etc/guacamole/lib/
|
|||||||
curl -fsSL "https://downloads.apache.org/guacamole/${RELEASE_SERVER}/binary/guacamole-auth-jdbc-${RELEASE_SERVER}.tar.gz" -o "/root/guacamole-auth-jdbc-${RELEASE_SERVER}.tar.gz"
|
curl -fsSL "https://downloads.apache.org/guacamole/${RELEASE_SERVER}/binary/guacamole-auth-jdbc-${RELEASE_SERVER}.tar.gz" -o "/root/guacamole-auth-jdbc-${RELEASE_SERVER}.tar.gz"
|
||||||
$STD tar -xf ~/guacamole-auth-jdbc-$RELEASE_SERVER.tar.gz
|
$STD tar -xf ~/guacamole-auth-jdbc-$RELEASE_SERVER.tar.gz
|
||||||
mv ~/guacamole-auth-jdbc-$RELEASE_SERVER/mysql/guacamole-auth-jdbc-mysql-$RELEASE_SERVER.jar /etc/guacamole/extensions/
|
mv ~/guacamole-auth-jdbc-$RELEASE_SERVER/mysql/guacamole-auth-jdbc-mysql-$RELEASE_SERVER.jar /etc/guacamole/extensions/
|
||||||
rm -rf ~/mysql-connector-j-9.3.0{,.tar.gz}
|
|
||||||
rm -rf ~/guacamole-auth-jdbc-$RELEASE_SERVER{,.tar.gz}
|
|
||||||
msg_ok "Setup Apache Guacamole"
|
msg_ok "Setup Apache Guacamole"
|
||||||
|
|
||||||
msg_info "Setup Database"
|
msg_info "Setup Database"
|
||||||
@@ -148,4 +146,10 @@ msg_ok "Setup Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf ~/mysql-connector-j-9.3.0{,.tar.gz}
|
||||||
|
rm -rf ~/guacamole-auth-jdbc-$RELEASE_SERVER{,.tar.gz}
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -69,4 +69,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ curl -fsSL "$TOMCAT_URL" -o "/tmp/tomcat.tar.gz"
|
|||||||
mkdir -p /opt/tomcat-$TOMCAT_VERSION
|
mkdir -p /opt/tomcat-$TOMCAT_VERSION
|
||||||
tar --strip-components=1 -xzf /tmp/tomcat.tar.gz -C /opt/tomcat-$TOMCAT_VERSION
|
tar --strip-components=1 -xzf /tmp/tomcat.tar.gz -C /opt/tomcat-$TOMCAT_VERSION
|
||||||
chown -R root:root /opt/tomcat-$TOMCAT_VERSION
|
chown -R root:root /opt/tomcat-$TOMCAT_VERSION
|
||||||
rm -f /tmp/tomcat.tar.gz
|
|
||||||
cat <<EOF >/etc/systemd/system/tomcat.service
|
cat <<EOF >/etc/systemd/system/tomcat.service
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Apache Tomcat Web Application Container
|
Description=Apache Tomcat Web Application Container
|
||||||
@@ -147,4 +147,9 @@ msg_ok "Tomcat $LATEST_VERSION installed and started"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f /tmp/tomcat.tar.gz
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ update_os
|
|||||||
msg_info "Installing Apt-Cacher NG"
|
msg_info "Installing Apt-Cacher NG"
|
||||||
DEBIAN_FRONTEND=noninteractive $STD apt-get -o Dpkg::Options::="--force-confold" install -y apt-cacher-ng
|
DEBIAN_FRONTEND=noninteractive $STD apt-get -o Dpkg::Options::="--force-confold" install -y apt-cacher-ng
|
||||||
sed -i 's/# PassThroughPattern: .* # this would allow CONNECT to everything/PassThroughPattern: .*/' /etc/apt-cacher-ng/acng.conf
|
sed -i 's/# PassThroughPattern: .* # this would allow CONNECT to everything/PassThroughPattern: .*/' /etc/apt-cacher-ng/acng.conf
|
||||||
cat <<EOF >/etc/apt/apt.conf.d/00aptproxy.conf
|
cat << EOF >/etc/apt/apt.conf.d/00aptproxy.conf
|
||||||
Acquire::http::Proxy "http://localhost:3142";
|
Acquire::http::Proxy "http://localhost:3142";
|
||||||
EOF
|
EOF
|
||||||
systemctl enable -q --now apt-cacher-ng
|
systemctl enable -q --now apt-cacher-ng
|
||||||
@@ -24,4 +24,8 @@ msg_ok "Installed Apt-Cacher NG"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -91,4 +91,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -82,4 +82,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -24,7 +24,6 @@ if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
|
|||||||
systemctl disable -q --now nginx
|
systemctl disable -q --now nginx
|
||||||
curl -fsSL "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)" -o $(basename "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)")
|
curl -fsSL "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)" -o $(basename "$(curl -fsSL https://api.github.com/repos/mayswind/ariang/releases/latest | grep download | grep AllInOne.zip | cut -d\" -f4)")
|
||||||
$STD unzip AriaNg-*-AllInOne.zip -d /var/www
|
$STD unzip AriaNg-*-AllInOne.zip -d /var/www
|
||||||
rm AriaNg-*-AllInOne.zip
|
|
||||||
rm /etc/nginx/sites-enabled/*
|
rm /etc/nginx/sites-enabled/*
|
||||||
cat <<EOF >/etc/nginx/conf.d/ariang.conf
|
cat <<EOF >/etc/nginx/conf.d/ariang.conf
|
||||||
server {
|
server {
|
||||||
@@ -85,4 +84,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm AriaNg-*-AllInOne.zip
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -88,7 +88,6 @@ curl -fsSL "$DOWNLOAD_URL" -o "$temp_file"
|
|||||||
mkdir -p /opt/asterisk
|
mkdir -p /opt/asterisk
|
||||||
tar zxf "$temp_file" --strip-components=1 -C /opt/asterisk
|
tar zxf "$temp_file" --strip-components=1 -C /opt/asterisk
|
||||||
cd /opt/asterisk
|
cd /opt/asterisk
|
||||||
rm -f "$temp_file"
|
|
||||||
msg_ok "Downloaded Asterisk ($RELEASE)"
|
msg_ok "Downloaded Asterisk ($RELEASE)"
|
||||||
|
|
||||||
msg_info "Installing Asterisk"
|
msg_info "Installing Asterisk"
|
||||||
@@ -106,5 +105,10 @@ msg_ok "Installed Asterisk"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f "$temp_file"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -28,4 +28,8 @@ msg_ok "Setup audiobookshelf"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -66,4 +66,8 @@ msg_ok "Authelia Setup completed"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -46,4 +46,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -323,4 +323,8 @@ msg_ok "Created scripts and service files"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -97,4 +97,8 @@ msg_ok "Configured NGINX"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ mkdir -p /opt/backrest/{bin,config,data}
|
|||||||
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
|
curl -fsSL "https://github.com/garethgeorge/backrest/releases/download/v${RELEASE}/backrest_Linux_x86_64.tar.gz" -o "$temp_file"
|
||||||
tar xzf $temp_file -C /opt/backrest/bin
|
tar xzf $temp_file -C /opt/backrest/bin
|
||||||
chmod +x /opt/backrest/bin/backrest
|
chmod +x /opt/backrest/bin/backrest
|
||||||
rm -f "$temp_file"
|
|
||||||
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
echo "${RELEASE}" >/opt/${APPLICATION}_version.txt
|
||||||
msg_ok "Installed Backrest"
|
msg_ok "Installed Backrest"
|
||||||
|
|
||||||
@@ -47,5 +46,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -81,4 +81,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -190,4 +190,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -49,4 +49,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -45,4 +45,9 @@ msg_ok "Created & started 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"
|
||||||
|
|||||||
@@ -39,4 +39,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -69,4 +69,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -80,4 +80,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -106,4 +106,8 @@ msg_ok "Created BookLore 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"
|
||||||
|
|||||||
@@ -105,4 +105,8 @@ msg_ok "Created Services"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get autoremove
|
||||||
|
$STD apt-get autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -44,4 +44,8 @@ msg_ok "Installed BunkerWeb v${RELEASE}"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -66,4 +66,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -43,4 +43,8 @@ fi
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -32,4 +32,8 @@ msg_ok "Installed CasaOS"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -141,4 +141,8 @@ msg_ok "Created Services"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -51,4 +51,8 @@ msg_ok "Installed Channels DVR Server"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ msg_info "Install Checkmk"
|
|||||||
RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -Ev 'rc|b' | sort -V | tail -n 1)
|
RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | tr ' ' '\n' | grep -Ev 'rc|b' | sort -V | tail -n 1)
|
||||||
curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb"
|
curl -fsSL "https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb" -o "/opt/checkmk.deb"
|
||||||
$STD apt-get install -y /opt/checkmk.deb
|
$STD apt-get install -y /opt/checkmk.deb
|
||||||
rm -rf /opt/checkmk.deb
|
|
||||||
echo "${RELEASE}" >"/opt/checkmk_version.txt"
|
echo "${RELEASE}" >"/opt/checkmk_version.txt"
|
||||||
msg_ok "Installed Checkmk"
|
msg_ok "Installed Checkmk"
|
||||||
|
|
||||||
@@ -41,4 +40,8 @@ $STD omd start "$SITE_NAME"
|
|||||||
|
|
||||||
msg_ok "Created Service"
|
msg_ok "Created Service"
|
||||||
|
|
||||||
cleanup_lxc
|
msg_info "Cleaning up"
|
||||||
|
rm -rf /opt/checkmk.deb
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -39,4 +39,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -79,4 +79,8 @@ msg_ok "Setup 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"
|
||||||
|
|||||||
@@ -64,4 +64,9 @@ fi
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -36,4 +36,8 @@ msg_ok "Service Setup"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -60,4 +60,8 @@ fi
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -19,14 +19,11 @@ echo "${TAB3}[1]-None [2]-NVIDIA [3]-AMD [4]-Intel"
|
|||||||
read -rp "${TAB3}Enter your choice [1-4] (default: 1): " gpu_choice
|
read -rp "${TAB3}Enter your choice [1-4] (default: 1): " gpu_choice
|
||||||
gpu_choice=${gpu_choice:-1}
|
gpu_choice=${gpu_choice:-1}
|
||||||
case "$gpu_choice" in
|
case "$gpu_choice" in
|
||||||
1) comfyui_gpu_type="none" ;;
|
1) comfyui_gpu_type="none";;
|
||||||
2) comfyui_gpu_type="nvidia" ;;
|
2) comfyui_gpu_type="nvidia";;
|
||||||
3) comfyui_gpu_type="amd" ;;
|
3) comfyui_gpu_type="amd";;
|
||||||
4) comfyui_gpu_type="intel" ;;
|
4) comfyui_gpu_type="intel";;
|
||||||
*)
|
*) comfyui_gpu_type="none"; echo "${TAB3}Invalid choice. Defaulting to ${comfyui_gpu_type}." ;;
|
||||||
comfyui_gpu_type="none"
|
|
||||||
echo "${TAB3}Invalid choice. Defaulting to ${comfyui_gpu_type}."
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
echo
|
echo
|
||||||
|
|
||||||
@@ -82,4 +79,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -39,4 +39,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -61,4 +61,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -75,4 +75,8 @@ msg_ok "Service Created"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -44,7 +44,6 @@ LATEST_RELEASE_NO_V=${LATEST_RELEASE#v}
|
|||||||
mv /opt/cosmos/cosmos-cloud-${LATEST_RELEASE_NO_V}/* /opt/cosmos/
|
mv /opt/cosmos/cosmos-cloud-${LATEST_RELEASE_NO_V}/* /opt/cosmos/
|
||||||
rmdir /opt/cosmos/cosmos-cloud-${LATEST_RELEASE_NO_V}
|
rmdir /opt/cosmos/cosmos-cloud-${LATEST_RELEASE_NO_V}
|
||||||
chmod +x /opt/cosmos/cosmos
|
chmod +x /opt/cosmos/cosmos
|
||||||
rm -f "/opt/cosmos/cosmos-cloud-${LATEST_RELEASE#v}-amd64.zip"
|
|
||||||
msg_ok "Installed Cosmos"
|
msg_ok "Installed Cosmos"
|
||||||
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
@@ -74,4 +73,9 @@ msg_info "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -f "/opt/cosmos/cosmos-cloud-${LATEST_RELEASE#v}-amd64.zip"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -87,4 +87,9 @@ msg_ok "Crafty-Controller service started"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf /opt/crafty-4-v${RELEASE}.zip
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -28,4 +28,8 @@ msg_ok "Configured Cronicle Primary Server"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -39,4 +39,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -61,4 +61,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -20,9 +20,13 @@ msg_ok "Installed Dependencies"
|
|||||||
msg_info "Installing Daemon Sync Server"
|
msg_info "Installing Daemon Sync Server"
|
||||||
curl -fsSL "https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/addon/daemonsync_2.2.0.0059_amd64.deb" -o "daemonsync_2.2.0.0059_amd64.deb"
|
curl -fsSL "https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/tools/addon/daemonsync_2.2.0.0059_amd64.deb" -o "daemonsync_2.2.0.0059_amd64.deb"
|
||||||
$STD dpkg -i daemonsync_2.2.0.0059_amd64.deb
|
$STD dpkg -i daemonsync_2.2.0.0059_amd64.deb
|
||||||
rm -rf daemonsync_2.2.0.0059_amd64.deb
|
|
||||||
msg_ok "Installed Daemon Sync Server"
|
msg_ok "Installed Daemon Sync Server"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf daemonsync_2.2.0.0059_amd64.deb
|
||||||
|
$STD apt-get autoremove >/dev/null
|
||||||
|
$STD apt-get autoclean >/dev/null
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -15,4 +15,10 @@ update_os
|
|||||||
|
|
||||||
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"
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,6 @@ curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl" -o "$
|
|||||||
$STD dpkg -i "$libssl"
|
$STD dpkg -i "$libssl"
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
$STD apt-get install -y deconz
|
$STD apt-get install -y deconz
|
||||||
rm -rf "$libssl"
|
|
||||||
msg_ok "Installed deConz"
|
msg_ok "Installed deConz"
|
||||||
|
|
||||||
msg_info "Creating Service"
|
msg_info "Creating Service"
|
||||||
@@ -50,4 +49,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf "$libssl"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -67,4 +67,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -260,4 +260,9 @@ 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"
|
||||||
|
|||||||
@@ -69,13 +69,13 @@ fi
|
|||||||
|
|
||||||
read -r -p "${TAB3}Expose Docker TCP socket (insecure) ? [n = No, l = Local only (127.0.0.1), a = All interfaces (0.0.0.0)] <n/l/a>: " socket_choice
|
read -r -p "${TAB3}Expose Docker TCP socket (insecure) ? [n = No, l = Local only (127.0.0.1), a = All interfaces (0.0.0.0)] <n/l/a>: " socket_choice
|
||||||
case "${socket_choice,,}" in
|
case "${socket_choice,,}" in
|
||||||
l)
|
l)
|
||||||
socket="tcp://127.0.0.1:2375"
|
socket="tcp://127.0.0.1:2375"
|
||||||
;;
|
;;
|
||||||
a)
|
a)
|
||||||
socket="tcp://0.0.0.0:2375"
|
socket="tcp://0.0.0.0:2375"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
socket=""
|
socket=""
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -85,10 +85,10 @@ if [[ -n "$socket" ]]; then
|
|||||||
$STD apt-get install -y jq
|
$STD apt-get install -y jq
|
||||||
|
|
||||||
tmpfile=$(mktemp)
|
tmpfile=$(mktemp)
|
||||||
jq --arg sock "$socket" '. + { "hosts": ["unix:///var/run/docker.sock", $sock] }' /etc/docker/daemon.json >"$tmpfile" && mv "$tmpfile" /etc/docker/daemon.json
|
jq --arg sock "$socket" '. + { "hosts": ["unix:///var/run/docker.sock", $sock] }' /etc/docker/daemon.json > "$tmpfile" && mv "$tmpfile" /etc/docker/daemon.json
|
||||||
|
|
||||||
mkdir -p /etc/systemd/system/docker.service.d
|
mkdir -p /etc/systemd/system/docker.service.d
|
||||||
cat <<EOF >/etc/systemd/system/docker.service.d/override.conf
|
cat <<EOF > /etc/systemd/system/docker.service.d/override.conf
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=
|
ExecStart=
|
||||||
ExecStart=/usr/bin/dockerd
|
ExecStart=/usr/bin/dockerd
|
||||||
@@ -107,4 +107,8 @@ fi
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -73,4 +73,8 @@ fi
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -78,4 +78,9 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt -y autoremove
|
||||||
|
$STD apt -y autoclean
|
||||||
|
$STD apt -y clean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -103,9 +103,13 @@ EnvironmentFile=/opt/documenso/.env
|
|||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
EOF
|
EOF
|
||||||
systemctl enable -q --now documenso
|
systemctl enable -q --now documenso
|
||||||
$STD turbo daemon stop
|
|
||||||
msg_ok "Created Service"
|
msg_ok "Created Service"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD turbo daemon stop
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -38,10 +38,14 @@ curl -fsSL "https://netcologne.dl.sourceforge.net/project/dolibarr/Dolibarr%20in
|
|||||||
echo "dolibarr dolibarr/reconfigure-webserver multiselect apache2" | debconf-set-selections
|
echo "dolibarr dolibarr/reconfigure-webserver multiselect apache2" | debconf-set-selections
|
||||||
$STD apt-get install ./$FILE -y
|
$STD apt-get install ./$FILE -y
|
||||||
$STD apt install -f
|
$STD apt install -f
|
||||||
rm -rf ~/$FILE
|
|
||||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
||||||
msg_ok "Setup Dolibarr"
|
msg_ok "Setup Dolibarr"
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
rm -rf ~/$FILE
|
||||||
|
$STD apt-get autoremove
|
||||||
|
$STD apt-get autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -45,4 +45,10 @@ 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"
|
||||||
|
|
||||||
|
|||||||
@@ -105,4 +105,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -49,4 +49,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -83,4 +83,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -36,4 +36,8 @@ 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"
|
||||||
|
|||||||
@@ -34,7 +34,6 @@ msg_ok "Downloaded EMQX"
|
|||||||
|
|
||||||
msg_info "Installing EMQX"
|
msg_info "Installing EMQX"
|
||||||
$STD apt-get install -y "$DEB_FILE"
|
$STD apt-get install -y "$DEB_FILE"
|
||||||
rm -f "$DEB_FILE"
|
|
||||||
echo "$LATEST_VERSION" >~/.emqx
|
echo "$LATEST_VERSION" >~/.emqx
|
||||||
msg_ok "Installed EMQX"
|
msg_ok "Installed EMQX"
|
||||||
|
|
||||||
@@ -44,5 +43,9 @@ msg_ok "Enabled EMQX service"
|
|||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -78,4 +78,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -55,4 +55,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -45,4 +45,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -29,4 +29,8 @@ 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"
|
||||||
|
|||||||
@@ -59,9 +59,13 @@ 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
|
||||||
rm -f "$temp_file"
|
|
||||||
msg_ok "Setup ${APPLICATION}"
|
msg_ok "Setup ${APPLICATION}"
|
||||||
|
|
||||||
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"
|
||||||
|
|||||||
@@ -55,7 +55,6 @@ 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"
|
||||||
@@ -96,4 +95,9 @@ 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"
|
||||||
|
|||||||
@@ -57,4 +57,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -44,4 +44,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -82,4 +82,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -59,4 +59,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -16,9 +16,13 @@ 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"
|
||||||
|
|||||||
@@ -72,4 +72,8 @@ msg_ok "Created Service"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
@@ -255,4 +255,8 @@ msg_ok "Configured Services"
|
|||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
cleanup_lxc
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get -y autoremove
|
||||||
|
$STD apt-get -y autoclean
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user