mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-11-02 19:57:04 +01:00
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 90355e482c | |||
| 047819b7f3 | |||
| 21b7a89a88 | |||
| 1c3f6a9f89 | |||
| e5535c2bfe | |||
| 236242ee86 | |||
| 7774a1a28d | |||
| e82cc0efc8 | |||
| a87c7556a9 | |||
| d3abb64d4d | |||
| f0cf766ec5 | |||
| b3df8b8b8f | |||
| 60722fe556 | |||
| 8ca359311c |
@@ -571,8 +571,30 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
</details>
|
||||
|
||||
## 2026-11-02
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- anchor: bump Node.js from 24 to 26 [@github-actions[bot]](https://github.com/github-actions[bot]) ([#18373](https://github.com/community-scripts/ProxmoxVE/pull/18373))
|
||||
- guardian: bump Node.js from 24 to 26 [@github-actions[bot]](https://github.com/github-actions[bot]) ([#18375](https://github.com/community-scripts/ProxmoxVE/pull/18375))
|
||||
- nametag: bump Node.js from 20 to 24 [@github-actions[bot]](https://github.com/github-actions[bot]) ([#18376](https://github.com/community-scripts/ProxmoxVE/pull/18376))
|
||||
|
||||
## 2026-11-01
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Amazon Linux ([#18369](https://github.com/community-scripts/ProxmoxVE/pull/18369))
|
||||
- CachyOS VM ([#18368](https://github.com/community-scripts/ProxmoxVE/pull/18368))
|
||||
- Razzia ([#18366](https://github.com/community-scripts/ProxmoxVE/pull/18366))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fix(zerobyte): build the bundled local agent [@nicotsx](https://github.com/nicotsx) ([#18363](https://github.com/community-scripts/ProxmoxVE/pull/18363))
|
||||
|
||||
## 2026-10-31
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
_cs_boot="${COMMUNITY_SCRIPTS_CORE_DIR:-$(dirname "${BASH_SOURCE[0]}")/../../core}/core/build.func"
|
||||
source "$_cs_boot" 2>/dev/null || source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_URL:-https://raw.githubusercontent.com/community-scripts/core/main}/core/build.func")
|
||||
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://aws.amazon.com/linux/
|
||||
|
||||
APP="Amazon Linux"
|
||||
var_tags="${var_tags:-os}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-amazonlinux}"
|
||||
var_version="${var_version:-2023}"
|
||||
var_arm64="${var_arm64:-no}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
msg_info "Updating Amazon Linux LXC"
|
||||
$STD dnf -y upgrade
|
||||
msg_ok "Updated Amazon Linux LXC"
|
||||
cleanup_lxc
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed successfully!"
|
||||
msg_custom "🚀" "${GN}" "${APP} setup has been successfully initialized!"
|
||||
@@ -39,6 +39,7 @@ function update_script() {
|
||||
create_backup /opt/anchor/.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "anchor" "ZhFahim/anchor" "tarball"
|
||||
NODE_VERSION="26" NODE_MODULE="pnpm" setup_nodejs
|
||||
|
||||
msg_info "Building Server"
|
||||
cd /opt/anchor/server
|
||||
|
||||
@@ -102,6 +102,7 @@ function update_script() {
|
||||
fi
|
||||
msg_ok "Ensured ASP.NET Core Runtime"
|
||||
|
||||
rm -rf /opt/fileflows/{Server,FlowRunner,Libraries,Agent}
|
||||
fetch_and_deploy_from_url "https://fileflows.com/downloads/ff-latest.tar.xz" "/opt/fileflows"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
@@ -53,6 +53,8 @@ function update_script() {
|
||||
msg_ok "Restored Database"
|
||||
fi
|
||||
|
||||
NODE_VERSION="26" setup_nodejs
|
||||
|
||||
msg_info "Updating Guardian"
|
||||
cd /opt/guardian/backend
|
||||
$STD npm ci
|
||||
|
||||
+2
-3
@@ -9,7 +9,7 @@ source "$_cs_boot" 2>/dev/null || source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_
|
||||
APP="Nametag"
|
||||
var_tags="${var_tags:-contacts;crm}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
@@ -37,10 +37,9 @@ function update_script() {
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
create_backup /opt/nametag/.env
|
||||
|
||||
CLEAN_INSTALL=1 CLEAN_INSTALL_KEEP="data" fetch_and_deploy_gh_release "nametag" "mattogodoy/nametag" "tarball" "latest" "/opt/nametag"
|
||||
|
||||
restore_backup
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
|
||||
msg_info "Rebuilding Application"
|
||||
cd /opt/nametag
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
_cs_boot="${COMMUNITY_SCRIPTS_CORE_DIR:-$(dirname "${BASH_SOURCE[0]}")/../../core}/core/build.func"
|
||||
source "$_cs_boot" 2>/dev/null || source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_URL:-https://raw.githubusercontent.com/community-scripts/core/main}/core/build.func")
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: Owen Voke (owenvoke)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/Ralex91/Razzia
|
||||
|
||||
APP="Razzia"
|
||||
var_tags="${var_tags:-quiz;games}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-3072}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
var_arm64="${var_arm64:-yes}"
|
||||
var_unprivileged="${var_unprivileged:-1}"
|
||||
|
||||
header_info "$APP"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -d /opt/razzia ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "razzia" "Ralex91/Razzia"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop razzia
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
create_backup /opt/razzia/.env
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "razzia" "Ralex91/Razzia" "tarball"
|
||||
|
||||
restore_backup
|
||||
|
||||
NODE_VERSION="24" NODE_MODULE="pnpm@11" setup_nodejs
|
||||
|
||||
msg_info "Building Razzia"
|
||||
cd /opt/razzia
|
||||
$STD pnpm install --frozen-lockfile
|
||||
$STD pnpm build
|
||||
msg_ok "Built Razzia"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start razzia
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
|
||||
echo -e "${INFO}${YW}Access it using the following URL:${CL}"
|
||||
echo -e "${GATEWAY}${BGN}http://${IP}:3000${CL}"
|
||||
@@ -53,6 +53,7 @@ function update_script() {
|
||||
cd /opt/zerobyte
|
||||
$STD bun install
|
||||
$STD node ./node_modules/vite/bin/vite.js build
|
||||
$STD bun build apps/agent/src/index.ts --outfile .output/agent/index.mjs --target bun
|
||||
msg_ok "Built Zerobyte"
|
||||
|
||||
msg_info "Starting Service"
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://aws.amazon.com/linux/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Base Dependencies"
|
||||
$STD dnf install -y hostname procps-ng
|
||||
msg_ok "Installed Base Dependencies"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@@ -13,7 +13,7 @@ setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
NODE_VERSION="24" NODE_MODULE="pnpm" setup_nodejs
|
||||
NODE_VERSION="26" NODE_MODULE="pnpm" setup_nodejs
|
||||
PG_VERSION="17" setup_postgresql
|
||||
PG_DB_NAME="anchor" PG_DB_USER="anchor" setup_postgresql_db
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ msg_info "Installing Dependencies"
|
||||
$STD apt install -y sqlite3
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
NODE_VERSION="26" setup_nodejs
|
||||
fetch_and_deploy_gh_release "guardian" "HydroshieldMKII/Guardian" "tarball" "latest" "/opt/guardian"
|
||||
|
||||
msg_info "Configuring ${APPLICATION}"
|
||||
|
||||
@@ -15,7 +15,7 @@ update_os
|
||||
|
||||
PG_VERSION="16" setup_postgresql
|
||||
PG_DB_NAME="nametag_db" PG_DB_USER="nametag" setup_postgresql_db
|
||||
NODE_VERSION="20" setup_nodejs
|
||||
NODE_VERSION="24" setup_nodejs
|
||||
fetch_and_deploy_gh_release "nametag" "mattogodoy/nametag" "tarball" "latest" "/opt/nametag"
|
||||
|
||||
msg_info "Setting up Application"
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: Owen Voke (owenvoke)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/Ralex91/Razzia
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt install -y nginx
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="24" NODE_MODULE="pnpm@11" setup_nodejs
|
||||
fetch_and_deploy_gh_release "razzia" "Ralex91/Razzia" "tarball"
|
||||
|
||||
msg_info "Building Razzia"
|
||||
cd /opt/razzia
|
||||
$STD pnpm install --frozen-lockfile
|
||||
$STD pnpm build
|
||||
msg_ok "Built Razzia"
|
||||
|
||||
msg_info "Configuring Razzia"
|
||||
mkdir -p /opt/razzia-config
|
||||
cat <<EOF >/opt/razzia/.env
|
||||
MANAGER_PASSWORD=$(random_password 16)
|
||||
JWT_SECRET=$(openssl rand -hex 32)
|
||||
EOF
|
||||
msg_ok "Configured Razzia"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/razzia.service
|
||||
[Unit]
|
||||
Description=Razzia Socket Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/opt/razzia/packages/socket
|
||||
EnvironmentFile=/opt/razzia/.env
|
||||
Environment=NODE_ENV=production
|
||||
Environment=CONFIG_PATH=/opt/razzia-config
|
||||
ExecStart=/usr/bin/node /opt/razzia/packages/socket/dist/index.cjs
|
||||
Restart=on-failure
|
||||
RestartSec=5
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now razzia
|
||||
msg_ok "Created Service"
|
||||
|
||||
msg_info "Configuring Nginx"
|
||||
cat <<EOF >/etc/nginx/sites-available/razzia
|
||||
server {
|
||||
listen 3000;
|
||||
server_name _;
|
||||
|
||||
root /opt/razzia/packages/web/dist;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
try_files \$uri \$uri/ /index.html;
|
||||
}
|
||||
|
||||
location /branding/ {
|
||||
alias /opt/razzia-config/branding/;
|
||||
}
|
||||
|
||||
location /media/ {
|
||||
alias /opt/razzia-config/media/;
|
||||
types {
|
||||
image/png png;
|
||||
image/jpeg jpg;
|
||||
image/webp webp;
|
||||
image/gif gif;
|
||||
audio/mpeg mp3;
|
||||
audio/ogg ogg;
|
||||
audio/wav wav;
|
||||
video/mp4 mp4;
|
||||
video/webm webm;
|
||||
}
|
||||
default_type application/octet-stream;
|
||||
add_header X-Content-Type-Options nosniff;
|
||||
}
|
||||
|
||||
location /api {
|
||||
client_max_body_size 101m;
|
||||
proxy_pass http://127.0.0.1:3001;
|
||||
proxy_set_header Host \$host;
|
||||
proxy_read_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
}
|
||||
|
||||
location /ws {
|
||||
proxy_pass http://127.0.0.1:3001;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade \$http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_set_header Host \$host;
|
||||
proxy_read_timeout 3600s;
|
||||
proxy_send_timeout 3600s;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
nginx_enable_site razzia
|
||||
msg_ok "Configured Nginx"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@@ -53,6 +53,7 @@ export VITE_SHOUTRRR_VERSION=$(cat ~/.shoutrrr)
|
||||
export NODE_OPTIONS="--max-old-space-size=3072"
|
||||
$STD bun install
|
||||
$STD node ./node_modules/vite/bin/vite.js build
|
||||
$STD bun build apps/agent/src/index.ts --outfile .output/agent/index.mjs --target bun
|
||||
msg_ok "Built Zerobyte"
|
||||
|
||||
msg_info "Configuring Zerobyte"
|
||||
|
||||
@@ -0,0 +1,162 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2026 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
|
||||
# ==============================================================================
|
||||
# CachyOS VM - Creates a CachyOS Virtual Machine
|
||||
# CachyOS is a performance-focused Arch Linux distribution with optimized
|
||||
# packages, custom kernels, and various desktop environment options.
|
||||
# ==============================================================================
|
||||
|
||||
COMMUNITY_SCRIPTS_URL="${COMMUNITY_SCRIPTS_URL:-https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main}"
|
||||
source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_URL:-https://raw.githubusercontent.com/community-scripts/core/main}/pve/vm-core.func")
|
||||
load_functions
|
||||
|
||||
APP="CachyOS"
|
||||
APP_TYPE="vm"
|
||||
NSAPP="cachyos-vm"
|
||||
var_os="cachyos"
|
||||
var_version=" "
|
||||
GEN_MAC=02:$(openssl rand -hex 5 | awk '{print toupper($0)}' | sed 's/\(..\)/\1:/g; s/.$//')
|
||||
RANDOM_UUID="$(cat /proc/sys/kernel/random/uuid)"
|
||||
METHOD=""
|
||||
THIN="discard=on,ssd=1,"
|
||||
|
||||
header_info
|
||||
echo -e "\n Loading..."
|
||||
|
||||
set -Eeo pipefail
|
||||
shopt -s inherit_errexit
|
||||
trap 'error_handler $LINENO "$BASH_COMMAND"' ERR
|
||||
trap cleanup EXIT
|
||||
trap 'post_update_to_api "failed" "130"' SIGINT
|
||||
trap 'post_update_to_api "failed" "143"' SIGTERM
|
||||
trap 'post_update_to_api "failed" "129"; exit 129' SIGHUP
|
||||
|
||||
vm_require_arch amd64
|
||||
|
||||
TEMP_DIR=$(mktemp -d)
|
||||
pushd "$TEMP_DIR" >/dev/null
|
||||
|
||||
vm_preflight
|
||||
|
||||
# ==============================================================================
|
||||
# DEFAULT SETTINGS - Optimized for desktop usage with GUI
|
||||
# ==============================================================================
|
||||
function default_settings() {
|
||||
VMID=$(get_valid_nextid)
|
||||
vm_apply_machine_type "q35"
|
||||
DISK_SIZE="40G"
|
||||
DISK_CACHE=""
|
||||
HN="cachyos"
|
||||
CPU_TYPE=" -cpu host"
|
||||
CORE_COUNT="4"
|
||||
RAM_SIZE="8192"
|
||||
BRG="vmbr0"
|
||||
MAC="$GEN_MAC"
|
||||
VLAN=""
|
||||
MTU=""
|
||||
START_VM="yes"
|
||||
METHOD="default"
|
||||
vm_echo_default_settings
|
||||
}
|
||||
|
||||
# ==============================================================================
|
||||
# ADVANCED SETTINGS
|
||||
# ==============================================================================
|
||||
function advanced_settings() {
|
||||
METHOD="advanced"
|
||||
vm_prompt_vmid "${VMID:-$(get_valid_nextid)}"
|
||||
vm_prompt_machine_type "q35"
|
||||
vm_prompt_disk_size "40G" "Set Disk Size in GiB (Recommended: 40+ for desktop)"
|
||||
vm_prompt_disk_cache "none"
|
||||
vm_prompt_hostname "cachyos"
|
||||
vm_prompt_cpu_model "host"
|
||||
vm_prompt_cpu_cores "4"
|
||||
vm_prompt_ram "8192"
|
||||
vm_prompt_bridge "vmbr0"
|
||||
vm_prompt_mac "$GEN_MAC"
|
||||
vm_prompt_vlan
|
||||
vm_prompt_mtu
|
||||
vm_prompt_keyboard
|
||||
vm_prompt_verbose "no"
|
||||
vm_prompt_start_vm "yes"
|
||||
|
||||
if vm_confirm_advanced_settings "Ready to create a CachyOS VM?"; then
|
||||
echo -e "${CREATING}${BOLD}${DGN}Creating a CachyOS VM using the above advanced settings${CL}"
|
||||
else
|
||||
header_info
|
||||
echo -e "${ADVANCED}${BOLD}${RD}Using Advanced Settings${CL}"
|
||||
advanced_settings
|
||||
fi
|
||||
}
|
||||
|
||||
# ==============================================================================
|
||||
# MAIN EXECUTION
|
||||
# ==============================================================================
|
||||
vm_start_script "Use Default Settings?\n\nDefaults:\n• 4 CPU Cores\n• 8 GB RAM\n• 40 GB Disk" 13 58
|
||||
post_to_api_vm
|
||||
|
||||
vm_select_storage "$HN"
|
||||
|
||||
# ==============================================================================
|
||||
# ISO DOWNLOAD
|
||||
# ==============================================================================
|
||||
msg_info "Retrieving the URL for the CachyOS Desktop ISO"
|
||||
|
||||
# Get latest release version from SourceForge (format: YYMMDD in folder links)
|
||||
if ! vm_latest_from_index "https://sourceforge.net/projects/cachyos-arch/files/gui-installer/desktop/" 'desktop/\K[0-9]{6}(?=/)'; then
|
||||
exit 115
|
||||
fi
|
||||
|
||||
CACHYOS_VERSION="$VM_INDEX_LATEST"
|
||||
var_version="$CACHYOS_VERSION"
|
||||
|
||||
# SourceForge download URL with mirror redirect
|
||||
URL="https://sourceforge.net/projects/cachyos-arch/files/gui-installer/desktop/${CACHYOS_VERSION}/cachyos-desktop-linux-${CACHYOS_VERSION}.iso/download"
|
||||
FILENAME="cachyos-desktop-linux-${CACHYOS_VERSION}.iso"
|
||||
vm_select_iso_storage "$FILENAME" "$HN"
|
||||
CACHE_FILE="$ISO_PATH"
|
||||
msg_ok "${CL}${BL}CachyOS Desktop ISO (Release: ${CACHYOS_VERSION})${CL}"
|
||||
|
||||
# A bad SourceForge mirror serves an HTML notice with status 200, so the size
|
||||
# decides whether this is an ISO, not curl's exit code.
|
||||
MIN_ISO_BYTES=$((500 * 1024 * 1024))
|
||||
|
||||
[[ -s "$CACHE_FILE" ]] || msg_info "Downloading the CachyOS ISO (approximately 3.1 GB, this may take a while)"
|
||||
vm_fetch_image "$URL" "$CACHE_FILE" --cache --min-bytes "$MIN_ISO_BYTES" || exit 115
|
||||
|
||||
# ==============================================================================
|
||||
# VM CREATION
|
||||
# ==============================================================================
|
||||
msg_info "Creating a CachyOS VM"
|
||||
|
||||
vm_claim_vmid
|
||||
qm create $VMID -agent 1${MACHINE} -tablet 0 -bios ovmf${CPU_TYPE} -cores $CORE_COUNT -memory $RAM_SIZE \
|
||||
-name $HN -tags community-script -net0 virtio,bridge=$BRG,macaddr=$MAC$VLAN$MTU -onboot 0 -ostype l26 -scsihw virtio-scsi-pci \
|
||||
-efidisk0 ${STORAGE}:1,efitype=4m,pre-enrolled-keys=0 -scsi0 ${STORAGE}:${DISK_SIZE%G},${DISK_CACHE}${THIN%,} \
|
||||
-cdrom "$ISO_VOLUME" -boot order='scsi0;ide2' -vga qxl -serial0 socket >/dev/null
|
||||
vm_mark_created
|
||||
|
||||
set_description
|
||||
|
||||
msg_ok "Created a CachyOS VM ${CL}${BL}(${HN})"
|
||||
|
||||
# ==============================================================================
|
||||
# START VM
|
||||
# ==============================================================================
|
||||
vm_start_vm "CachyOS VM"
|
||||
|
||||
# ==============================================================================
|
||||
# FINAL OUTPUT
|
||||
# ==============================================================================
|
||||
vm_print_summary "Version=${CACHYOS_VERSION}" "ISO=${FILENAME}"
|
||||
vm_next_steps \
|
||||
"Open the VM Console in Proxmox (noVNC or SPICE)." \
|
||||
"Boot from the CachyOS ISO." \
|
||||
"Use the Calamares installer to complete installation." \
|
||||
"Choose your preferred desktop environment during setup." \
|
||||
"After installation, detach the ISO; the boot order already prefers the disk."
|
||||
vm_finish "VM created; complete the CachyOS installation in the Proxmox console."
|
||||
Reference in New Issue
Block a user