mirror of
				https://github.com/community-scripts/ProxmoxVE.git
				synced 2025-11-04 02:12:49 +00:00 
			
		
		
		
	Compare commits
	
		
			74 Commits
		
	
	
		
			2025-06-05
			...
			2025-06-13
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					84469e2b5b | ||
| 
						 | 
					a164d259e0 | ||
| 
						 | 
					34aa360920 | ||
| 
						 | 
					f0dde5a42d | ||
| 
						 | 
					e0ccc1a0af | ||
| 
						 | 
					4fa7483d8b | ||
| 
						 | 
					cd835c6791 | ||
| 
						 | 
					abf233c94f | ||
| 
						 | 
					edd4fb3cc2 | ||
| 
						 | 
					d97620a390 | ||
| 
						 | 
					c2c5159a2d | ||
| 
						 | 
					46d9f85f5e | ||
| 
						 | 
					ba7ec5aa68 | ||
| 
						 | 
					dd4c556959 | ||
| 
						 | 
					0e63437154 | ||
| 
						 | 
					0769320146 | ||
| 
						 | 
					d6da26c640 | ||
| 
						 | 
					d9facc0e62 | ||
| 
						 | 
					31e0b5fae3 | ||
| 
						 | 
					b0bd2f4804 | ||
| 
						 | 
					3aefe199f7 | ||
| 
						 | 
					677008c779 | ||
| 
						 | 
					b8ba409e5c | ||
| 
						 | 
					7cf8300b47 | ||
| 
						 | 
					77fb5ea516 | ||
| 
						 | 
					e92dfe1b2b | ||
| 
						 | 
					61bfa16645 | ||
| 
						 | 
					84c295a10b | ||
| 
						 | 
					ed834bf424 | ||
| 
						 | 
					b1f8992933 | ||
| 
						 | 
					201f7c4651 | ||
| 
						 | 
					2574e41ee8 | ||
| 
						 | 
					2aeb7cf79a | ||
| 
						 | 
					98c277f471 | ||
| 
						 | 
					78a2201a93 | ||
| 
						 | 
					2de03f5734 | ||
| 
						 | 
					c59f9f421c | ||
| 
						 | 
					598acc2048 | ||
| 
						 | 
					6e6b279b88 | ||
| 
						 | 
					943a5f4d8f | ||
| 
						 | 
					4efa882558 | ||
| 
						 | 
					eff985ca02 | ||
| 
						 | 
					ff239ff3cd | ||
| 
						 | 
					45bb824101 | ||
| 
						 | 
					1956c8740b | ||
| 
						 | 
					f6638b095d | ||
| 
						 | 
					6a1738c52a | ||
| 
						 | 
					a9e3520df1 | ||
| 
						 | 
					08230e9089 | ||
| 
						 | 
					a5c6984087 | ||
| 
						 | 
					99174cb9c2 | ||
| 
						 | 
					336e70f059 | ||
| 
						 | 
					ce8b9aa5b4 | ||
| 
						 | 
					70d6815d91 | ||
| 
						 | 
					75273e86b6 | ||
| 
						 | 
					37a2f6a715 | ||
| 
						 | 
					4b7c734b9a | ||
| 
						 | 
					590db0d148 | ||
| 
						 | 
					50ad6410d5 | ||
| 
						 | 
					85b80bfb22 | ||
| 
						 | 
					33e49b7556 | ||
| 
						 | 
					0a6f7e6426 | ||
| 
						 | 
					5fd5d78a2a | ||
| 
						 | 
					ab32878b63 | ||
| 
						 | 
					ee7090f271 | ||
| 
						 | 
					df6bd2a68a | ||
| 
						 | 
					e46e9a3372 | ||
| 
						 | 
					6c08814cc5 | ||
| 
						 | 
					4cca5062af | ||
| 
						 | 
					dc2b585e6b | ||
| 
						 | 
					cc4f5c4478 | ||
| 
						 | 
					01ced07bff | ||
| 
						 | 
					85e13c9ac5 | ||
| 
						 | 
					1ac4b0c10f | 
							
								
								
									
										102
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										102
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -14,8 +14,110 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
 | 
			
		||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## 2025-06-14
 | 
			
		||||
 | 
			
		||||
