mirror of https://github.com/tteck/Proxmox.git
Merge remote-tracking branch 'origin/main'
# Conflicts: # ct/mafl.sh
This commit is contained in:
commit
94da462585
28
CHANGELOG.md
28
CHANGELOG.md
|
@ -10,6 +10,34 @@
|
||||||
- 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.
|
||||||
- 🚨 **The scripts in the repository will no longer provide support for Proxmox VE 7 starting from July 2024 (scripts will not execute on PVE7). Subsequent <a href='https://forum.proxmox.com/threads/proxmox-ve-support-lifecycle.35755/' target='_blank' rel='noopener noreferrer'>Proxmox VE - Support Lifecycle</a>**
|
- 🚨 **The scripts in the repository will no longer provide support for Proxmox VE 7 starting from July 2024 (scripts will not execute on PVE7). Subsequent <a href='https://forum.proxmox.com/threads/proxmox-ve-support-lifecycle.35755/' target='_blank' rel='noopener noreferrer'>Proxmox VE - Support Lifecycle</a>**
|
||||||
|
|
||||||
|
## 2024-03-13
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- **FlowiseAI LXC**
|
||||||
|
- NEW Script
|
||||||
|
|
||||||
|
## 2024-03-11
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- **Wastebin LXC**
|
||||||
|
- NEW Script
|
||||||
|
|
||||||
|
## 2024-03-08
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- **Proxmox VE Post Install**
|
||||||
|
- Requires Proxmox Virtual Environment Version 8.1.1 or later.
|
||||||
|
|
||||||
|
## 2024-02-26
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- **Mafl LXC**
|
||||||
|
- NEW Script
|
||||||
|
|
||||||
## 2024-02-23
|
## 2024-02-23
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
|
@ -34,3 +34,5 @@
|
||||||
[iGPU Transcoding In Proxmox with Jellyfin](https://www.youtube.com/watch?v=XAa_qpNmzZs)
|
[iGPU Transcoding In Proxmox with Jellyfin](https://www.youtube.com/watch?v=XAa_qpNmzZs)
|
||||||
|
|
||||||
[Proxmox + NetData](<https://dbt3ch.com/books/proxmox-netdata-for-better-insights-and-notifications/page/proxmox-netdata-for-better-insights-and-notifications>)
|
[Proxmox + NetData](<https://dbt3ch.com/books/proxmox-netdata-for-better-insights-and-notifications/page/proxmox-netdata-for-better-insights-and-notifications>)
|
||||||
|
|
||||||
|
[Proxmox Homelab Series](<https://blog.kye.dev/proxmox-series>)
|
||||||
|
|
|
@ -56,8 +56,13 @@ function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -f /etc/systemd/system/changedetection.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -f /etc/systemd/system/changedetection.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
msg_info "Updating ${APP} LXC"
|
msg_info "Updating ${APP} LXC"
|
||||||
|
if ! dpkg -s libjpeg-dev >/dev/null 2>&1; then
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y libjpeg-dev
|
||||||
|
fi
|
||||||
pip3 install changedetection.io --upgrade &>/dev/null
|
pip3 install changedetection.io --upgrade &>/dev/null
|
||||||
pip3 install playwright --upgrade &>/dev/null
|
pip3 install playwright --upgrade &>/dev/null
|
||||||
|
systemctl restart changedetection
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
10
ct/dashy.sh
10
ct/dashy.sh
|
@ -54,18 +54,20 @@ function default_settings() {
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -d /dashy/public/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -d /opt/dashy/public/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
|
msg_error "There is currently no update path available."
|
||||||
|
exit
|
||||||
msg_info "Stopping ${APP}"
|
msg_info "Stopping ${APP}"
|
||||||
systemctl stop dashy
|
systemctl stop dashy
|
||||||
msg_ok "Stopped ${APP}"
|
msg_ok "Stopped ${APP}"
|
||||||
|
|
||||||
msg_info "Backing up conf.yml"
|
msg_info "Backing up conf.yml"
|
||||||
cd ~
|
cd ~
|
||||||
cp -R /dashy/public/conf.yml conf.yml
|
cp -R /opt/dashy/public/conf.yml conf.yml
|
||||||
msg_ok "Backed up conf.yml"
|
msg_ok "Backed up conf.yml"
|
||||||
|
|
||||||
msg_info "Updating Dashy"
|
msg_info "Updating Dashy"
|
||||||
cd /dashy
|
cd /opt/dashy
|
||||||
git merge &>/dev/null
|
git merge &>/dev/null
|
||||||
git pull origin master &>/dev/null
|
git pull origin master &>/dev/null
|
||||||
yarn &>/dev/null
|
yarn &>/dev/null
|
||||||
|
@ -74,7 +76,7 @@ msg_ok "Updated Dashy"
|
||||||
|
|
||||||
msg_info "Restoring conf.yml"
|
msg_info "Restoring conf.yml"
|
||||||
cd ~
|
cd ~
|
||||||
cp -R conf.yml /dashy/public
|
cp -R conf.yml /opt/dashy/public
|
||||||
msg_ok "Restored conf.yml"
|
msg_ok "Restored conf.yml"
|
||||||
|
|
||||||
msg_info "Cleaning"
|
msg_info "Cleaning"
|
||||||
|
|
|
@ -0,0 +1,72 @@
|
||||||
|
#!/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)
|
||||||
|
# License: MIT
|
||||||
|
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||||
|
|
||||||
|
function header_info {
|
||||||
|
clear
|
||||||
|
cat <<"EOF"
|
||||||
|
________ _ ___ ____
|
||||||
|
/ ____/ /___ _ __(_)_______ / | / _/
|
||||||
|
/ /_ / / __ \ | /| / / / ___/ _ \/ /| | / /
|
||||||
|
/ __/ / / /_/ / |/ |/ / (__ ) __/ ___ |_/ /
|
||||||
|
/_/ /_/\____/|__/|__/_/____/\___/_/ |_/___/
|
||||||
|
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
header_info
|
||||||
|
echo -e "Loading..."
|
||||||
|
APP="FlowiseAI"
|
||||||
|
var_disk="10"
|
||||||
|
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
|
||||||
|
if [[ ! -f /etc/systemd/system/flowise.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
|
msg_info "Updating ${APP}"
|
||||||
|
systemctl stop flowise
|
||||||
|
npm install -g flowise --upgrade
|
||||||
|
systemctl start flowise
|
||||||
|
msg_ok "Updated ${APP}"
|
||||||
|
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}:3000${CL} \n"
|
|
@ -56,9 +56,6 @@ function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
msg_info "Updating ${APP}"
|
msg_info "Updating ${APP}"
|
||||||
apt-key del 4E40DDF6D76E284A4A6780E48C8C34C524098CB6
|
|
||||||
wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
|
|
||||||
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | tee /etc/apt/sources.list.d/grafana.list
|
|
||||||
apt-get update &>/dev/null
|
apt-get update &>/dev/null
|
||||||
apt-get -y upgrade &>/dev/null
|
apt-get -y upgrade &>/dev/null
|
||||||
msg_ok "Updated Successfully"
|
msg_ok "Updated Successfully"
|
||||||
|
|
14
ct/mafl.sh
14
ct/mafl.sh
|
@ -55,19 +55,7 @@ function default_settings() {
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -d /opt/mafl ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -d /opt/mafl ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
|
msg_error "There is currently no update path available."
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
|
||||||
msg_info "Updating Mafl to v${RELEASE} (Patience)"
|
|
||||||
systemctl stop mafl
|
|
||||||
wget -q https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz
|
|
||||||
tar -xzf v${RELEASE}.tar.gz
|
|
||||||
cp -r mafl-${RELEASE}/* /opt/mafl/
|
|
||||||
rm -rf mafl-${RELEASE}
|
|
||||||
cd /opt/mafl
|
|
||||||
yarn install
|
|
||||||
yarn build
|
|
||||||
systemctl start mafl
|
|
||||||
msg_ok "Updated Mafl to v${RELEASE}"
|
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ EOF
|
||||||
header_info
|
header_info
|
||||||
echo -e "Loading..."
|
echo -e "Loading..."
|
||||||
APP="n8n"
|
APP="n8n"
|
||||||
var_disk="3"
|
var_disk="6"
|
||||||
var_cpu="2"
|
var_cpu="2"
|
||||||
var_ram="2048"
|
var_ram="2048"
|
||||||
var_os="debian"
|
var_os="debian"
|
||||||
|
|
|
@ -55,7 +55,7 @@ function default_settings() {
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -d /opt/tplink ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -d /opt/tplink ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
latest_url=$(curl -fsSL "https://www.tp-link.com/us/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
latest_url=$(curl -fsSL "https://www.tp-link.com/en/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
||||||
latest_version=$(basename "${latest_url}")
|
latest_version=$(basename "${latest_url}")
|
||||||
if [ -z "${latest_version}" ]; then
|
if [ -z "${latest_version}" ]; then
|
||||||
msg_error "It seems that the server (tp-link.com) might be down. Please try again at a later time."
|
msg_error "It seems that the server (tp-link.com) might be down. Please try again at a later time."
|
||||||
|
|
|
@ -55,10 +55,7 @@ function default_settings() {
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -f /etc/systemd/system/prometheus.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
if [[ ! -f /etc/systemd/system/prometheus.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
msg_info "Updating ${APP} LXC"
|
msg_error "There is currently no update path available."
|
||||||
apt-get update &>/dev/null
|
|
||||||
apt-get -y upgrade &>/dev/null
|
|
||||||
msg_ok "Updated Successfully"
|
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -55,23 +55,22 @@ function default_settings() {
|
||||||
|
|
||||||
function update_script() {
|
function update_script() {
|
||||||
header_info
|
header_info
|
||||||
if [[ ! -d /opt/tandoor ]]; then
|
if [[ ! -d /opt/tandoor ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||||
msg_error "No ${APP} Installation Found!";
|
|
||||||
exit;
|
|
||||||
fi
|
|
||||||
msg_info "Updating ${APP} LXC"
|
|
||||||
if cd /opt/tandoor && git pull | grep -q 'Already up to date'; then
|
if cd /opt/tandoor && git pull | grep -q 'Already up to date'; then
|
||||||
msg_error "There is currently no update path available."
|
msg_ok "There is currently no update available."
|
||||||
else
|
else
|
||||||
|
msg_info "Updating ${APP} (Patience)"
|
||||||
export $(cat /opt/tandoor/.env | grep "^[^#]" | xargs)
|
export $(cat /opt/tandoor/.env | grep "^[^#]" | xargs)
|
||||||
/opt/tandoor/bin/pip3 install -r requirements.txt >/dev/null 2>&1
|
cd /opt/tandoor/
|
||||||
/opt/tandoor/bin/python3 manage.py migrate >/dev/null 2>&1
|
pip3 install -r requirements.txt >/dev/null 2>&1
|
||||||
/opt/tandoor/bin/python3 manage.py collectstatic --no-input >/dev/null 2>&1
|
/usr/bin/python3 /opt/tandoor/manage.py migrate >/dev/null 2>&1
|
||||||
/opt/tandoor/bin/python3 manage.py collectstatic_js_reverse >/dev/null 2>&1
|
/usr/bin/python3 /opt/tandoor/manage.py collectstatic --no-input >/dev/null 2>&1
|
||||||
|
/usr/bin/python3 /opt/tandoor/manage.py collectstatic_js_reverse >/dev/null 2>&1
|
||||||
cd /opt/tandoor/vue
|
cd /opt/tandoor/vue
|
||||||
yarn install >/dev/null 2>&1
|
yarn install >/dev/null 2>&1
|
||||||
yarn build >/dev/null 2>&1
|
yarn build >/dev/null 2>&1
|
||||||
sudo systemctl restart gunicorn_tandoor
|
systemctl restart gunicorn_tandoor
|
||||||
|
msg_ok "Updated ${APP}"
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,107 @@
|
||||||
|
#!/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
|
||||||
|
# Source: https://github.com/matze/wastebin
|
||||||
|
|
||||||
|
|
||||||
|
function header_info {
|
||||||
|
clear
|
||||||
|
cat <<"EOF"
|
||||||
|
_ __ __ __ _
|
||||||
|
| | / /___ ______/ /____ / /_ (_)___
|
||||||
|
| | /| / / __ `/ ___/ __/ _ \/ __ \/ / __ \
|
||||||
|
| |/ |/ / /_/ (__ ) /_/ __/ /_/ / / / / /
|
||||||
|
|__/|__/\__,_/____/\__/\___/_.___/_/_/ /_/
|
||||||
|
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
header_info
|
||||||
|
echo -e "Loading..."
|
||||||
|
APP="Wastebin"
|
||||||
|
var_disk="4"
|
||||||
|
var_cpu="4"
|
||||||
|
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
|
||||||
|
if [[ ! -d /opt/wastebin ]]; 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
|
||||||
|
msg_info "Stopping Wastebin"
|
||||||
|
systemctl stop wastebin
|
||||||
|
msg_ok "Wastebin Stopped"
|
||||||
|
|
||||||
|
msg_info "Updating Wastebin"
|
||||||
|
RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
|
cd /opt
|
||||||
|
if [ -d wastebin_bak ]; then
|
||||||
|
rm -rf wastebin_bak
|
||||||
|
fi
|
||||||
|
mv wastebin wastebin_bak
|
||||||
|
wget -q "https://github.com/matze/wastebin/archive/refs/tags/${RELEASE}.zip"
|
||||||
|
unzip -q ${RELEASE}.zip
|
||||||
|
mv wastebin-${RELEASE} /opt/wastebin
|
||||||
|
cd /opt/wastebin
|
||||||
|
cargo update -q
|
||||||
|
cargo build -q --release
|
||||||
|
msg_ok "Updated Wastebin"
|
||||||
|
|
||||||
|
msg_info "Starting Wastebin"
|
||||||
|
systemctl start wastebin
|
||||||
|
msg_ok "Started Wastebin"
|
||||||
|
|
||||||
|
msg_info "Cleaning Up"
|
||||||
|
cd /opt
|
||||||
|
rm -R ${RELEASE}.zip
|
||||||
|
rm -R wastebin_bak
|
||||||
|
msg_ok "Cleaned"
|
||||||
|
msg_ok "Updated Successfully"
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
start
|
||||||
|
build_container
|
||||||
|
description
|
||||||
|
|
||||||
|
msg_info "Setting Container to Normal Resources"
|
||||||
|
pct set $CTID -cores 2
|
||||||
|
msg_ok "Set Container to Normal Resources"
|
||||||
|
|
||||||
|
msg_ok "Completed Successfully!\n"
|
||||||
|
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||||
|
${BL}http://${IP}:8088${CL} \n"
|
|
@ -22,6 +22,7 @@ $STD apt-get install -y \
|
||||||
build-essential \
|
build-essential \
|
||||||
dumb-init \
|
dumb-init \
|
||||||
gconf-service \
|
gconf-service \
|
||||||
|
libjpeg-dev \
|
||||||
libatk-bridge2.0-0 \
|
libatk-bridge2.0-0 \
|
||||||
libasound2 \
|
libasound2 \
|
||||||
libatk1.0-0 \
|
libatk1.0-0 \
|
||||||
|
|
|
@ -17,7 +17,6 @@ msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y curl
|
$STD apt-get install -y curl
|
||||||
$STD apt-get install -y sudo
|
$STD apt-get install -y sudo
|
||||||
$STD apt-get install -y mc
|
$STD apt-get install -y mc
|
||||||
$STD apt-get install -y git
|
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing Node.js (Patience)"
|
msg_info "Installing Node.js (Patience)"
|
||||||
|
@ -35,10 +34,12 @@ ln -sf /usr/local/bin/yarn /usr/bin/yarn
|
||||||
msg_ok "Installed Yarn"
|
msg_ok "Installed Yarn"
|
||||||
|
|
||||||
msg_info "Installing Dashy (Patience)"
|
msg_info "Installing Dashy (Patience)"
|
||||||
$STD git clone https://github.com/Lissy93/dashy.git
|
mkdir -p /opt/dashy
|
||||||
cd /dashy
|
#RELEASE=$(curl -s https://api.github.com/repos/Lissy93/dashy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
|
#wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1
|
||||||
|
wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/2.1.1.tar.gz | tar -xz -C /opt/dashy --strip-components=1
|
||||||
|
cd /opt/dashy
|
||||||
$STD yarn
|
$STD yarn
|
||||||
export NODE_OPTIONS=--max-old-space-size=1000
|
|
||||||
$STD yarn build
|
$STD yarn build
|
||||||
msg_ok "Installed Dashy"
|
msg_ok "Installed Dashy"
|
||||||
|
|
||||||
|
@ -49,7 +50,7 @@ Description=dashy
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
WorkingDirectory=/dashy
|
WorkingDirectory=/opt/dashy
|
||||||
ExecStart=/usr/bin/yarn start
|
ExecStart=/usr/bin/yarn start
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
|
|
@ -26,8 +26,9 @@ echo "deb [arch=amd64] http://phoscon.de/apt/deconz $VERSION main" >/etc/apt/sou
|
||||||
msg_ok "Setup Phoscon Repository"
|
msg_ok "Setup Phoscon Repository"
|
||||||
|
|
||||||
msg_info "Installing deConz"
|
msg_info "Installing deConz"
|
||||||
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
libssl=$(curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/" | grep -o 'libssl1\.1_1\.1\.1f-1ubuntu2\.2[^"]*amd64\.deb' | head -n1)
|
||||||
$STD dpkg -i libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl
|
||||||
|
$STD dpkg -i $libssl
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
$STD apt-get install -y deconz
|
$STD apt-get install -y deconz
|
||||||
msg_ok "Installed deConz"
|
msg_ok "Installed deConz"
|
||||||
|
@ -56,7 +57,7 @@ motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
rm -rf libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
rm -rf $libssl
|
||||||
$STD apt-get autoremove
|
$STD apt-get autoremove
|
||||||
$STD apt-get autoclean
|
$STD apt-get autoclean
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright (c) 2021-2024 tteck
|
||||||
|
# Author: tteck (tteckster)
|
||||||
|
# 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
|
||||||
|
$STD apt-get install -y gpg
|
||||||
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Installing Node.js"
|
||||||
|
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
|
||||||
|
$STD apt-get update
|
||||||
|
$STD apt-get install -y nodejs
|
||||||
|
msg_ok "Installed Node.js"
|
||||||
|
|
||||||
|
msg_info "Installing FlowiseAI (Patience)"
|
||||||
|
$STD npm install -g flowise
|
||||||
|
mkdir -p /opt/flowiseai
|
||||||
|
wget -q https://raw.githubusercontent.com/FlowiseAI/Flowise/main/packages/server/.env.example -O /opt/flowiseai/.env
|
||||||
|
msg_ok "Installed FlowiseAI"
|
||||||
|
|
||||||
|
msg_info "Creating Service"
|
||||||
|
cat <<EOF >/etc/systemd/system/flowise.service
|
||||||
|
[Unit]
|
||||||
|
Description=FlowiseAI
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
EnvironmentFile=/opt/flowiseai/.env
|
||||||
|
ExecStart=npx flowise start
|
||||||
|
Restart=always
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
systemctl enable -q --now flowise.service
|
||||||
|
msg_ok "Created Service"
|
||||||
|
|
||||||
|
motd_ssh
|
||||||
|
customize
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get autoremove
|
||||||
|
$STD apt-get autoclean
|
||||||
|
msg_ok "Cleaned"
|
|
@ -42,9 +42,9 @@ $STD apt-get install -y \
|
||||||
libatlas-base-dev
|
libatlas-base-dev
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
RELEASE=$(curl -s https://www.python.org/downloads/ | grep -oP 'Download Python \K\d+\.\d+\.\d+' | head -1)
|
#RELEASE=$(curl -s https://www.python.org/downloads/ | grep -oP 'Download Python \K\d+\.\d+\.\d+' | head -1)
|
||||||
|
|
||||||
msg_info "Compiling Python ${RELEASE} from its source (Additional Patience)"
|
msg_info "Compiling Python 3.12 from its source (Additional Patience)"
|
||||||
$STD apt-get remove -y python3
|
$STD apt-get remove -y python3
|
||||||
$STD apt-get install -y \
|
$STD apt-get install -y \
|
||||||
checkinstall \
|
checkinstall \
|
||||||
|
@ -57,15 +57,16 @@ $STD apt-get install -y \
|
||||||
libc6-dev \
|
libc6-dev \
|
||||||
libbz2-dev
|
libbz2-dev
|
||||||
|
|
||||||
wget -qO- https://www.python.org/ftp/python/${RELEASE}/Python-${RELEASE}.tar.xz | tar -xJ
|
#wget -qO- https://www.python.org/ftp/python/${RELEASE}/Python-${RELEASE}.tar.xz | tar -xJ
|
||||||
cd Python-${RELEASE}
|
wget -qO- https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tar.xz | tar -xJ
|
||||||
|
cd Python-3.12.2
|
||||||
$STD ./configure --enable-optimizations
|
$STD ./configure --enable-optimizations
|
||||||
$STD make -j $(nproc)
|
$STD make -j $(nproc)
|
||||||
$STD make altinstall
|
$STD make altinstall
|
||||||
$STD update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.12 1
|
$STD update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.12 1
|
||||||
cd ~
|
cd ~
|
||||||
rm -rf Python-${RELEASE}
|
rm -rf Python-3.12.2
|
||||||
msg_ok "Installed Python ${RELEASE}"
|
msg_ok "Installed Python 3.12"
|
||||||
|
|
||||||
msg_info "Installing Home Assistant-Core"
|
msg_info "Installing Home Assistant-Core"
|
||||||
mkdir /srv/homeassistant
|
mkdir /srv/homeassistant
|
||||||
|
|
|
@ -27,15 +27,6 @@ sed -i 's/^# *\(port *=.*\)/\1/' /etc/mysql/my.cnf
|
||||||
sed -i 's/^bind-address/#bind-address/g' /etc/mysql/mariadb.conf.d/50-server.cnf
|
sed -i 's/^bind-address/#bind-address/g' /etc/mysql/mariadb.conf.d/50-server.cnf
|
||||||
msg_ok "Installed MariaDB"
|
msg_ok "Installed MariaDB"
|
||||||
|
|
||||||
read -r -p "Would you like to add Adminer? <y/N> " prompt
|
|
||||||
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
|
|
||||||
msg_info "Installing Adminer"
|
|
||||||
$STD apt install -y adminer
|
|
||||||
$STD a2enconf adminer
|
|
||||||
systemctl reload apache2
|
|
||||||
msg_ok "Installed Adminer"
|
|
||||||
fi
|
|
||||||
|
|
||||||
motd_ssh
|
motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
|
|
|
@ -17,15 +17,10 @@ msg_info "Installing Dependencies"
|
||||||
$STD apt-get install -y curl
|
$STD apt-get install -y curl
|
||||||
$STD apt-get install -y sudo
|
$STD apt-get install -y sudo
|
||||||
$STD apt-get install -y mc
|
$STD apt-get install -y mc
|
||||||
|
$STD apt-get install -y gpg
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing Mosquitto MQTT Broker"
|
msg_info "Installing Mosquitto MQTT Broker"
|
||||||
if [ "$PCT_OSTYPE" == "debian" ]; then
|
|
||||||
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
|
|
||||||
wget -qO- http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key >/etc/apt/trusted.gpg.d/mosquitto-repo.asc
|
|
||||||
wget -qO /etc/apt/sources.list.d/mosquitto-${VERSION}.list http://repo.mosquitto.org/debian/mosquitto-${VERSION}.list
|
|
||||||
$STD apt-get update
|
|
||||||
fi
|
|
||||||
$STD apt-get -y install mosquitto
|
$STD apt-get -y install mosquitto
|
||||||
$STD apt-get -y install mosquitto-clients
|
$STD apt-get -y install mosquitto-clients
|
||||||
cat <<EOF >/etc/mosquitto/conf.d/default.conf
|
cat <<EOF >/etc/mosquitto/conf.d/default.conf
|
||||||
|
|
|
@ -44,6 +44,7 @@ Description=n8n
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
Type=simple
|
Type=simple
|
||||||
|
Environment="N8N_SECURE_COOKIE=false"
|
||||||
ExecStart=n8n start
|
ExecStart=n8n start
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
|
|
@ -61,7 +61,7 @@ ln -sf /root/.nvm/versions/node/v16.20.2/bin/node /usr/bin/node
|
||||||
msg_ok "Installed Node.js"
|
msg_ok "Installed Node.js"
|
||||||
|
|
||||||
msg_info "Installing pnpm"
|
msg_info "Installing pnpm"
|
||||||
$STD npm install -g pnpm
|
$STD npm install -g pnpm@8.15
|
||||||
msg_ok "Installed pnpm"
|
msg_ok "Installed pnpm"
|
||||||
|
|
||||||
RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
|
RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
|
||||||
|
|
|
@ -30,13 +30,14 @@ $STD apt-get -y install zulu8-jdk
|
||||||
msg_ok "Installed Azul Zulu"
|
msg_ok "Installed Azul Zulu"
|
||||||
|
|
||||||
msg_info "Installing MongoDB"
|
msg_info "Installing MongoDB"
|
||||||
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
libssl=$(curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/" | grep -o 'libssl1\.1_1\.1\.1f-1ubuntu2\.2[^"]*amd64\.deb' | head -n1)
|
||||||
$STD dpkg -i libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl
|
||||||
|
$STD dpkg -i $libssl
|
||||||
wget -qL https://repo.mongodb.org/apt/ubuntu/dists/bionic/mongodb-org/3.6/multiverse/binary-amd64/mongodb-org-server_3.6.23_amd64.deb
|
wget -qL https://repo.mongodb.org/apt/ubuntu/dists/bionic/mongodb-org/3.6/multiverse/binary-amd64/mongodb-org-server_3.6.23_amd64.deb
|
||||||
$STD dpkg -i mongodb-org-server_3.6.23_amd64.deb
|
$STD dpkg -i mongodb-org-server_3.6.23_amd64.deb
|
||||||
msg_ok "Installed MongoDB"
|
msg_ok "Installed MongoDB"
|
||||||
|
|
||||||
latest_url=$(curl -fsSL "https://www.tp-link.com/us/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
latest_url=$(curl -fsSL "https://www.tp-link.com/en/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
||||||
latest_version=$(basename "$latest_url")
|
latest_version=$(basename "$latest_url")
|
||||||
|
|
||||||
msg_info "Installing Omada Controller"
|
msg_info "Installing Omada Controller"
|
||||||
|
@ -48,7 +49,7 @@ motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
rm -rf ${latest_version} mongodb-org-server_3.6.23_amd64.deb zulu-repo_1.0.0-3_all.deb libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
rm -rf ${latest_version} mongodb-org-server_3.6.23_amd64.deb zulu-repo_1.0.0-3_all.deb $libssl
|
||||||
$STD apt-get autoremove
|
$STD apt-get autoremove
|
||||||
$STD apt-get autoclean
|
$STD apt-get autoclean
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|
|
@ -25,7 +25,10 @@ $STD apt-get install -y libjpeg-dev
|
||||||
$STD apt-get install -y libtiff-dev
|
$STD apt-get install -y libtiff-dev
|
||||||
$STD apt-get install -y imagemagick
|
$STD apt-get install -y imagemagick
|
||||||
$STD apt-get install -y darktable
|
$STD apt-get install -y darktable
|
||||||
|
$STD apt-get install -y rawtherapee
|
||||||
|
|
||||||
|
echo 'export PATH=/usr/local:$PATH' >>~/.bashrc
|
||||||
|
export PATH=/usr/local:$PATH
|
||||||
msg_ok "Installed Dependencies"
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
msg_info "Installing PhotoPrism (Patience)"
|
msg_info "Installing PhotoPrism (Patience)"
|
||||||
|
|
|
@ -127,7 +127,6 @@ server {
|
||||||
location / {
|
location / {
|
||||||
proxy_set_header Host $http_host;
|
proxy_set_header Host $http_host;
|
||||||
proxy_pass http://unix:/opt/tandoor/tandoor.sock;
|
proxy_pass http://unix:/opt/tandoor/tandoor.sock;
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
|
@ -29,8 +29,9 @@ $STD apt-get install -y temurin-17-jre
|
||||||
msg_ok "Installed OpenJDK"
|
msg_ok "Installed OpenJDK"
|
||||||
|
|
||||||
msg_info "Installing MongoDB"
|
msg_info "Installing MongoDB"
|
||||||
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
libssl=$(curl -fsSL "http://security.ubuntu.com/ubuntu/pool/main/o/openssl/" | grep -o 'libssl1\.1_1\.1\.1f-1ubuntu2\.2[^"]*amd64\.deb' | head -n1)
|
||||||
$STD dpkg -i libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
wget -qL http://security.ubuntu.com/ubuntu/pool/main/o/openssl/$libssl
|
||||||
|
$STD dpkg -i $libssl
|
||||||
wget -qO- https://pgp.mongodb.com/server-4.4.asc | gpg --dearmor >/etc/apt/trusted.gpg.d/mongodb-server-4.4.gpg
|
wget -qO- https://pgp.mongodb.com/server-4.4.asc | gpg --dearmor >/etc/apt/trusted.gpg.d/mongodb-server-4.4.gpg
|
||||||
echo 'deb [ arch=amd64 signed-by=/etc/apt/trusted.gpg.d/mongodb-server-4.4.gpg ] https://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main' >/etc/apt/sources.list.d/mongodb-org-4.4.list
|
echo 'deb [ arch=amd64 signed-by=/etc/apt/trusted.gpg.d/mongodb-server-4.4.gpg ] https://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main' >/etc/apt/sources.list.d/mongodb-org-4.4.list
|
||||||
$STD apt-get update
|
$STD apt-get update
|
||||||
|
@ -48,7 +49,7 @@ motd_ssh
|
||||||
customize
|
customize
|
||||||
|
|
||||||
msg_info "Cleaning up"
|
msg_info "Cleaning up"
|
||||||
rm -rf libssl1.1_1.1.1f-1ubuntu2.21_amd64.deb
|
rm -rf $libssl
|
||||||
$STD apt-get autoremove
|
$STD apt-get autoremove
|
||||||
$STD apt-get autoclean
|
$STD apt-get autoclean
|
||||||
msg_ok "Cleaned"
|
msg_ok "Cleaned"
|
||||||
|
|
|
@ -0,0 +1,67 @@
|
||||||
|
#!/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/matze/wastebin
|
||||||
|
|
||||||
|
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 install -y --no-install-recommends \
|
||||||
|
build-essential \
|
||||||
|
unzip \
|
||||||
|
curl \
|
||||||
|
sudo \
|
||||||
|
git \
|
||||||
|
make \
|
||||||
|
mc
|
||||||
|
msg_ok "Installed Dependencies"
|
||||||
|
|
||||||
|
msg_info "Installing Rust (Patience)"
|
||||||
|
$STD bash <(curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs) -y
|
||||||
|
source ~/.cargo/env
|
||||||
|
msg_ok "Installed Rust"
|
||||||
|
|
||||||
|
msg_info "Installing Wastebin (Patience)"
|
||||||
|
RELEASE=$(curl -s https://api.github.com/repos/matze/wastebin/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||||
|
wget -q "https://github.com/matze/wastebin/archive/refs/tags/${RELEASE}.zip"
|
||||||
|
unzip -q ${RELEASE}.zip
|
||||||
|
mv wastebin-${RELEASE} /opt/wastebin
|
||||||
|
rm -R ${RELEASE}.zip
|
||||||
|
cd /opt/wastebin
|
||||||
|
cargo build -q --release
|
||||||
|
msg_ok "Installed Wastebin"
|
||||||
|
|
||||||
|
msg_info "Creating Service"
|
||||||
|
cat <<EOF >/etc/systemd/system/wastebin.service
|
||||||
|
[Unit]
|
||||||
|
Description=Start Wastebin Service
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=root
|
||||||
|
WorkingDirectory=/opt/wastebin
|
||||||
|
ExecStart=/root/.cargo/bin/cargo run --release --quiet
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
systemctl enable -q --now wastebin.service
|
||||||
|
msg_ok "Created Service"
|
||||||
|
|
||||||
|
motd_ssh
|
||||||
|
customize
|
||||||
|
|
||||||
|
msg_info "Cleaning up"
|
||||||
|
$STD apt-get autoremove
|
||||||
|
$STD apt-get autoclean
|
||||||
|
msg_ok "Cleaned"
|
|
@ -205,7 +205,7 @@ advanced_settings() {
|
||||||
if var_version=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "UBUNTU VERSION" --radiolist "Choose Version" 10 58 3 \
|
if var_version=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "UBUNTU VERSION" --radiolist "Choose Version" 10 58 3 \
|
||||||
"20.04" "Focal" OFF \
|
"20.04" "Focal" OFF \
|
||||||
"22.04" "Jammy" OFF \
|
"22.04" "Jammy" OFF \
|
||||||
"23.04" "Lunar" OFF \
|
"23.10" "Mantic" OFF \
|
||||||
3>&1 1>&2 2>&3); then
|
3>&1 1>&2 2>&3); then
|
||||||
if [ -n "$var_version" ]; then
|
if [ -n "$var_version" ]; then
|
||||||
echo -e "${DGN}Using $var_os Version: ${BGN}$var_version${CL}"
|
echo -e "${DGN}Using $var_os Version: ${BGN}$var_version${CL}"
|
||||||
|
|
|
@ -47,6 +47,7 @@ function error_exit() {
|
||||||
clear
|
clear
|
||||||
header_info
|
header_info
|
||||||
if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Install on Proxmox "; exit; fi
|
if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Install on Proxmox "; exit; fi
|
||||||
|
if [ -e /etc/alpine-release ]; then echo -e "⚠️ Can't Install on Alpine"; exit; fi
|
||||||
while true; do
|
while true; do
|
||||||
read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn
|
read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn
|
||||||
case $yn in
|
case $yn in
|
||||||
|
|
|
@ -83,6 +83,10 @@ whiptail --backtitle "Proxmox VE Helper Scripts" --defaultno --title "$TITLE" --
|
||||||
$CTID_FROM (${CTID_FROM_HOSTNAME}) -> $CTID_TO (${CTID_TO_HOSTNAME})
|
$CTID_FROM (${CTID_FROM_HOSTNAME}) -> $CTID_TO (${CTID_TO_HOSTNAME})
|
||||||
Version: 2022.10.03" 13 50 || exit
|
Version: 2022.10.03" 13 50 || exit
|
||||||
info "Home Assistant Data from '$CTID_FROM' to '$CTID_TO'"
|
info "Home Assistant Data from '$CTID_FROM' to '$CTID_TO'"
|
||||||
|
if [ $(pct status $CTID_FROM | sed 's/.* //') == 'running' ]; then
|
||||||
|
msg "Stopping '$CTID_FROM'..."
|
||||||
|
pct stop $CTID_FROM
|
||||||
|
fi
|
||||||
if [ $(pct status $CTID_TO | sed 's/.* //') == 'running' ]; then
|
if [ $(pct status $CTID_TO | sed 's/.* //') == 'running' ]; then
|
||||||
msg "Stopping '$CTID_TO'..."
|
msg "Stopping '$CTID_TO'..."
|
||||||
pct stop $CTID_TO
|
pct stop $CTID_TO
|
||||||
|
|
|
@ -46,7 +46,6 @@ msg_error() {
|
||||||
|
|
||||||
start_routines() {
|
start_routines() {
|
||||||
header_info
|
header_info
|
||||||
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
|
|
||||||
|
|
||||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SOURCES" --menu "The package manager will use the correct sources to update and install packages on your Proxmox VE server.\n \nCorrect Proxmox VE sources?" 14 58 2 \
|
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SOURCES" --menu "The package manager will use the correct sources to update and install packages on your Proxmox VE server.\n \nCorrect Proxmox VE sources?" 14 58 2 \
|
||||||
"yes" " " \
|
"yes" " " \
|
||||||
|
@ -55,10 +54,11 @@ start_routines() {
|
||||||
yes)
|
yes)
|
||||||
msg_info "Correcting Proxmox VE Sources"
|
msg_info "Correcting Proxmox VE Sources"
|
||||||
cat <<EOF >/etc/apt/sources.list
|
cat <<EOF >/etc/apt/sources.list
|
||||||
deb http://ftp.debian.org/debian ${VERSION} main contrib
|
deb http://deb.debian.org/debian bookworm main contrib
|
||||||
deb http://ftp.debian.org/debian ${VERSION}-updates main contrib
|
deb http://deb.debian.org/debian bookworm-updates main contrib
|
||||||
deb http://security.debian.org/debian-security ${VERSION}-security main contrib
|
deb http://security.debian.org/debian-security bookworm-security main contrib
|
||||||
EOF
|
EOF
|
||||||
|
echo 'APT::Get::Update::SourceListWarnings::NonFreeFirmware "false";' >/etc/apt/apt.conf.d/no-bookworm-firmware.conf
|
||||||
msg_ok "Corrected Proxmox VE Sources"
|
msg_ok "Corrected Proxmox VE Sources"
|
||||||
;;
|
;;
|
||||||
no)
|
no)
|
||||||
|
@ -73,7 +73,7 @@ EOF
|
||||||
yes)
|
yes)
|
||||||
msg_info "Disabling 'pve-enterprise' repository"
|
msg_info "Disabling 'pve-enterprise' repository"
|
||||||
cat <<EOF >/etc/apt/sources.list.d/pve-enterprise.list
|
cat <<EOF >/etc/apt/sources.list.d/pve-enterprise.list
|
||||||
# deb https://enterprise.proxmox.com/debian/pve ${VERSION} pve-enterprise
|
# deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
|
||||||
EOF
|
EOF
|
||||||
msg_ok "Disabled 'pve-enterprise' repository"
|
msg_ok "Disabled 'pve-enterprise' repository"
|
||||||
;;
|
;;
|
||||||
|
@ -89,7 +89,7 @@ EOF
|
||||||
yes)
|
yes)
|
||||||
msg_info "Enabling 'pve-no-subscription' repository"
|
msg_info "Enabling 'pve-no-subscription' repository"
|
||||||
cat <<EOF >/etc/apt/sources.list.d/pve-install-repo.list
|
cat <<EOF >/etc/apt/sources.list.d/pve-install-repo.list
|
||||||
deb http://download.proxmox.com/debian/pve ${VERSION} pve-no-subscription
|
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
|
||||||
EOF
|
EOF
|
||||||
msg_ok "Enabled 'pve-no-subscription' repository"
|
msg_ok "Enabled 'pve-no-subscription' repository"
|
||||||
;;
|
;;
|
||||||
|
@ -98,7 +98,6 @@ EOF
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [[ "${VERSION}" == "bookworm" ]]; then
|
|
||||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CEPH PACKAGE REPOSITORIES" --menu "The 'Ceph Package Repositories' provides access to both the 'no-subscription' and 'enterprise' repositories (initially disabled).\n \nCorrect 'ceph package sources?" 14 58 2 \
|
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CEPH PACKAGE REPOSITORIES" --menu "The 'Ceph Package Repositories' provides access to both the 'no-subscription' and 'enterprise' repositories (initially disabled).\n \nCorrect 'ceph package sources?" 14 58 2 \
|
||||||
"yes" " " \
|
"yes" " " \
|
||||||
"no" " " 3>&2 2>&1 1>&3)
|
"no" " " 3>&2 2>&1 1>&3)
|
||||||
|
@ -117,7 +116,6 @@ EOF
|
||||||
msg_error "Selected no to Correcting 'ceph package repositories'"
|
msg_error "Selected no to Correcting 'ceph package repositories'"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
|
||||||
|
|
||||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PVETEST" --menu "The 'pvetest' repository can give advanced users access to new features and updates before they are officially released.\n \nAdd (Disabled) 'pvetest' repository?" 14 58 2 \
|
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "PVETEST" --menu "The 'pvetest' repository can give advanced users access to new features and updates before they are officially released.\n \nAdd (Disabled) 'pvetest' repository?" 14 58 2 \
|
||||||
"yes" " " \
|
"yes" " " \
|
||||||
|
@ -126,7 +124,7 @@ EOF
|
||||||
yes)
|
yes)
|
||||||
msg_info "Adding 'pvetest' repository and set disabled"
|
msg_info "Adding 'pvetest' repository and set disabled"
|
||||||
cat <<EOF >/etc/apt/sources.list.d/pvetest-for-beta.list
|
cat <<EOF >/etc/apt/sources.list.d/pvetest-for-beta.list
|
||||||
# deb http://download.proxmox.com/debian/pve ${VERSION} pvetest
|
# deb http://download.proxmox.com/debian/pve bookworm pvetest
|
||||||
EOF
|
EOF
|
||||||
msg_ok "Added 'pvetest' repository"
|
msg_ok "Added 'pvetest' repository"
|
||||||
;;
|
;;
|
||||||
|
@ -233,9 +231,11 @@ while true; do
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
if ! command -v pveversion >/dev/null 2>&1; then
|
if ! pveversion | grep -Eq "pve-manager/(8.1.[1-9])"; then
|
||||||
header_info
|
msg_error "This version of Proxmox Virtual Environment is not supported"
|
||||||
msg_error "\n No PVE Detected!\n"
|
echo -e "Requires Proxmox Virtual Environment Version 8.1.1 or later."
|
||||||
|
echo -e "Exiting..."
|
||||||
|
sleep 2
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue