mirror of
				https://github.com/community-scripts/ProxmoxVE.git
				synced 2025-11-04 10:22:50 +00:00 
			
		
		
		
	Compare commits
	
		
			34 Commits
		
	
	
		
			2024-11-28
			...
			2024-11-30
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					11d1f0f981 | ||
| 
						 | 
					c75148ec51 | ||
| 
						 | 
					8c7b72e71b | ||
| 
						 | 
					3f1cde865e | ||
| 
						 | 
					ddc867ea4e | ||
| 
						 | 
					78948b08cf | ||
| 
						 | 
					f0936500d3 | ||
| 
						 | 
					fe4b8fed8a | ||
| 
						 | 
					ec273ba221 | ||
| 
						 | 
					d5d5a3d3a3 | ||
| 
						 | 
					617b42dd8e | ||
| 
						 | 
					274867dc11 | ||
| 
						 | 
					17e5d69052 | ||
| 
						 | 
					c9148547ef | ||
| 
						 | 
					942ad74b73 | ||
| 
						 | 
					6fb5512878 | ||
| 
						 | 
					b191579f11 | ||
| 
						 | 
					bc10a3fa17 | ||
| 
						 | 
					dc49ad1133 | ||
| 
						 | 
					b15a59315e | ||
| 
						 | 
					b9fe3855b0 | ||
| 
						 | 
					74b4b5150c | ||
| 
						 | 
					689122b14a | ||
| 
						 | 
					2fbd5f5068 | ||
| 
						 | 
					40c70192af | ||
| 
						 | 
					5f3985cd0a | ||
| 
						 | 
					8901aa4d7f | ||
| 
						 | 
					862b72ab39 | ||
| 
						 | 
					b328eedc75 | ||
| 
						 | 
					543142ebf1 | ||
| 
						 | 
					e30c413ea5 | ||
| 
						 | 
					d7102d1233 | ||
| 
						 | 
					f7087e57f9 | ||
| 
						 | 
					b17ede296c | 
							
								
								
									
										27
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										27
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -16,6 +16,33 @@ All LXC instances created using this repository come pre-installed with Midnight
 | 
			
		||||
> [!IMPORTANT]
 | 
			
		||||
Do not break established syntax in this file, as it is automatically updated by a Github Workflow
 | 
			
		||||
 | 
			
		||||