## 2025-06-13
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - Zigbee2MQTT: Fix missing directory [@tremor021](https://github.com/tremor021) ([#5120](https://github.com/community-scripts/ProxmoxVE/pull/5120))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
  - #### 📝 Script Information
 | 
			
		||||
 | 
			
		||||
    - Umbrel OS: Fix bad disk size shown on website [@tremor021](https://github.com/tremor021) ([#5125](https://github.com/community-scripts/ProxmoxVE/pull/5125))
 | 
			
		||||
 | 
			
		||||
## 2025-06-12
 | 
			
		||||
 | 
			
		||||
### 🆕 New Scripts
 | 
			
		||||
 | 
			
		||||
  - Manage my Damn Life ([#5100](https://github.com/community-scripts/ProxmoxVE/pull/5100))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - Kasm: Increase Ressources & Hint for Fuse / Swap [@MickLesk](https://github.com/MickLesk) ([#5112](https://github.com/community-scripts/ProxmoxVE/pull/5112))
 | 
			
		||||
 | 
			
		||||
## 2025-06-11
 | 
			
		||||
 | 
			
		||||
## 2025-06-10
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - Element Synapse: switched from development to production mode and fixed update [@Frankmaaan](https://github.com/Frankmaaan) ([#5066](https://github.com/community-scripts/ProxmoxVE/pull/5066))
 | 
			
		||||
    - Tinyauth: Fix creation of service file [@tremor021](https://github.com/tremor021) ([#5090](https://github.com/community-scripts/ProxmoxVE/pull/5090))
 | 
			
		||||
    - Dolibarr: Fix typo in SQL command [@tremor021](https://github.com/tremor021) ([#5091](https://github.com/community-scripts/ProxmoxVE/pull/5091))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
  - #### 📡 API
 | 
			
		||||
 | 
			
		||||
    - [core] Prevent API form sending Data when disabled [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#5080](https://github.com/community-scripts/ProxmoxVE/pull/5080))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
  - #### 📝 Script Information
 | 
			
		||||
 | 
			
		||||
    - Immich: Update JSON [@vhsdream](https://github.com/vhsdream) ([#5085](https://github.com/community-scripts/ProxmoxVE/pull/5085))
 | 
			
		||||
 | 
			
		||||
## 2025-06-09
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - Authelia: Fix the URL of the container [@tremor021](https://github.com/tremor021) ([#5064](https://github.com/community-scripts/ProxmoxVE/pull/5064))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
  - GoMFT: Remove from website temporarily [@tremor021](https://github.com/tremor021) ([#5065](https://github.com/community-scripts/ProxmoxVE/pull/5065))
 | 
			
		||||
 | 
			
		||||
## 2025-06-08
 | 
			
		||||
 | 
			
		||||
### 🆕 New Scripts
 | 
			
		||||
 | 
			
		||||
  - Minarca ([#5058](https://github.com/community-scripts/ProxmoxVE/pull/5058))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - zot: fix missing var (Dev -> Main) [@MickLesk](https://github.com/MickLesk) ([#5056](https://github.com/community-scripts/ProxmoxVE/pull/5056))
 | 
			
		||||
 | 
			
		||||
  - #### ✨ New Features
 | 
			
		||||
 | 
			
		||||
    - karakeep: Add more configuration defaults [@vhsdream](https://github.com/vhsdream) ([#5054](https://github.com/community-scripts/ProxmoxVE/pull/5054))
 | 
			
		||||
 | 
			
		||||
## 2025-06-07
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - alpine-it-tools fix update [@CrazyWolf13](https://github.com/CrazyWolf13) ([#5039](https://github.com/community-scripts/ProxmoxVE/pull/5039))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
  - #### 💾 Core
 | 
			
		||||
 | 
			
		||||
    - Fix typo in build.func [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#5041](https://github.com/community-scripts/ProxmoxVE/pull/5041))
 | 
			
		||||
 | 
			
		||||
## 2025-06-06
 | 
			
		||||
 | 
			
		||||
### 🆕 New Scripts
 | 
			
		||||
 | 
			
		||||
  - Zot-Registry ([#5016](https://github.com/community-scripts/ProxmoxVE/pull/5016))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
  - #### 🐞 Bug Fixes
 | 
			
		||||
 | 
			
		||||
    - zipline: fix old upload copy from v3 to v4 [@MickLesk](https://github.com/MickLesk) ([#5015](https://github.com/community-scripts/ProxmoxVE/pull/5015))
 | 
			
		||||
 | 
			
		||||
## 2025-06-05
 | 
			
		||||
 | 
			
		||||
### 🆕 New Scripts
 | 
			
		||||
 
 | 
			
		||||
@@ -21,8 +21,6 @@ catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [ ! -d /usr/share/nginx/html ]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
 
 | 
			
		||||
@@ -22,9 +22,6 @@ catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [ ! -d /opt/rclone ]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit 1
 | 
			
		||||
 
 | 
			
		||||
@@ -55,4 +55,4 @@ 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}:9091${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}https://YOUR_AUTHELIA_URL${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -47,7 +47,7 @@ function update_script() {
 | 
			
		||||
  $STD apt-get -y upgrade
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
 | 
			
		||||
  if [[ -f /systemd/system/synapse-admin.service ]]; then
 | 
			
		||||
  if [[ -f /etc/systemd/system/synapse-admin.service ]]; then
 | 
			
		||||
    msg_info "Updating Synapse-Admin"
 | 
			
		||||
    RELEASE=$(curl -fsSL https://api.github.com/repos/etkecc/synapse-admin/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
    if [[ "${RELEASE}" != "$(cat /opt/"${APP}"_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
@@ -58,7 +58,16 @@ function update_script() {
 | 
			
		||||
      curl -fsSL "https://github.com/etkecc/synapse-admin/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
 | 
			
		||||
      tar xzf "$temp_file" -C /opt/synapse-admin --strip-components=1
 | 
			
		||||
      cd /opt/synapse-admin
 | 
			
		||||
      $STD yarn global add serve
 | 
			
		||||
      $STD yarn install --ignore-engines
 | 
			
		||||
      $STD yarn build
 | 
			
		||||
      mv ./dist ../ && \
 | 
			
		||||
        rm -rf * && \
 | 
			
		||||
        mv ../dist ./
 | 
			
		||||
      if [[ -z $(grep "ExecStart=/usr/local/bin/serve" /etc/systemd/system/synapse-admin.service) ]]; then
 | 
			
		||||
        sed -i 's|^ExecStart=.*|ExecStart=/usr/local/bin/serve -s dist -l 5173|' /etc/systemd/system/synapse-admin.service
 | 
			
		||||
        systemctl reenable synapse-admin
 | 
			
		||||
      fi
 | 
			
		||||
      systemctl start synapse-admin
 | 
			
		||||
      echo "${RELEASE}" >/opt/"${APP}"_version.txt
 | 
			
		||||
      rm -f "$temp_file"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/managemydamnlife
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/managemydamnlife
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    __  ___                                __  ___         ____                           __    _ ____   
 | 
			
		||||
   /  |/  /___ _____  ____ _____ ____     /  |/  /_  __   / __ \____ _____ ___  ____     / /   (_) __/__ 
 | 
			
		||||
  / /|_/ / __ `/ __ \/ __ `/ __ `/ _ \   / /|_/ / / / /  / / / / __ `/ __ `__ \/ __ \   / /   / / /_/ _ \
 | 
			
		||||
 / /  / / /_/ / / / / /_/ / /_/ /  __/  / /  / / /_/ /  / /_/ / /_/ / / / / / / / / /  / /___/ / __/  __/
 | 
			
		||||
/_/  /_/\__,_/_/ /_/\__,_/\__, /\___/  /_/  /_/\__, /  /_____/\__,_/_/ /_/ /_/_/ /_/  /_____/_/_/  \___/ 
 | 
			
		||||
                         /____/               /____/                                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/minarca
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/minarca
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    __  ____                            
 | 
			
		||||
   /  |/  (_)___  ____ _______________ _
 | 
			
		||||
  / /|_/ / / __ \/ __ `/ ___/ ___/ __ `/
 | 
			
		||||
 / /  / / / / / / /_/ / /  / /__/ /_/ / 
 | 
			
		||||
/_/  /_/_/_/ /_/\__,_/_/   \___/\__,_/  
 | 
			
		||||
                                        
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/zot-registry
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/zot-registry
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
 _____         __        ____             _      __            
 | 
			
		||||
/__  /  ____  / /_      / __ \___  ____ _(_)____/ /________  __
 | 
			
		||||
  / /  / __ \/ __/_____/ /_/ / _ \/ __ `/ / ___/ __/ ___/ / / /
 | 
			
		||||
 / /__/ /_/ / /_/_____/ _, _/  __/ /_/ / (__  ) /_/ /  / /_/ / 
 | 
			
		||||
/____/\____/\__/     /_/ |_|\___/\__, /_/____/\__/_/   \__, /  
 | 
			
		||||
                                /____/                /____/   
 | 
			
		||||
@@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
 | 
			
		||||
APP="Kasm"
 | 
			
		||||
var_tags="${var_tags:-os}"
 | 
			
		||||
var_cpu="${var_cpu:-2}"
 | 
			
		||||
var_ram="${var_ram:-4192}"
 | 
			
		||||
var_ram="${var_ram:-8192}"
 | 
			
		||||
var_disk="${var_disk:-30}"
 | 
			
		||||
var_os="${var_os:-debian}"
 | 
			
		||||
var_version="${var_version:-12}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/managemydamnlife.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								ct/managemydamnlife.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
#!/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: vhsdream
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/intri-in/manage-my-damn-life-nextjs
 | 
			
		||||
 | 
			
		||||
APP="Manage My Damn Life"
 | 
			
		||||
var_tags="${var_tags:-calendar;tasks}"
 | 
			
		||||
var_cpu="${var_cpu:-2}"
 | 
			
		||||
var_ram="${var_ram:-2048}"
 | 
			
		||||
var_disk="${var_disk:-6}"
 | 
			
		||||
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 /opt/mmdl ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  RELEASE=$(curl -fsSL https://api.github.com/repos/intri-in/manage-my-damn-life-nextjs/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/mmdl_version.txt)" ]] || [[ ! -f /opt/mmdl_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping $APP"
 | 
			
		||||
    systemctl stop mmdl
 | 
			
		||||
    msg_ok "Stopped $APP"
 | 
			
		||||
 | 
			
		||||
    msg_info "Creating Backup"
 | 
			
		||||
    cp /opt/mmdl/.env /opt/mmdl.env
 | 
			
		||||
    msg_ok "Backup Created"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating $APP to v${RELEASE}"
 | 
			
		||||
    curl -fsSLO "https://github.com/intri-in/manage-my-damn-life-nextjs/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
    rm -r /opt/mmdl
 | 
			
		||||
    unzip -q v"$RELEASE".zip
 | 
			
		||||
    mv manage-my-damn-life-nextjs-"$RELEASE"/ /opt/mmdl
 | 
			
		||||
    mv /opt/mmdl.env /opt/mmdl/.env
 | 
			
		||||
    cd /opt/mmdl
 | 
			
		||||
    $STD npm install
 | 
			
		||||
    $STD npm run migrate
 | 
			
		||||
    $STD npm run build
 | 
			
		||||
    msg_ok "Updated $APP to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting $APP"
 | 
			
		||||
    systemctl start mmdl
 | 
			
		||||
    msg_ok "Started $APP"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning Up"
 | 
			
		||||
    rm -f ~/v"$RELEASE".zip
 | 
			
		||||
    msg_ok "Cleanup Completed"
 | 
			
		||||
 | 
			
		||||
    # Last Action
 | 
			
		||||
    echo "$RELEASE" >/opt/mmdl_version.txt
 | 
			
		||||
    msg_ok "Update Successful"
 | 
			
		||||
  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}:3000${CL}"
 | 
			
		||||
							
								
								
									
										54
									
								
								ct/minarca.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								ct/minarca.sh
									
									
									
									
									
										Normal 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: Slaviša Arežina (tremor021)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://minarca.org/en_CA
 | 
			
		||||
 | 
			
		||||
APP="Minarca"
 | 
			
		||||
var_tags="${var_tags:-backup}"
 | 
			
		||||
var_cpu="${var_cpu:-2}"
 | 
			
		||||
var_ram="${var_ram:-4096}"
 | 
			
		||||
var_disk="${var_disk:-10}"
 | 
			
		||||
var_os="${var_os:-debian}"
 | 
			
		||||
var_version="${var_version:-12}"
 | 
			
		||||
var_unprivileged="${var_unprivileged:-1}"
 | 
			
		||||
var_fuse="${var_fuse:-yes}"
 | 
			
		||||
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -d /opt/minarca-server ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop minarca-server
 | 
			
		||||
  msg_ok "${APP} Stopped"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} LXC"
 | 
			
		||||
  $STD apt-get update
 | 
			
		||||
  $STD apt-get upgrade -y
 | 
			
		||||
  msg_ok "Updated ${APP} LXC"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start minarca-server
 | 
			
		||||
  msg_ok "Restarted ${APP}"
 | 
			
		||||
  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}"
 | 
			
		||||
@@ -41,7 +41,9 @@ function update_script() {
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cp /opt/zipline/.env /opt/
 | 
			
		||||
    mkdir -p /opt/zipline-upload
 | 
			
		||||
    if [ -d /opt/zipline/upload ] && [ "$(ls -A /opt/zipline/upload)" ]; then
 | 
			
		||||
      cp -R /opt/zipline/upload/* /opt/zipline-upload/
 | 
			
		||||
    fi
 | 
			
		||||
    curl -fsSL "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/diced/zipline/archive/refs/tags/v${RELEASE}.zip")
 | 
			
		||||
    $STD unzip v"${RELEASE}".zip
 | 
			
		||||
    rm -R /opt/zipline
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										59
									
								
								ct/zot-registry.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								ct/zot-registry.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
#!/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: MickLesk (CanbiZ)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://zotregistry.dev/
 | 
			
		||||
 | 
			
		||||
APP="Zot-Registry"
 | 
			
		||||
var_tags="${var_tags:-registry;oci}"
 | 
			
		||||
var_cpu="${var_cpu:-1}"
 | 
			
		||||
var_ram="${var_ram:-2048}"
 | 
			
		||||
var_disk="${var_disk:-5}"
 | 
			
		||||
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 /usr/bin/zot ]]; then
 | 
			
		||||
    msg_error "No ${APP} installation found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  RELEASE=$(curl -fsSL https://api.github.com/repos/project-zot/zot/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3)}')
 | 
			
		||||
  if [[ ! -f ~/.${APP} ]] || [[ "${RELEASE}" != "$(cat ~/.${APP})" ]]; then
 | 
			
		||||
    msg_info "Stopping Zot service"
 | 
			
		||||
    systemctl stop zot
 | 
			
		||||
    msg_ok "Stopped Zot service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating Zot to ${RELEASE}"
 | 
			
		||||
    curl -fsSL "https://github.com/project-zot/zot/releases/download/${RELEASE}/zot-linux-amd64" -o /usr/bin/zot
 | 
			
		||||
    chmod +x /usr/bin/zot
 | 
			
		||||
    chown root:root /usr/bin/zot
 | 
			
		||||
    echo "${RELEASE}" >~/.${APP}
 | 
			
		||||
    systemctl restart zot
 | 
			
		||||
    msg_ok "Updated Zot to ${RELEASE}"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "Zot is already up to date (${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}"
 | 
			
		||||
@@ -8,7 +8,7 @@
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 9091,
 | 
			
		||||
  "interface_port": 443,
 | 
			
		||||
  "documentation": "https://www.authelia.com/integration/deployment/bare-metal/",
 | 
			
		||||
  "website": "https://www.authelia.com/",
 | 
			
		||||
  "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/authelia.webp",
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2024-05-02",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": false,
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 8096,
 | 
			
		||||
  "documentation": "https://emby.media/support/articles/Home.html",
 | 
			
		||||
 
 | 
			
		||||
@@ -33,15 +33,15 @@
 | 
			
		||||
  },
 | 
			
		||||
  "notes": [
 | 
			
		||||
    {
 | 
			
		||||
      "text": "During installation, HW-accelerated machine-learning (with OpenVINO) is an available option. This also allows for HW-accelerated transcoding, but it must be enabled in Video Transcoding Settings",
 | 
			
		||||
      "text": "During installation, you will be prompted with the option to install Intel OpenVINO for hardware-accelerated machine-learning. If you opt in, increase your LXC RAM after installation, as OpenVINO is memory-intensive",
 | 
			
		||||
      "type": "info"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "text": "If using OpenVINO HW machine-learning, increase RAM because OpenVINO is memory-intensive",
 | 
			
		||||
      "text": "HW-accelerated video transcoding is supported, but must be enabled in Immich Settings",
 | 
			
		||||
      "type": "info"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "text": "To change upload location, edit 'IMMICH_MEDIA_LOCATION' in `/opt/immich/.env`",
 | 
			
		||||
      "text": "To change upload location, edit 'IMMICH_MEDIA_LOCATION' in `/opt/immich/.env`, and create the symlink 'upload' in /opt/immich/app & /opt/immich/app/machine-learning to your new upload location",
 | 
			
		||||
      "type": "info"
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@
 | 
			
		||||
      "script": "ct/kasm.sh",
 | 
			
		||||
      "resources": {
 | 
			
		||||
        "cpu": 2,
 | 
			
		||||
        "ram": 4096,
 | 
			
		||||
        "ram": 8192,
 | 
			
		||||
        "hdd": 50,
 | 
			
		||||
        "os": "Debian",
 | 
			
		||||
        "version": "12"
 | 
			
		||||
@@ -36,6 +36,10 @@
 | 
			
		||||
      "text": "WARNING: Installation sources scripts outside of Community Scripts repo. Please check the source before installing.",
 | 
			
		||||
      "type": "warning"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "text": "Kasm needs swap (on Proxmox host) and activated FUSE to be installed successfully!",
 | 
			
		||||
      "type": "warning"
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
      "text": "Show password: `cat ~/kasm.creds`",
 | 
			
		||||
      "type": "info"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@
 | 
			
		||||
  "name": "Lyrion Music Server",
 | 
			
		||||
  "slug": "lyrionmusicserver",
 | 
			
		||||
  "categories": [
 | 
			
		||||
    9
 | 
			
		||||
    13
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2025-06-05",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								frontend/public/json/managemydamnlife.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								frontend/public/json/managemydamnlife.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "Manage My Damn Life",
 | 
			
		||||
  "slug": "managemydamnlife",
 | 
			
		||||
  "categories": [
 | 
			
		||||
    0
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2025-06-12",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 3000,
 | 
			
		||||
  "documentation": "https://manage-my-damn-life-nextjs.readthedocs.io/en/latest/",
 | 
			
		||||
  "config_path": "/opt/mmdl/.env",
 | 
			
		||||
  "website": "https://github.com/intri-in/manage-my-damn-life-nextjs",
 | 
			
		||||
  "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/manage-my-damn-life.webp",
 | 
			
		||||
  "description": "Manage My Damn Life (MMDL) is a self-hosted front end for managing your CalDAV tasks and calendars.",
 | 
			
		||||
  "install_methods": [
 | 
			
		||||
    {
 | 
			
		||||
      "type": "default",
 | 
			
		||||
      "script": "ct/managemydamnlife.sh",
 | 
			
		||||
      "resources": {
 | 
			
		||||
        "cpu": 2,
 | 
			
		||||
        "ram": 2048,
 | 
			
		||||
        "hdd": 6,
 | 
			
		||||
        "os": "Debian",
 | 
			
		||||
        "version": "12"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "default_credentials": {
 | 
			
		||||
    "username": null,
 | 
			
		||||
    "password": null
 | 
			
		||||
  },
 | 
			
		||||
  "notes": []
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										35
									
								
								frontend/public/json/minarca.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								frontend/public/json/minarca.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "Minarca",
 | 
			
		||||
  "slug": "minarca",
 | 
			
		||||
  "categories": [
 | 
			
		||||
    7
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2025-06-08",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 8080,
 | 
			
		||||
  "documentation": "https://nexus.ikus-soft.com/repository/archive/minarca/6.0.3/doc/index.html",
 | 
			
		||||
  "config_path": "/etc/minarca/minarca-server.conf",
 | 
			
		||||
  "website": "https://minarca.org/en_CA",
 | 
			
		||||
  "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/minarca.webp",
 | 
			
		||||
  "description": "Minarca is a self-hosted open source data backup software that allows you to manage your computer and server backups for free from a direct online accessible centralized view of your data with easy retrieval.",
 | 
			
		||||
  "install_methods": [
 | 
			
		||||
    {
 | 
			
		||||
      "type": "default",
 | 
			
		||||
      "script": "ct/minarca.sh",
 | 
			
		||||
      "resources": {
 | 
			
		||||
        "cpu": 2,
 | 
			
		||||
        "ram": 4096,
 | 
			
		||||
        "hdd": 10,
 | 
			
		||||
        "os": "Debian",
 | 
			
		||||
        "version": "12"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "default_credentials": {
 | 
			
		||||
    "username": "admin",
 | 
			
		||||
    "password": "admin123"
 | 
			
		||||
  },
 | 
			
		||||
  "notes": []
 | 
			
		||||
}
 | 
			
		||||
@@ -6,7 +6,7 @@
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2024-05-02",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": false,
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 3000,
 | 
			
		||||
  "documentation": "https://stonith404.github.io/pingvin-share/introduction",
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@
 | 
			
		||||
      "resources": {
 | 
			
		||||
        "cpu": 2,
 | 
			
		||||
        "ram": 4096,
 | 
			
		||||
        "hdd": 20,
 | 
			
		||||
        "hdd": 32,
 | 
			
		||||
        "os": "debian",
 | 
			
		||||
        "version": "12"
 | 
			
		||||
      }
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										35
									
								
								frontend/public/json/zot-registry.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								frontend/public/json/zot-registry.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "Zot Registry",
 | 
			
		||||
  "slug": "zot",
 | 
			
		||||
  "categories": [
 | 
			
		||||
    13
 | 
			
		||||
  ],
 | 
			
		||||
  "date_created": "2025-06-06",
 | 
			
		||||
  "type": "ct",
 | 
			
		||||
  "updateable": true,
 | 
			
		||||
  "privileged": false,
 | 
			
		||||
  "interface_port": 8080,
 | 
			
		||||
  "documentation": "https://zotregistry.dev/docs/intro/",
 | 
			
		||||
  "website": "https://zotregistry.dev/",
 | 
			
		||||
  "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/zot-registry.webp",
 | 
			
		||||
  "config_path": "/etc/zot/config.json",
 | 
			
		||||
  "description": "Zot is a cloud-native OCI image registry focused on extensibility, maintainability, and performance. It supports advanced features such as Web UI, security scanning, authentication via htpasswd and OIDC, and more.",
 | 
			
		||||
  "install_methods": [
 | 
			
		||||
    {
 | 
			
		||||
      "type": "default",
 | 
			
		||||
      "script": "ct/zot-registry.sh",
 | 
			
		||||
      "resources": {
 | 
			
		||||
        "cpu": 1,
 | 
			
		||||
        "ram": 2048,
 | 
			
		||||
        "hdd": 5,
 | 
			
		||||
        "os": "Debian",
 | 
			
		||||
        "version": "12"
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
  "default_credentials": {
 | 
			
		||||
    "username": null,
 | 
			
		||||
    "password": null
 | 
			
		||||
  },
 | 
			
		||||
  "notes": []
 | 
			
		||||
}
 | 
			
		||||
@@ -49,7 +49,7 @@ EOF
 | 
			
		||||
 | 
			
		||||
sed -i -e 's/\$/\$\$/g' /opt/tinyauth/.env
 | 
			
		||||
 | 
			
		||||
cat <<EOF >/etc/init.d/tinyauth
 | 
			
		||||
cat <<'EOF' >/etc/init.d/tinyauth
 | 
			
		||||
#!/sbin/openrc-run
 | 
			
		||||
description="Tinyauth Service"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -14,8 +14,8 @@ network_check
 | 
			
		||||
update_os
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Alpine-Zigbee2MQTT"
 | 
			
		||||
mkdir -p /root/.z2m /etc/zigbee2mqtt
 | 
			
		||||
$STD apk add zigbee2mqtt
 | 
			
		||||
mkdir -p /root/.z2m
 | 
			
		||||
ln -s /etc/zigbee2mqtt/ /root/.z2m
 | 
			
		||||
chown -R root:root /etc/zigbee2mqtt /root/.z2m
 | 
			
		||||
sed -i -e 's/#datadir="\/var\/lib\/zigbee2mqtt"/datadir="\/etc\/zigbee2mqtt"/' -e 's/#command_user="zigbee2mqtt"/command_user="root"/' /etc/conf.d/zigbee2mqtt
 | 
			
		||||
 
 | 
			
		||||
@@ -23,7 +23,7 @@ install_mariadb
 | 
			
		||||
 | 
			
		||||
msg_info "Setting up Database"
 | 
			
		||||
ROOT_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
 | 
			
		||||
$STD mariadb -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '$ROOT_PASS'); flush privileges;"
 | 
			
		||||
$STD mariadb -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '$ROOT_PASS'; flush privileges;"
 | 
			
		||||
{
 | 
			
		||||
  echo "Dolibarr DB Credentials"
 | 
			
		||||
  echo "MariaDB Root Password: $ROOT_PASS"
 | 
			
		||||
 
 | 
			
		||||
@@ -54,7 +54,12 @@ RELEASE=$(curl -fsSL https://api.github.com/repos/etkecc/synapse-admin/releases/
 | 
			
		||||
curl -fsSL "https://github.com/etkecc/synapse-admin/archive/refs/tags/v${RELEASE}.tar.gz" -o "$temp_file"
 | 
			
		||||
tar xzf "$temp_file" -C /opt/synapse-admin --strip-components=1
 | 
			
		||||
cd /opt/synapse-admin
 | 
			
		||||
$STD yarn global add serve
 | 
			
		||||
$STD yarn install --ignore-engines
 | 
			
		||||
$STD yarn build
 | 
			
		||||
mv ./dist ../ && \
 | 
			
		||||
  rm -rf * && \
 | 
			
		||||
  mv ../dist ./
 | 
			
		||||
msg_ok "Installed Element Synapse"
 | 
			
		||||
 | 
			
		||||
msg_info "Creating Service"
 | 
			
		||||
@@ -67,7 +72,7 @@ Requires=matrix-synapse.service
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
WorkingDirectory=/opt/synapse-admin
 | 
			
		||||
ExecStart=/usr/bin/yarn start --host
 | 
			
		||||
ExecStart=/usr/local/bin/serve -s dist -l 5173
 | 
			
		||||
Restart=always
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
 
 | 
			
		||||
@@ -87,7 +87,7 @@ msg_ok "Dependencies Installed"
 | 
			
		||||
NODE_VERSION="22" install_node_and_modules
 | 
			
		||||
PG_VERSION="16" install_postgresql
 | 
			
		||||
 | 
			
		||||
read -r -p "Install OpenVINO dependencies for Intel HW-accelerated machine-learning? " prompt
 | 
			
		||||
read -r -p "${TAB3}Install OpenVINO dependencies for Intel HW-accelerated machine-learning? " prompt
 | 
			
		||||
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
 | 
			
		||||
  msg_info "Installing OpenVINO dependencies"
 | 
			
		||||
  touch ~/.openvino
 | 
			
		||||
 
 | 
			
		||||
@@ -91,10 +91,26 @@ BROWSER_WEB_URL="http://127.0.0.1:9222"
 | 
			
		||||
 | 
			
		||||
# If you're planning to use ollama for tagging, uncomment the following lines:
 | 
			
		||||
# OLLAMA_BASE_URL="<OLLAMA_ADDR>"
 | 
			
		||||
# OLLAMA_KEEP_ALIVE="5m"
 | 
			
		||||
 | 
			
		||||
# You can change the models used by uncommenting the following lines, and changing them according to your needs:
 | 
			
		||||
# INFERENCE_TEXT_MODEL="gpt-4o-mini"
 | 
			
		||||
# INFERENCE_IMAGE_MODEL="gpt-4o-mini" 
 | 
			
		||||
 | 
			
		||||
# Additional inference defaults
 | 
			
		||||
# INFERENCE_CONTEXT_LENGTH="2048"
 | 
			
		||||
# INFERENCE_ENABLE_AUTO_TAGGING=true
 | 
			
		||||
# INFERENCE_ENABLE_AUTO_SUMMARIZATION=false
 | 
			
		||||
 | 
			
		||||
# Crawler defaults
 | 
			
		||||
# CRAWLER_NUM_WORKERS="1"
 | 
			
		||||
# CRAWLER_DOWNLOAD_BANNER_IMAGE=true
 | 
			
		||||
# CRAWLER_STORE_SCREENSHOT=true
 | 
			
		||||
# CRAWLER_FULL_PAGE_SCREENSHOT=false
 | 
			
		||||
# CRAWLER_FULL_PAGE_ARCHIVE=false
 | 
			
		||||
# CRAWLER_VIDEO_DOWNLOAD=false
 | 
			
		||||
# CRAWLER_VIDEO_DOWNLOAD_MAX_SIZE="50"
 | 
			
		||||
# CRAWLER_ENABLE_ADBLOCKER=true
 | 
			
		||||
EOF
 | 
			
		||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
 | 
			
		||||
msg_ok "Installed karakeep"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										84
									
								
								install/managemydamnlife-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								install/managemydamnlife-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,84 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: vhsdream
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/intri-in/manage-my-damn-life-nextjs
 | 
			
		||||
 | 
			
		||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
 | 
			
		||||
color
 | 
			
		||||
verb_ip6
 | 
			
		||||
catch_errors
 | 
			
		||||
setting_up_container
 | 
			
		||||
network_check
 | 
			
		||||
update_os
 | 
			
		||||
 | 
			
		||||
NODE_VERSION="20" install_node_and_modules
 | 
			
		||||
MYSQL_VERSION="8.0" install_mysql
 | 
			
		||||
 | 
			
		||||
msg_info "Setting up Database"
 | 
			
		||||
DB_NAME="mmdl"
 | 
			
		||||
DB_USER="mmdl"
 | 
			
		||||
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
 | 
			
		||||
$STD mysql -u root -e "CREATE DATABASE $DB_NAME;"
 | 
			
		||||
$STD mysql -u root -e "CREATE USER '$DB_USER'@'localhost' IDENTIFIED by '$DB_PASS';"
 | 
			
		||||
$STD mysql -u root -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'localhost'; FLUSH PRIVILEGES;"
 | 
			
		||||
{
 | 
			
		||||
  echo "Manage My Damn Life Credentials"
 | 
			
		||||
  echo "Database User: $DB_USER"
 | 
			
		||||
  echo "Database Password: $DB_PASS"
 | 
			
		||||
  echo "Database Name: $DB_NAME"
 | 
			
		||||
} >>~/mmdl.creds
 | 
			
		||||
msg_ok "Set up Database"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing ${APPLICATION}"
 | 
			
		||||
RELEASE=$(curl -fsSL https://api.github.com/repos/intri-in/manage-my-damn-life-nextjs/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
curl -fsSLO "https://github.com/intri-in/manage-my-damn-life-nextjs/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
unzip -q v"$RELEASE".zip
 | 
			
		||||
mv manage-my-damn-life-nextjs-"$RELEASE"/ /opt/mmdl
 | 
			
		||||
cp /opt/mmdl/sample.env.local /opt/mmdl/.env
 | 
			
		||||
 | 
			
		||||
sed -i -e 's|db|localhost|' \
 | 
			
		||||
  -e "s|myuser|${DB_USER}|" \
 | 
			
		||||
  -e "s|mypassword|${DB_PASS}|" \
 | 
			
		||||
  -e 's|5433|3306|' \
 | 
			
		||||
  -e 's|DB_DIALECT=postgres|DB_DIALECT=mysql|' \
 | 
			
		||||
  -e "s|sample_install_mmdm|${DB_NAME}|" \
 | 
			
		||||
  -e "s|=PASSWORD|=$(openssl rand -base64 40 | tr -dc 'a-zA-Z0-9' | head -c40)|" \
 | 
			
		||||
  /opt/mmdl/.env
 | 
			
		||||
 | 
			
		||||
cd /opt/mmdl
 | 
			
		||||
export NEXT_TELEMETRY_DISABLE=1
 | 
			
		||||
export CI="true"
 | 
			
		||||
$STD npm install
 | 
			
		||||
$STD npm run migrate
 | 
			
		||||
$STD npm run build
 | 
			
		||||
echo "${RELEASE}" >/opt/mmdl_version.txt
 | 
			
		||||
msg_ok "Installed ${APPLICATION}"
 | 
			
		||||
 | 
			
		||||
msg_info "Creating Service"
 | 
			
		||||
cat <<EOF >/etc/systemd/system/mmdl.service
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=${APPLICATION} Service
 | 
			
		||||
After=network.target mysql.service
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
WorkingDirectory=/opt/mmdl
 | 
			
		||||
EnvironmentFile=/opt/mmdl/.env
 | 
			
		||||
ExecStart=/usr/bin/npm run start
 | 
			
		||||
Restart=on-abnormal
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
EOF
 | 
			
		||||
systemctl enable -q --now mmdl
 | 
			
		||||
msg_ok "Created Service"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
rm -f ~/v${RELEASE}.zip
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
							
								
								
									
										36
									
								
								install/minarca-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								install/minarca-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: Slaviša Arežina (tremor021)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://minarca.org/en_CA
 | 
			
		||||
 | 
			
		||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
 | 
			
		||||
color
 | 
			
		||||
verb_ip6
 | 
			
		||||
catch_errors
 | 
			
		||||
setting_up_container
 | 
			
		||||
network_check
 | 
			
		||||
update_os
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Dependencies"
 | 
			
		||||
$STD apt-get install -y \
 | 
			
		||||
  apt-transport-https \
 | 
			
		||||
  ca-certificates \
 | 
			
		||||
  lsb-release
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Minarca"
 | 
			
		||||
curl -fsSL https://www.ikus-soft.com/archive/minarca/public.key | gpg --dearmor >/usr/share/keyrings/minarca-keyring.gpg
 | 
			
		||||
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/minarca-keyring.gpg] https://nexus.ikus-soft.com/repository/apt-release-$(lsb_release -sc)/ $(lsb_release -sc) main" >/etc/apt/sources.list.d/minarca.list
 | 
			
		||||
$STD apt-get update
 | 
			
		||||
$STD apt-get install -y minarca-server
 | 
			
		||||
msg_ok "Installed Minarca"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
@@ -78,6 +78,7 @@ msg_ok "Created Service"
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
rm -f /opt/v${RELEASE}.zip
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										65
									
								
								install/zot-registry-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								install/zot-registry-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,65 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: MickLesk (CanbiZ)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://zotregistry.dev/
 | 
			
		||||
 | 
			
		||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
 | 
			
		||||
color
 | 
			
		||||
verb_ip6
 | 
			
		||||
catch_errors
 | 
			
		||||
setting_up_container
 | 
			
		||||
network_check
 | 
			
		||||
update_os
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Dependencies"
 | 
			
		||||
$STD apt-get install -y apache2-utils
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Zot Registry"
 | 
			
		||||
RELEASE=$(curl -fsSL https://api.github.com/repos/project-zot/zot/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
curl -fsSL "https://github.com/project-zot/zot/releases/download/${RELEASE}/zot-linux-amd64" -o /usr/bin/zot
 | 
			
		||||
chmod +x /usr/bin/zot
 | 
			
		||||
chown root:root /usr/bin/zot
 | 
			
		||||
mkdir -p /etc/zot
 | 
			
		||||
curl -fsSL https://raw.githubusercontent.com/project-zot/zot/refs/heads/main/examples/config-ui.json -o /etc/zot/config.json
 | 
			
		||||
ZOTPASSWORD=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c13)
 | 
			
		||||
$STD htpasswd -b -B -c /etc/zot/htpasswd admin "$ZOTPASSWORD"
 | 
			
		||||
{
 | 
			
		||||
  echo "Zot-Credentials"
 | 
			
		||||
  echo "Zot User: admin"
 | 
			
		||||
  echo "Zot Password: $ZOTPASSWORD"
 | 
			
		||||
} >>~/zot.creds
 | 
			
		||||
echo "${RELEASE}" >~/.${APPLICATION}
 | 
			
		||||
msg_ok "Installed Zot Registry"
 | 
			
		||||
 | 
			
		||||
msg_info "Setup Service"
 | 
			
		||||
cat <<EOF >/etc/systemd/system/zot.service
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=OCI Distribution Registry
 | 
			
		||||
Documentation=https://zotregistry.dev/
 | 
			
		||||
After=network.target auditd.service local-fs.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/zot serve /etc/zot/config.json
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
User=root
 | 
			
		||||
LimitNOFILE=500000
 | 
			
		||||
MemoryHigh=2G
 | 
			
		||||
MemoryMax=4G
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
EOF
 | 
			
		||||
systemctl enable -q --now zot
 | 
			
		||||
msg_ok "Setup Service"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
@@ -39,9 +39,11 @@ post_to_api() {
 | 
			
		||||
EOF
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
  RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
  if [[ "$DIAGNOSTICS" == "yes" ]]; then
 | 
			
		||||
    RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
    -H "Content-Type: application/json" \
 | 
			
		||||
    -d "$JSON_PAYLOAD") || true
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
post_to_api_vm() {
 | 
			
		||||
@@ -87,9 +89,11 @@ post_to_api_vm() {
 | 
			
		||||
EOF
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
  RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
  if [[ "$DIAGNOSTICS" == "yes" ]]; then
 | 
			
		||||
    RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
    -H "Content-Type: application/json" \
 | 
			
		||||
    -d "$JSON_PAYLOAD") || true
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
POST_UPDATE_DONE=false
 | 
			
		||||
@@ -115,9 +119,11 @@ post_update_to_api() {
 | 
			
		||||
EOF
 | 
			
		||||
)
 | 
			
		||||
   
 | 
			
		||||
  RESPONSE=$(curl -fsSL -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
  if [[ "$DIAGNOSTICS" == "yes" ]]; then
 | 
			
		||||
    RESPONSE=$(curl -s -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
 | 
			
		||||
    -H "Content-Type: application/json" \
 | 
			
		||||
    -d "$JSON_PAYLOAD") || true
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  POST_UPDATE_DONE=true
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -379,7 +379,7 @@ write_config() {
 | 
			
		||||
 | 
			
		||||
CT_TYPE="${CT_TYPE}"
 | 
			
		||||
DISK_SIZE="${DISK_SIZE}"
 | 
			
		||||
CORE_COUNT="${DISK_SIZE}"
 | 
			
		||||
CORE_COUNT="${CORE_COUNT}"
 | 
			
		||||
RAM_SIZE="${RAM_SIZE}"
 | 
			
		||||
HN="${HN}"
 | 
			
		||||
BRG="${BRG}"
 | 
			
		||||
@@ -411,7 +411,7 @@ EOF
 | 
			
		||||
 | 
			
		||||
CT_TYPE="${CT_TYPE}"
 | 
			
		||||
DISK_SIZE="${DISK_SIZE}"
 | 
			
		||||
CORE_COUNT="${DISK_SIZE}"
 | 
			
		||||
CORE_COUNT="${CORE_COUNT}"
 | 
			
		||||
RAM_SIZE="${RAM_SIZE}"
 | 
			
		||||
HN="${HN}"
 | 
			
		||||
BRG="${BRG}"
 | 
			
		||||
@@ -1090,6 +1090,8 @@ build_container() {
 | 
			
		||||
  else
 | 
			
		||||
    export FUNCTIONS_FILE_PATH="$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/install.func)"
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  export DIAGNOSTICS="$DIAGNOSTICS"
 | 
			
		||||
  export RANDOM_UUID="$RANDOM_UUID"
 | 
			
		||||
  export CACHER="$APT_CACHER"
 | 
			
		||||
  export CACHER_IP="$APT_CACHER_IP"
 | 
			
		||||
 
 | 
			
		||||
@@ -77,7 +77,7 @@ error_handler() {
 | 
			
		||||
  local command="$2"
 | 
			
		||||
  local error_message="${RD}[ERROR]${CL} in line ${RD}$line_number${CL}: exit code ${RD}$exit_code${CL}: while executing command ${YW}$command${CL}"
 | 
			
		||||
  echo -e "\n$error_message"
 | 
			
		||||
  if [[ "$line_number" -eq 50 ]]; then
 | 
			
		||||
  if [[ "$line_number" -eq 51 ]]; then
 | 
			
		||||
    echo -e "The silent function has suppressed the error, run the script with verbose mode enabled, which will provide more detailed output.\n"
 | 
			
		||||
    post_update_to_api "failed" "No error message, script ran in silent mode"
 | 
			
		||||
  else
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user