mirror of https://github.com/tteck/Proxmox.git
				
				
				
			Compare commits
	
		
			5 Commits
		
	
	
		
			620b652864
			...
			9543941d07
		
	
	| Author | SHA1 | Date | 
|---|---|---|
| 
							
							
								 | 
						9543941d07 | |
| 
							
							
								 | 
						695793a151 | |
| 
							
							
								 | 
						93ed909fff | |
| 
							
							
								 | 
						abe337e52d | |
| 
							
							
								 | 
						8ace224138 | 
| 
						 | 
					@ -13,6 +13,13 @@ Be cautious of copycat or coat-tailing sites that exploit the project's populari
 | 
				
			||||||
> [!NOTE]
 | 
					> [!NOTE]
 | 
				
			||||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
 | 
					All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## 2024-09-16
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Changed
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- **HomeBox LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/homebox-install.sh)
 | 
				
			||||||
 | 
					  - NEW Script
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## 2024-09-13
 | 
					## 2024-09-13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Changed
 | 
					### Changed
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,71 +0,0 @@
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					 | 
				
			||||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
 | 
					 | 
				
			||||||
# Copyright (c) 2021-2024 tteck
 | 
					 | 
				
			||||||
# Author: tteck (tteckster)
 | 
					 | 
				
			||||||
# Co-Author: remz1337
 | 
					 | 
				
			||||||