## 2024-11-30
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Convert line endings in the-lounge.sh [@jamezpolley](https://github.com/jamezpolley) ([#599](https://github.com/community-scripts/ProxmoxVE/pull/599))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- add some Information for Monitor-All Script [@MickLesk](https://github.com/MickLesk) ([#605](https://github.com/community-scripts/ProxmoxVE/pull/605))
 | 
			
		||||
 | 
			
		||||
## 2024-11-29
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: The Lounge IRC [@quantumryuu](https://github.com/quantumryuu) ([#571](https://github.com/community-scripts/ProxmoxVE/pull/571))
 | 
			
		||||
- New Script: LubeLogger [@quantumryuu](https://github.com/quantumryuu) ([#574](https://github.com/community-scripts/ProxmoxVE/pull/574))
 | 
			
		||||
- New Script: Inspircd [@quantumryuu](https://github.com/quantumryuu) ([#576](https://github.com/community-scripts/ProxmoxVE/pull/576))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix msg_error on zwave-js-ui [@MickLesk](https://github.com/MickLesk) ([#585](https://github.com/community-scripts/ProxmoxVE/pull/585))
 | 
			
		||||
- Fix Kimai Apache2 Rights [@MickLesk](https://github.com/MickLesk) ([#577](https://github.com/community-scripts/ProxmoxVE/pull/577))
 | 
			
		||||
 | 
			
		||||
## 2024-11-28
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										97
									
								
								ct/inspircd.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										97
									
								
								ct/inspircd.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,97 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____                 ________  ______    __
 | 
			
		||||
   /  _/___  _________  /  _/ __ \/ ____/___/ /
 | 
			
		||||
   / // __ \/ ___/ __ \ / // /_/ / /   / __  / 
 | 
			
		||||
 _/ // / / (__  ) /_/ // // _, _/ /___/ /_/ /  
 | 
			
		||||
/___/_/ /_/____/ .___/___/_/ |_|\____/\__,_/   
 | 
			
		||||
              /_/                              
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
APP="InspIRCd"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -f /lib/systemd/system/inspircd.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Service"
 | 
			
		||||
    systemctl stop inspircd
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    wget -q https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
    apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y &>/dev/nul
 | 
			
		||||
    echo "${RELEASE}" >"/opt/${APP}_version.txt"
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start inspircd
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  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 "${APP} server should be reachable by connecting to the following server.
 | 
			
		||||
         ${BL}Server Name:${IP} Port:6667${CL} \n"
 | 
			
		||||
							
								
								
									
										104
									
								
								ct/lubelogger.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										104
									
								
								ct/lubelogger.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,104 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __          __         __                               
 | 
			
		||||
   / /   __  __/ /_  ___  / /   ____  ____ _____ ____  _____
 | 
			
		||||
  / /   / / / / __ \/ _ \/ /   / __ \/ __ `/ __ `/ _ \/ ___/
 | 
			
		||||
 / /___/ /_/ / /_/ /  __/ /___/ /_/ / /_/ / /_/ /  __/ /    
 | 
			
		||||
/_____/\__,_/_.___/\___/_____/\____/\__, /\__, /\___/_/     
 | 
			
		||||
                                   /____//____/             
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
APP="LubeLogger"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/lubelogger.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  RELEASE_TRIMMED=$(echo "${RELEASE}" | tr -d ".")
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Service"
 | 
			
		||||
    systemctl stop lubelogger
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    wget -q https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip
 | 
			
		||||
    cp /opt/lubelogger/appsettings.json /opt/appsettings.json
 | 
			
		||||
    rm -rf /opt/lubelogger
 | 
			
		||||
    unzip -qq LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip -d lubelogger
 | 
			
		||||
    chmod 700 /opt/lubelogger/CarCareTracker
 | 
			
		||||
    mv -f /opt/appsettings.json /opt/lubelogger/appsettings.json
 | 
			
		||||
    echo "${RELEASE}" >"/opt/${APP}_version.txt"
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start lubelogger
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  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 "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5000${CL} \n"
 | 
			
		||||
@@ -56,7 +56,7 @@ function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/Sonarr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
if [[ ! -d /var/lib/sonarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP v4"
 | 
			
		||||
systemctl stop sonarr.service
 | 
			
		||||
wget -q -O SonarrV4.tar.gz 'https://services.sonarr.tv/v1/download/main/latest?version=4&os=linux&arch=x64'
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										93
									
								
								ct/the-lounge.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								ct/the-lounge.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,93 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
  ________               __                               
 | 
			
		||||
 /_  __/ /_  ___        / /   ____  __  ______  ____ ____ 
 | 
			
		||||
  / / / __ \/ _ \______/ /   / __ \/ / / / __ \/ __ `/ _ \
 | 
			
		||||
 / / / / / /  __/_____/ /___/ /_/ / /_/ / / / / /_/ /  __/
 | 
			
		||||
/_/ /_/ /_/\___/     /_____/\____/\__,_/_/ /_/\__, /\___/ 
 | 
			
		||||
                                             /____/       
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
APP="The-Lounge"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="yes"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /usr/lib/systemd/system/thelounge.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping Service"
 | 
			
		||||
  systemctl stop thelounge
 | 
			
		||||
  msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
  apt-get install --only-upgrade nodejs &>/dev/null
 | 
			
		||||
  cd /opt
 | 
			
		||||
  wget -q https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb
 | 
			
		||||
  dpkg -i ./thelounge_${RELEASE}_all.deb
 | 
			
		||||
  msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Service"
 | 
			
		||||
  systemctl start thelounge
 | 
			
		||||
  msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning up"
 | 
			
		||||
  rm -rf "/opt/thelounge_${RELEASE}_all.deb"
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
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 "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:9000${CL} \n"
 | 
			
		||||
@@ -53,32 +53,38 @@ function default_settings() {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/zwave-js-ui ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
msg_info "Stopping Service"
 | 
			
		||||
systemctl stop zwave-js-ui
 | 
			
		||||
msg_ok "Stopped Service"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/zwave-js-ui ]]; then 
 | 
			
		||||
    msg_error "No ${APP} Installation Found!";
 | 
			
		||||
    exit; 
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/zwave-js/zwave-js-ui/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Service"
 | 
			
		||||
    systemctl stop zwave-js-ui
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating Z-Wave JS UI"
 | 
			
		||||
rm -rf /opt/zwave-js-ui/*
 | 
			
		||||
cd /opt/zwave-js-ui
 | 
			
		||||
wget -q https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
unzip -q zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
msg_ok "Updated Z-Wave JS UI"
 | 
			
		||||
    msg_info "Updating Z-Wave JS UI"
 | 
			
		||||
    rm -rf /opt/zwave-js-ui/*
 | 
			
		||||
    cd /opt/zwave-js-ui
 | 
			
		||||
    wget -q https://github.com/zwave-js/zwave-js-ui/releases/download/${RELEASE}/zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
    unzip -q zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
    msg_ok "Updated Z-Wave JS UI"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting Service"
 | 
			
		||||
systemctl start zwave-js-ui
 | 
			
		||||
msg_ok "Started Service"
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start zwave-js-ui
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
msg_info "Cleanup"
 | 
			
		||||
rm -rf /opt/zwave-js-ui/zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
rm -rf /opt/zwave-js-ui/store
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
msg_ok "Updated Successfully!\n"
 | 
			
		||||
    msg_info "Cleanup"
 | 
			
		||||
    rm -rf /opt/zwave-js-ui/zwave-js-ui-${RELEASE}-linux.zip
 | 
			
		||||
    rm -rf /opt/zwave-js-ui/store
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully!\n"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										54
									
								
								install/inspircd-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								install/inspircd-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
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 \
 | 
			
		||||
    curl \
 | 
			
		||||
    mc \
 | 
			
		||||
    sudo 
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
msg_info "Installing InspIRCd"
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
cd /opt
 | 
			
		||||
wget -q https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
$STD apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y &>/dev/null
 | 
			
		||||
cat <<EOF >/etc/inspircd/inspircd.conf
 | 
			
		||||
<define name="networkDomain" value="helper-scripts.com">
 | 
			
		||||
<define name="networkName" value="Proxmox VE Helper-Scripts">
 | 
			
		||||
 | 
			
		||||
<server
 | 
			
		||||
        name="irc.&networkDomain;"
 | 
			
		||||
        description="&networkName; IRC server"
 | 
			
		||||
        network="&networkName;">
 | 
			
		||||
<admin
 | 
			
		||||
       name="Admin"
 | 
			
		||||
       description="Supreme Overlord"
 | 
			
		||||
       email="irc@&networkDomain;">
 | 
			
		||||
<bind address="" port="6667" type="clients">
 | 
			
		||||
EOF
 | 
			
		||||
 | 
			
		||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
 | 
			
		||||
msg_ok "Installed InspIRCd"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
rm -rf /opt/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
@@ -56,9 +56,9 @@ $STD composer install --no-dev --optimize-autoloader --no-interaction
 | 
			
		||||
cp .env.dist .env
 | 
			
		||||
sed -i "/^DATABASE_URL=/c\DATABASE_URL=mysql://$DB_USER:$DB_PASS@127.0.0.1:3306/$DB_NAME?charset=utf8mb4&serverVersion=$MYSQL_VERSION" /opt/kimai/.env
 | 
			
		||||
$STD bin/console kimai:install -n
 | 
			
		||||
chown -R :www-data .
 | 
			
		||||
chmod -R g+r .
 | 
			
		||||
chmod -R g+rw var/
 | 
			
		||||
chown -R :www-data /opt/kimai
 | 
			
		||||
chmod -R g+r /opt/kimai
 | 
			
		||||
chmod -R g+rw /opt/kimai
 | 
			
		||||
sudo chown -R www-data:www-data /opt/kimai
 | 
			
		||||
sudo chmod -R 755 /opt/kimai
 | 
			
		||||
$STD expect <<EOF
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										72
									
								
								install/lubelogger-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								install/lubelogger-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,72 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
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 \
 | 
			
		||||
    curl \
 | 
			
		||||
    sudo \
 | 
			
		||||
    wget \
 | 
			
		||||
    mc \
 | 
			
		||||
    zip \
 | 
			
		||||
    jq
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
msg_info "Installing LubeLogger"
 | 
			
		||||
cd /opt
 | 
			
		||||
mkdir -p /opt/lubelogger
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/hargata/lubelog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
RELEASE_TRIMMED=$(echo "${RELEASE}" | tr -d ".")
 | 
			
		||||
cd /opt/lubelogger
 | 
			
		||||
wget -q https://github.com/hargata/lubelog/releases/download/v${RELEASE}/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip
 | 
			
		||||
unzip -q LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip
 | 
			
		||||
chmod 700 /opt/lubelogger/CarCareTracker
 | 
			
		||||
cp /opt/lubelogger/appsettings.json /opt/lubelogger/appsettings_bak.json
 | 
			
		||||
jq '.Kestrel = {"Endpoints": {"Http": {"Url": "http://0.0.0.0:5000"}}}' /opt/lubelogger/appsettings_bak.json > /opt/lubelogger/appsettings.json
 | 
			
		||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
 | 
			
		||||
msg_ok "Installed LubeLogger"
 | 
			
		||||
 | 
			
		||||
msg_info "Creating Service"
 | 
			
		||||
cat <<EOF >/etc/systemd/system/lubelogger.service
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=LubeLogger Daemon
 | 
			
		||||
After=network.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
User=root
 | 
			
		||||
 | 
			
		||||
Type=simple
 | 
			
		||||
WorkingDirectory=/opt/lubelogger
 | 
			
		||||
ExecStart=/opt/lubelogger/CarCareTracker
 | 
			
		||||
TimeoutStopSec=20
 | 
			
		||||
KillMode=process
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
EOF
 | 
			
		||||
 | 
			
		||||
systemctl enable --now -q lubelogger.service
 | 
			
		||||
msg_ok "Created Service"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
rm -rf /opt/lubelogger/appsettings_bak.json
 | 
			
		||||
rm -rf /opt/lubelogger/LubeLogger_v${RELEASE_TRIMMED}_linux_x64.zip
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
							
								
								
									
										51
									
								
								install/the-lounge-install.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								install/the-lounge-install.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
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 \
 | 
			
		||||
  curl \
 | 
			
		||||
  gpg \
 | 
			
		||||
  wget \
 | 
			
		||||
  mc
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
msg_info "Setting up Node.js Repository"
 | 
			
		||||
mkdir -p /etc/apt/keyrings
 | 
			
		||||
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
 | 
			
		||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
 | 
			
		||||
msg_ok "Set up Node.js Repository"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Node.js"
 | 
			
		||||
$STD apt-get update
 | 
			
		||||
$STD apt-get install -y nodejs
 | 
			
		||||
$STD npm install --global yarn
 | 
			
		||||
msg_ok "Installed Node.js"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing The Lounge"
 | 
			
		||||
cd /opt
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/thelounge/thelounge-deb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
wget -q https://github.com/thelounge/thelounge-deb/releases/download/v${RELEASE}/thelounge_${RELEASE}_all.deb
 | 
			
		||||
$STD dpkg -i ./thelounge_${RELEASE}_all.deb
 | 
			
		||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
 | 
			
		||||
msg_ok "Installed The Lounge"
 | 
			
		||||
 | 
			
		||||
motd_ssh
 | 
			
		||||
customize
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning up"
 | 
			
		||||
rm -rf /opt/thelounge_${RELEASE}_all.deb
 | 
			
		||||
$STD apt-get -y autoremove
 | 
			
		||||
$STD apt-get -y autoclean
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
							
								
								
									
										34
									
								
								json/inspircd.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								json/inspircd.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
{
 | 
			
		||||
    "name": "InspIRCd 4",
 | 
			
		||||
    "slug": "inspircd",
 | 
			
		||||
    "categories": [
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "date_created": "2024-11-29",
 | 
			
		||||
    "type": "ct",
 | 
			
		||||
    "updateable": true,
 | 
			
		||||
    "privileged": false,
 | 
			
		||||
    "interface_port": 6667,
 | 
			
		||||
    "documentation": "https://docs.inspircd.org/",
 | 
			
		||||
    "website": "https://www.inspircd.org/",
 | 
			
		||||
    "logo": "https://avatars.githubusercontent.com/u/1560750?s=200&v=4",
 | 
			
		||||
    "description": "InspIRCd is a modular C++ Internet Relay Chat (IRC) server for UNIX-like and Windows systems.",
 | 
			
		||||
    "install_methods": [
 | 
			
		||||
      {
 | 
			
		||||
        "type": "default",
 | 
			
		||||
        "script": "ct/inspircd.sh",
 | 
			
		||||
        "resources": {
 | 
			
		||||
          "cpu": 1,
 | 
			
		||||
          "ram": 512,
 | 
			
		||||
          "hdd": 2,
 | 
			
		||||
          "os": null,
 | 
			
		||||
          "version": null
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "default_credentials": {
 | 
			
		||||
      "username": null,
 | 
			
		||||
      "password": null
 | 
			
		||||
    },
 | 
			
		||||
    "notes": []
 | 
			
		||||
  }
 | 
			
		||||
							
								
								
									
										34
									
								
								json/lubelogger.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								json/lubelogger.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
{
 | 
			
		||||
    "name": "LubeLogger",
 | 
			
		||||
    "slug": "lubelogger",
 | 
			
		||||
    "categories": [
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "date_created": "2024-11-29",
 | 
			
		||||
    "type": "ct",
 | 
			
		||||
    "updateable": true,
 | 
			
		||||
    "privileged": false,
 | 
			
		||||
    "interface_port": 5000,
 | 
			
		||||
    "documentation": "https://docs.lubelogger.com/",
 | 
			
		||||
    "website": "https://lubelogger.com/",
 | 
			
		||||
    "logo": "https://docs.lubelogger.com/Misc/Branding/a/image-1731645976107.png",
 | 
			
		||||
    "description": "Web-Based Vehicle Maintenance and Fuel Mileage Tracker",
 | 
			
		||||
    "install_methods": [
 | 
			
		||||
      {
 | 
			
		||||
        "type": "default",
 | 
			
		||||
        "script": "ct/lubelogger.sh",
 | 
			
		||||
        "resources": {
 | 
			
		||||
          "cpu": 1,
 | 
			
		||||
          "ram": 512,
 | 
			
		||||
          "hdd": 2,
 | 
			
		||||
          "os": "Debian",
 | 
			
		||||
          "version": "12"
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "default_credentials": {
 | 
			
		||||
      "username": null,
 | 
			
		||||
      "password": null
 | 
			
		||||
    },
 | 
			
		||||
    "notes": []
 | 
			
		||||
  }
 | 
			
		||||
@@ -34,6 +34,30 @@
 | 
			
		||||
        {
 | 
			
		||||
            "text": "Execute within the Proxmox shell",
 | 
			
		||||
            "type": "warning"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "To make setup changes, first stop the service: `systemctl stop ping-instances`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "To edit pause time: `nano /usr/local/bin/ping-instances.sh`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "To add excluded instances: `nano /etc/systemd/system/ping-instances.service`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "To edit pause time: `nano /usr/local/bin/ping-instances.sh`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "After changes have been saved, `systemctl daemon-reload` and start the service: `systemctl start ping-instances`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
            "text": "Monitor-All logs: `cat /var/log/ping-instances.log`",
 | 
			
		||||
            "type": "Info"
 | 
			
		||||
        }
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										39
									
								
								json/the-lounge.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								json/the-lounge.json
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,39 @@
 | 
			
		||||
{
 | 
			
		||||
    "name": "The Lounge",
 | 
			
		||||
    "slug": "the-lounge",
 | 
			
		||||
    "categories": [
 | 
			
		||||
      0
 | 
			
		||||
    ],
 | 
			
		||||
    "date_created": "2024-11-28",
 | 
			
		||||
    "type": "ct",
 | 
			
		||||
    "updateable": true,
 | 
			
		||||
    "privileged": false,
 | 
			
		||||
    "interface_port": 9000,
 | 
			
		||||
    "documentation": "https://thelounge.chat/docs",
 | 
			
		||||
    "website": "https://thelounge.chat/",
 | 
			
		||||
    "logo": "https://raw.githubusercontent.com/thelounge/thelounge.github.io/master/assets/logos/logo/TL_Grey%26Yellow_Vertical_logotype_Transparent_Bg/TL_Grey%26Yellow_Vertical_logotype_Transparent_Bg.png",
 | 
			
		||||
    "description": "Modern web IRC client designed for self-hosting ",
 | 
			
		||||
    "install_methods": [
 | 
			
		||||
      {
 | 
			
		||||
        "type": "default",
 | 
			
		||||
        "script": "ct/the-lounge.sh",
 | 
			
		||||
        "resources": {
 | 
			
		||||
          "cpu": 2,
 | 
			
		||||
          "ram": 2048,
 | 
			
		||||
          "hdd": 4,
 | 
			
		||||
          "os": "Ubuntu",
 | 
			
		||||
          "version": 24.04
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "default_credentials": {
 | 
			
		||||
      "username": null,
 | 
			
		||||
      "password": null
 | 
			
		||||
    },
 | 
			
		||||
    "notes": [
 | 
			
		||||
      {
 | 
			
		||||
        "text": "The Lounge is running in private mode. Use \"sudo -u thelounge thelounge add name\" to create users.",
 | 
			
		||||
        "type": "info"
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
		Reference in New Issue
	
	Block a user