mirror of
				https://github.com/community-scripts/ProxmoxVE.git
				synced 2025-11-04 10:22:50 +00:00 
			
		
		
		
	Compare commits
	
		
			9 Commits
		
	
	
		
			2024-11-24
			...
			2024-11-25
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					a61c42ea4d | ||
| 
						 | 
					99b130d186 | ||
| 
						 | 
					df1c1ea873 | ||
| 
						 | 
					f6047ee9fb | ||
| 
						 | 
					ca819064f7 | ||
| 
						 | 
					e5d39ab555 | ||
| 
						 | 
					2e3d5f8b0c | ||
| 
						 | 
					0864afbbf3 | ||
| 
						 | 
					0cb071ce11 | 
							
								
								
									
										16
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -16,6 +16,22 @@ 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-25
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Remove Scrypted script [@MickLesk](https://github.com/MickLesk) ([#511](https://github.com/community-scripts/ProxmoxVE/pull/511))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix upload folder in listmonk LXC [@bvdberg01](https://github.com/bvdberg01) ([#515](https://github.com/community-scripts/ProxmoxVE/pull/515))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix website url in Zoraxy documentation [@miggi92](https://github.com/miggi92) ([#506](https://github.com/community-scripts/ProxmoxVE/pull/506))
 | 
			
		||||
 | 
			
		||||
## 2024-11-24
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 
 | 
			
		||||
@@ -61,11 +61,14 @@ function update_script() {
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating $APP LXC"
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop cps
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  cd /opt/kepubify
 | 
			
		||||
  rm kepubify-linux-64bit
 | 
			
		||||
  curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit &>/dev/null
 | 
			
		||||
  rm -rf kepubify-linux-64bit
 | 
			
		||||
  curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit
 | 
			
		||||
  chmod +x kepubify-linux-64bit
 | 
			
		||||
  menu_array=("1" "Enables gdrive as storage backend for your ebooks" OFF \
 | 
			
		||||
    "2" "Enables sending emails via a googlemail account without enabling insecure apps" OFF \
 | 
			
		||||
@@ -140,16 +143,19 @@ function update_script() {
 | 
			
		||||
      esac
 | 
			
		||||
    done
 | 
			
		||||
  fi
 | 
			
		||||
  if [ ! -z "$options" ] && [ ${#options[@]} -gt 0 ]; then
 | 
			
		||||
  if [ ${#options[@]} -gt 0 ]; then
 | 
			
		||||
    cps_options=$(IFS=, ; echo "${options[*]}")
 | 
			
		||||
    echo $cps_options > /opt/calibre-web/options.txt
 | 
			
		||||
    pip install --upgrade calibreweb[$cps_options]
 | 
			
		||||
    pip install --upgrade calibreweb[$cps_options] &>/dev/null
 | 
			
		||||
  else
 | 
			
		||||
    rm /opt/calibre-web/options.txt 2> /dev/null
 | 
			
		||||
    pip install --upgrade calibreweb
 | 
			
		||||
    rm -rf /opt/calibre-web/options.txt
 | 
			
		||||
    pip install --upgrade calibreweb &>/dev/null
 | 
			
		||||
  fi
 | 
			
		||||
  
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start cps
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -66,8 +66,12 @@ if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_v
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
  cd /opt
 | 
			
		||||
  mv /opt/listmonk/ /opt/listmonk-backup
 | 
			
		||||
  mkdir /opt/listmonk/
 | 
			
		||||
  wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
  tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk
 | 
			
		||||
  mv /opt/listmonk-backup/config.toml /opt/listmonk/config.toml
 | 
			
		||||
  mv /opt/listmonk-backup/uploads /opt/listmonk/uploads
 | 
			
		||||
  /opt/listmonk/listmonk --upgrade --yes --config /opt/listmonk/config.toml &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated $APP to v${RELEASE}"
 | 
			
		||||
@@ -78,6 +82,7 @@ if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_v
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning up"
 | 
			
		||||
  rm -rf "/opt/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
  rm -rf /opt/listmonk-backup/
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,74 +0,0 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   _____                       __           __
 | 
			
		||||
  / ___/____________  ______  / /____  ____/ /
 | 
			
		||||
  \__ \/ ___/ ___/ / / / __ \/ __/ _ \/ __  / 
 | 
			
		||||
 ___/ / /__/ /  / /_/ / /_/ / /_/  __/ /_/ /  
 | 
			
		||||
/____/\___/_/   \__, / .___/\__/\___/\__,_/   
 | 
			
		||||
               /____/_/                       
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
APP="Scrypted"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
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="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/scrypted.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 Successfully"
 | 
			
		||||
exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}https://${IP}:10443${CL} \n"
 | 
			
		||||
@@ -38,6 +38,7 @@ msg_ok "Set up PostgreSQL"
 | 
			
		||||
msg_info "Installing listmonk"
 | 
			
		||||
cd /opt
 | 
			
		||||
mkdir /opt/listmonk
 | 
			
		||||
mkdir /opt/listmonk/uploads
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk
 | 
			
		||||
 
 | 
			
		||||
@@ -1,136 +0,0 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# 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 (Patience)"
 | 
			
		||||
$STD apt-get -y install software-properties-common apt-utils
 | 
			
		||||
$STD apt-get -y update
 | 
			
		||||
$STD apt-get -y upgrade
 | 
			
		||||
$STD apt-get install -y avahi-daemon
 | 
			
		||||
$STD apt-get -y install \
 | 
			
		||||
    build-essential \
 | 
			
		||||
    gcc \
 | 
			
		||||
    gir1.2-gtk-3.0 \
 | 
			
		||||
    libcairo2-dev \
 | 
			
		||||
    libgirepository1.0-dev \
 | 
			
		||||
    libglib2.0-dev \
 | 
			
		||||
    libjpeg-dev \
 | 
			
		||||
    libgif-dev \
 | 
			
		||||
    libopenjp2-7 \
 | 
			
		||||
    libpango1.0-dev \
 | 
			
		||||
    librsvg2-dev \
 | 
			
		||||
    pkg-config \
 | 
			
		||||
    curl \
 | 
			
		||||
    sudo \
 | 
			
		||||
    mc \
 | 
			
		||||
    ca-certificates \
 | 
			
		||||
    gpg
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
msg_info "Setting Up Hardware Acceleration"
 | 
			
		||||
$STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools}
 | 
			
		||||
if [[ "$CTTYPE" == "0" ]]; then
 | 
			
		||||
  chgrp video /dev/dri
 | 
			
		||||
  chmod 755 /dev/dri
 | 
			
		||||
  chmod 660 /dev/dri/*
 | 
			
		||||
  $STD adduser $(id -u -n) video
 | 
			
		||||
  $STD adduser $(id -u -n) render
 | 
			
		||||
fi
 | 
			
		||||
msg_ok "Set Up Hardware Acceleration"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing GStreamer (Patience)"
 | 
			
		||||
$STD apt-get -y install \
 | 
			
		||||
    gstreamer1.0-tools \
 | 
			
		||||
    libgstreamer1.0-dev \
 | 
			
		||||
    libgstreamer-plugins-base1.0-dev \
 | 
			
		||||
    libgstreamer-plugins-bad1.0-dev \
 | 
			
		||||
    gstreamer1.0-plugins-base \
 | 
			
		||||
    gstreamer1.0-plugins-good \
 | 
			
		||||
    gstreamer1.0-plugins-bad \
 | 
			
		||||
    gstreamer1.0-plugins-ugly \
 | 
			
		||||
    gstreamer1.0-libav \
 | 
			
		||||
    gstreamer1.0-alsa
 | 
			
		||||
msg_ok "Installed GStreamer"
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
msg_ok "Installed Node.js"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating Python3"
 | 
			
		||||
$STD apt-get install -y \
 | 
			
		||||
  python3 \
 | 
			
		||||
  python3-dev \
 | 
			
		||||
  python3-pip
 | 
			
		||||
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
 | 
			
		||||
msg_ok "Updated Python3"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Python3 Dependencies"
 | 
			
		||||
$STD apt-get -y install \
 | 
			
		||||
    python3-gi \
 | 
			
		||||
    python3-gst-1.0 \
 | 
			
		||||
    python3-matplotlib \
 | 
			
		||||
    python3-numpy \
 | 
			
		||||
    python3-opencv \
 | 
			
		||||
    python3-pil \
 | 
			
		||||
    python3-setuptools \
 | 
			
		||||
    python3-skimage \
 | 
			
		||||
    python3-wheel
 | 
			
		||||
$STD python3 -m pip install --upgrade pip
 | 
			
		||||
$STD python3 -m pip install aiofiles debugpy typing_extensions typing
 | 
			
		||||
msg_ok "Installed Python3 Dependencies"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Scrypted"
 | 
			
		||||
$STD npx -y scrypted@latest install-server
 | 
			
		||||
 | 
			
		||||
if [[ "$CTTYPE" == "0" ]]; then
 | 
			
		||||
  sed -i -e 's/^sgx:x:104:$/render:x:104:root/' -e 's/^render:x:106:root$/sgx:x:106:/' /etc/group
 | 
			
		||||
else
 | 
			
		||||
  sed -i -e 's/^sgx:x:104:$/render:x:104:/' -e 's/^render:x:106:$/sgx:x:106:/' /etc/group
 | 
			
		||||
fi
 | 
			
		||||
msg_ok "Installed Scrypted"
 | 
			
		||||
 | 
			
		||||
msg_info "Creating Service"
 | 
			
		||||
cat <<EOF >/etc/systemd/system/scrypted.service
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=Scrypted service
 | 
			
		||||
After=network.target
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
User=root
 | 
			
		||||
Group=root
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/bin/npx -y scrypted serve
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
RestartSec=3
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
EOF
 | 
			
		||||
systemctl enable -q --now scrypted.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"
 | 
			
		||||
@@ -1,39 +0,0 @@
 | 
			
		||||
{
 | 
			
		||||
    "name": "Scrypted",
 | 
			
		||||
    "slug": "scrypted",
 | 
			
		||||
    "categories": [
 | 
			
		||||
        17
 | 
			
		||||
    ],
 | 
			
		||||
    "date_created": "2024-05-02",
 | 
			
		||||
    "type": "ct",
 | 
			
		||||
    "updateable": false,
 | 
			
		||||
    "privileged": false,
 | 
			
		||||
    "interface_port": "10443",
 | 
			
		||||
    "documentation": null,
 | 
			
		||||
    "website": "https://www.scrypted.app/",
 | 
			
		||||
    "logo": "https://www.scrypted.app/images/web_hi_res_512.png?raw=true",
 | 
			
		||||
    "description": "Scrypted focuses on providing a seamless experience for managing and utilizing cameras in a smart home setup. It offers features like camera management, event triggering, video and image storage, and integration with other smart home devices and services. Scrypted is designed to make it easy to set up and use cameras in a home automation system, providing a simple and user-friendly interface for monitoring and automating camera-related tasks.",
 | 
			
		||||
    "install_methods": [
 | 
			
		||||
        {
 | 
			
		||||
            "type": "default",
 | 
			
		||||
            "script": "ct/scrypted.sh",
 | 
			
		||||
            "resources": {
 | 
			
		||||
                "cpu": "2",
 | 
			
		||||
                "ram": "2048",
 | 
			
		||||
                "hdd": "8",
 | 
			
		||||
                "os": "debian",
 | 
			
		||||
                "version": "12"
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    ],
 | 
			
		||||
    "default_credentials": {
 | 
			
		||||
        "username": null,
 | 
			
		||||
        "password": null
 | 
			
		||||
    },
 | 
			
		||||
    "notes": [
 | 
			
		||||
        {
 | 
			
		||||
            "text": "If the LXC is created Privileged, the script will automatically set up USB passthrough.",
 | 
			
		||||
            "type": "warning"
 | 
			
		||||
        }
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
@@ -10,7 +10,7 @@
 | 
			
		||||
    "privileged": false,
 | 
			
		||||
    "interface_port": "8000",
 | 
			
		||||
    "documentation": null,
 | 
			
		||||
    "website": "https://zoraxy.arozos.com/",
 | 
			
		||||
    "website": "https://zoraxy.aroz.org/",
 | 
			
		||||
    "logo": "https://raw.githubusercontent.com/tobychui/zoraxy/refs/heads/main/docs/favicon.png",
 | 
			
		||||
    "description": "Zoraxy is an all in one homelab network routing solution.",
 | 
			
		||||
    "install_methods": [
 | 
			
		||||
@@ -31,4 +31,4 @@
 | 
			
		||||
        "password": null
 | 
			
		||||
    },
 | 
			
		||||
    "notes": []
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user