# License: MIT
 | 
					 | 
				
			||||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function header_info {
 | 
					 | 
				
			||||||
clear
 | 
					 | 
				
			||||||
cat <<"EOF"
 | 
					 | 
				
			||||||
   ______      ____      __                    
 | 
					 | 
				
			||||||
  / ____/___  / / /___ _/ /_  ____  _________ _
 | 
					 | 
				
			||||||
 / /   / __ \/ / / __ `/ __ \/ __ \/ ___/ __ `/
 | 
					 | 
				
			||||||
/ /___/ /_/ / / / /_/ / /_/ / /_/ / /  / /_/ / 
 | 
					 | 
				
			||||||
\____/\____/_/_/\__,_/_.___/\____/_/   \__,_/  
 | 
					 | 
				
			||||||
                                               
 | 
					 | 
				
			||||||
EOF
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
header_info
 | 
					 | 
				
			||||||
echo -e "Loading..."
 | 
					 | 
				
			||||||
APP="Collabora"
 | 
					 | 
				
			||||||
var_disk="12"
 | 
					 | 
				
			||||||
var_cpu="2"
 | 
					 | 
				
			||||||
var_ram="1024"
 | 
					 | 
				
			||||||
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
 | 
					 | 
				
			||||||
  if [[ ! -f /lib/systemd/system/coolwsd.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
					 | 
				
			||||||
  msg_info "Updating ${APP} LXC"
 | 
					 | 
				
			||||||
  apt-get update &>/dev/null
 | 
					 | 
				
			||||||
  apt-get -y upgrade &>/dev/null
 | 
					 | 
				
			||||||
  msg_ok "Updated ${APP} LXC"
 | 
					 | 
				
			||||||
  exit
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
start
 | 
					 | 
				
			||||||
build_container
 | 
					 | 
				
			||||||
description
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
msg_ok "Completed Successfully!\n"
 | 
					 | 
				
			||||||
echo -e "https://github.com/tteck/Proxmox/discussions/3651"
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,94 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
 | 
				
			||||||
 | 
					# Copyright (c) 2021-2024 tteck
 | 
				
			||||||
 | 
					# Author: tteck
 | 
				
			||||||
 | 
					# Co-Author: MickLesk (Canbiz)
 | 
				
			||||||
 | 
					# License: MIT
 | 
				
			||||||
 | 
					# https://github.com/tteck/Proxmox/raw/main/LICENSE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function header_info {
 | 
				
			||||||
 | 
					clear
 | 
				
			||||||
 | 
					cat <<"EOF"
 | 
				
			||||||
 | 
					    __  __                     ____            
 | 
				
			||||||
 | 
					   / / / /___  ____ ___  ___  / __ )____  _  __
 | 
				
			||||||
 | 
					  / /_/ / __ \/ __ `__ \/ _ \/ __  / __ \| |/_/
 | 
				
			||||||
 | 
					 / __  / /_/ / / / / / /  __/ /_/ / /_/ />  <
 | 
				
			||||||
 | 
					/_/ /_/\____/_/ /_/ /_/\___/_____/\____/_/|_|
 | 
				
			||||||
 | 
					                                                   
 | 
				
			||||||
 | 
					EOF
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					header_info
 | 
				
			||||||
 | 
					echo -e "Loading..."
 | 
				
			||||||
 | 
					APP="HomeBox"
 | 
				
			||||||
 | 
					var_disk="4"
 | 
				
			||||||
 | 
					var_cpu="1"
 | 
				
			||||||
 | 
					var_ram="1024"
 | 
				
			||||||
 | 
					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
 | 
				
			||||||
 | 
					if [[ ! -f /opt/homebox ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
				
			||||||
 | 
					if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
 | 
				
			||||||
 | 
					  read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
 | 
				
			||||||
 | 
					  [[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/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 ${APP}"
 | 
				
			||||||
 | 
					  systemctl stop homebox
 | 
				
			||||||
 | 
					  msg_ok "${APP} Stopped"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  msg_info "Updating ${APP} to ${RELEASE}"
 | 
				
			||||||
 | 
					  cd /opt
 | 
				
			||||||
 | 
					  rm -rf homebox_bak
 | 
				
			||||||
 | 
					  mv homebox homebox_bak
 | 
				
			||||||
 | 
					  wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt
 | 
				
			||||||
 | 
					  chmod +x /opt/homebox
 | 
				
			||||||
 | 
					  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
				
			||||||
 | 
					  msg_ok "Updated Homebox"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  msg_info "Starting ${APP}"
 | 
				
			||||||
 | 
					  systemctl start homebox
 | 
				
			||||||
 | 
					  msg_ok "Started ${APP}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  msg_ok "Updated Successfully"
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  msg_ok "No update required. ${APP} is already at ${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}:7745${CL} \n"
 | 
				
			||||||
| 
						 | 
					@ -54,7 +54,11 @@ function default_settings() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function update_script() {
 | 
					function update_script() {
 | 
				
			||||||
if [[ ! -d /etc/wireguard ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
					if [[ ! -d /etc/wireguard ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
				
			||||||
msg_error "Update WireGuard via apt"
 | 
					apt-get update
 | 
				
			||||||
 | 
					apt-get -y upgrade
 | 
				
			||||||
 | 
					sleep 2
 | 
				
			||||||
 | 
					cd /etc/wgdashboard/src
 | 
				
			||||||
 | 
					./wgd.sh update
 | 
				
			||||||
exit
 | 
					exit
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,44 +0,0 @@
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Copyright (c) 2021-2024 tteck
 | 
					 | 
				
			||||||
# Author: tteck (tteckster)
 | 
					 | 
				
			||||||
# Co-Author: remz1337
 | 
					 | 
				
			||||||
# License: MIT
 | 
					 | 
				
			||||||
# https://github.com/tteck/Proxmox/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
 | 
					 | 
				
			||||||
$STD apt-get install -y sudo
 | 
					 | 
				
			||||||
$STD apt-get install -y mc
 | 
					 | 
				
			||||||
msg_ok "Installed Dependencies"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
msg_info "Installing Collabora Online"
 | 
					 | 
				
			||||||
wget -q -O /usr/share/keyrings/collaboraonline-release-keyring.gpg https://collaboraoffice.com/downloads/gpg/collaboraonline-release-keyring.gpg
 | 
					 | 
				
			||||||
cat <<EOF >/etc/apt/sources.list.d/collaboraonline.sources
 | 
					 | 
				
			||||||
Types: deb
 | 
					 | 
				
			||||||
URIs: https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-deb
 | 
					 | 
				
			||||||
Suites: ./
 | 
					 | 
				
			||||||
Signed-By: /usr/share/keyrings/collaboraonline-release-keyring.gpg
 | 
					 | 
				
			||||||
EOF
 | 
					 | 
				
			||||||
$STD apt update 
 | 
					 | 
				
			||||||
$STD apt install -y coolwsd code-brand collaboraoffice*
 | 
					 | 
				
			||||||
sed -i 's|<enable type="bool" desc="Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment). If default is false, must first be compiled with SSL support to enable." default="true">true</enable>|<enable type="bool" desc="Controls whether SSL encryption between coolwsd and the network is enabled (do not disable for production deployment). If default is false, must first be compiled with SSL support to enable." default="true">false</enable>|g' /etc/coolwsd/coolwsd.xml
 | 
					 | 
				
			||||||
sed -i 's|<termination desc="Connection via proxy where coolwsd acts as working via https, but actually uses http." type="bool" default="true">false</termination>|<termination desc="Connection via proxy where coolwsd acts as working via https, but actually uses http." type="bool" default="true">true</termination>|g' /etc/coolwsd/coolwsd.xml
 | 
					 | 
				
			||||||
systemctl restart coolwsd
 | 
					 | 
				
			||||||
msg_ok "Installed Collabora Online"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
motd_ssh
 | 
					 | 
				
			||||||
customize
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
msg_info "Cleaning up"
 | 
					 | 
				
			||||||
$STD apt-get -y autoremove
 | 
					 | 
				
			||||||
$STD apt-get -y autoclean
 | 
					 | 
				
			||||||
msg_ok "Cleaned"
 | 
					 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,55 @@
 | 
				
			||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Copyright (c) 2021-2024 tteck
 | 
				
			||||||
 | 
					# Author: tteck
 | 
				
			||||||
 | 
					# Co-Author: MickLesk (Canbiz)
 | 
				
			||||||
 | 
					# License: MIT
 | 
				
			||||||
 | 
					# https://github.com/tteck/Proxmox/raw/main/LICENSE
 | 
				
			||||||
 | 
					# Source: https://github.com/sysadminsmedia/homebox
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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 \
 | 
				
			||||||
 | 
					  mc
 | 
				
			||||||
 | 
					msg_ok "Installed Dependencies"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					msg_info "Installing Homebox"
 | 
				
			||||||
 | 
					RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
				
			||||||
 | 
					wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt
 | 
				
			||||||
 | 
					chmod +x /opt/homebox
 | 
				
			||||||
 | 
					echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
 | 
				
			||||||
 | 
					msg_ok "Installed Homebox"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					msg_info "Creating Service"
 | 
				
			||||||
 | 
					cat <<EOF >/etc/systemd/system/homebox.service
 | 
				
			||||||
 | 
					[Unit]
 | 
				
			||||||
 | 
					Description=Start Homebox Service
 | 
				
			||||||
 | 
					After=network.target
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Service]
 | 
				
			||||||
 | 
					WorkingDirectory=/opt
 | 
				
			||||||
 | 
					ExecStart=/opt/homebox
 | 
				
			||||||
 | 
					Restart=on-failure
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Install]
 | 
				
			||||||
 | 
					WantedBy=multi-user.target
 | 
				
			||||||
 | 
					EOF
 | 
				
			||||||
 | 
					systemctl enable -q --now homebox.service
 | 
				
			||||||
 | 
					msg_ok "Created Service"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					motd_ssh
 | 
				
			||||||
 | 
					customize
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					msg_info "Cleaning up"
 | 
				
			||||||
 | 
					$STD apt-get -y autoremove
 | 
				
			||||||
 | 
					$STD apt-get -y autoclean
 | 
				
			||||||
 | 
					msg_ok "Cleaned"
 | 
				
			||||||
| 
						 | 
					@ -503,7 +503,7 @@ install_script() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
start() {
 | 
					start() {
 | 
				
			||||||
  if command -v pveversion >/dev/null 2>&1; then
 | 
					  if command -v pveversion >/dev/null 2>&1; then
 | 
				
			||||||
    if ! (whiptail --backtitle "Proxmox VE Helper Scripts" --title "${APP} LXC" --yesno "This will create a New ${APP} LXC. Proceed?" 10 58); then
 | 
					    if ! (whiptail --backtitle "Proxmox VE Helper Scripts" --title "${APP} LXC" --yesno "If this link isn't from https://tteck.github.io/Proxmox/, you may be exposing your system to malicious code. \n \n This will create a New ${APP} LXC. Proceed?" 10 62); then
 | 
				
			||||||
      clear
 | 
					      clear
 | 
				
			||||||
      echo -e "⚠  User exited script \n"
 | 
					      echo -e "⚠  User exited script \n"
 | 
				
			||||||
      exit
 | 
					      exit
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue