Merge pull request #1813 from netbootxyz/proxmox-arm64

Add arm64 Proxmox VE and gate the Proxmox menu by architecture
This commit is contained in:
Antony Messerli
2026-08-10 01:14:59 -05:00
committed by GitHub
+37 -41
View File
@@ -9,31 +9,36 @@ goto ${menu} ||
clear proxmox_choice
clear proxmox_version
set os Proxmox
menu ${os}
set os_arch ${arch}
iseq ${os_arch} x86_64 && set os_arch amd64 ||
clear vga_params
iseq ${os_arch} amd64 && set vga_params vga=791 video=vesafb:ywrap,mtrr ||
menu ${os} - ${os_arch}
{% for key, value in endpoints.items() | sort %}
{% set endpoint_arch = value.arch | default('amd64') %}
{% if value.os == "proxmox-backup-server" %}
item --gap ${os} Backup Server
item pbs-normal ${space} ${os} Backup Server {{ value.version }}
item pbs-text ${space} ${os} Backup Server {{ value.version }} (Text)
item pbs-debug ${space} ${os} Backup Server {{ value.version }} (Debug)
iseq ${os_arch} {{ endpoint_arch }} && item --gap ${os} Backup Server ||
iseq ${os_arch} {{ endpoint_arch }} && item pbs-normal ${space} ${os} Backup Server {{ value.version }} ||
iseq ${os_arch} {{ endpoint_arch }} && item pbs-text ${space} ${os} Backup Server {{ value.version }} (Text) ||
iseq ${os_arch} {{ endpoint_arch }} && item pbs-debug ${space} ${os} Backup Server {{ value.version }} (Debug) ||
{% endif %}
{% if value.os == "proxmox-mailgateway" %}
item --gap ${os} Mail Gateway
item pmg-normal ${space} ${os} Mail Gateway {{ value.version }}
item pmg-text ${space} ${os} Mail Gateway {{ value.version }} (Text)
item pmg-debug ${space} ${os} Mail Gateway {{ value.version }} (Debug)
iseq ${os_arch} {{ endpoint_arch }} && item --gap ${os} Mail Gateway ||
iseq ${os_arch} {{ endpoint_arch }} && item pmg-normal ${space} ${os} Mail Gateway {{ value.version }} ||
iseq ${os_arch} {{ endpoint_arch }} && item pmg-text ${space} ${os} Mail Gateway {{ value.version }} (Text) ||
iseq ${os_arch} {{ endpoint_arch }} && item pmg-debug ${space} ${os} Mail Gateway {{ value.version }} (Debug) ||
{% endif %}
{% if value.os == "proxmox-datacenter-manager" %}
item --gap ${os} Datacenter Manager
item pdm-normal ${space} ${os} Datacenter Manager {{ value.version }}
item pdm-text ${space} ${os} Datacenter Manager {{ value.version }} (Text)
item pdm-debug ${space} ${os} Datacenter Manager {{ value.version }} (Debug)
iseq ${os_arch} {{ endpoint_arch }} && item --gap ${os} Datacenter Manager ||
iseq ${os_arch} {{ endpoint_arch }} && item pdm-normal ${space} ${os} Datacenter Manager {{ value.version }} ||
iseq ${os_arch} {{ endpoint_arch }} && item pdm-text ${space} ${os} Datacenter Manager {{ value.version }} (Text) ||
iseq ${os_arch} {{ endpoint_arch }} && item pdm-debug ${space} ${os} Datacenter Manager {{ value.version }} (Debug) ||
{% endif %}
{% if value.os == "proxmox-ve" %}
item --gap ${os} VE
item pve-normal ${space} ${os} VE {{ value.version }}
item pve-text ${space} ${os} VE {{ value.version }} (Text)
item pve-debug ${space} ${os} VE {{ value.version }} (Debug)
iseq ${os_arch} {{ endpoint_arch }} && item --gap ${os} VE ||
iseq ${os_arch} {{ endpoint_arch }} && item pve-normal ${space} ${os} VE {{ value.version }} ||
iseq ${os_arch} {{ endpoint_arch }} && item pve-text ${space} ${os} VE {{ value.version }} (Text) ||
iseq ${os_arch} {{ endpoint_arch }} && item pve-debug ${space} ${os} VE {{ value.version }} (Debug) ||
{% endif %}
{% endfor %}
choose proxmox_choice || goto proxmox_exit
@@ -90,51 +95,42 @@ goto boot-pbs
:boot-pbs
{% for key, value in endpoints.items() | sort %}
{% if value.os == "proxmox-backup-server" %}
set kernel_url ${live_endpoint}{{ value.path }}
set proxmox_version {{ value.version }}
iseq ${os_arch} {{ value.arch | default('amd64') }} && set kernel_url ${live_endpoint}{{ value.path }} ||
iseq ${os_arch} {{ value.arch | default('amd64') }} && set proxmox_version {{ value.version }} ||
{% endif %}
{% endfor %}
imgfree
kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} {{ kernel_params }}
initrd ${kernel_url}initrd
initrd ${kernel_url}proxmox.iso /proxmox.iso
boot
goto boot-proxmox
:boot-pmg
{% for key, value in endpoints.items() | sort %}
{% if value.os == "proxmox-mailgateway" %}
set kernel_url ${live_endpoint}{{ value.path }}
set proxmox_version {{ value.version }}
iseq ${os_arch} {{ value.arch | default('amd64') }} && set kernel_url ${live_endpoint}{{ value.path }} ||
iseq ${os_arch} {{ value.arch | default('amd64') }} && set proxmox_version {{ value.version }} ||
{% endif %}
{% endfor %}
imgfree
kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} {{ kernel_params }}
initrd ${kernel_url}initrd
initrd ${kernel_url}proxmox.iso /proxmox.iso
boot
goto boot-proxmox
:boot-pdm
{% for key, value in endpoints.items() | sort %}
{% if value.os == "proxmox-datacenter-manager" %}
set kernel_url ${live_endpoint}{{ value.path }}
set proxmox_version {{ value.version }}
iseq ${os_arch} {{ value.arch | default('amd64') }} && set kernel_url ${live_endpoint}{{ value.path }} ||
iseq ${os_arch} {{ value.arch | default('amd64') }} && set proxmox_version {{ value.version }} ||
{% endif %}
{% endfor %}
imgfree
kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} {{ kernel_params }}
initrd ${kernel_url}initrd
initrd ${kernel_url}proxmox.iso /proxmox.iso
boot
goto boot-proxmox
:boot-pve
{% for key, value in endpoints.items() | sort %}
{% if value.os == "proxmox-ve" %}
set kernel_url ${live_endpoint}{{ value.path }}
set proxmox_version {{ value.version }}
iseq ${os_arch} {{ value.arch | default('amd64') }} && set kernel_url ${live_endpoint}{{ value.path }} ||
iseq ${os_arch} {{ value.arch | default('amd64') }} && set proxmox_version {{ value.version }} ||
{% endif %}
{% endfor %}
goto boot-proxmox
:boot-proxmox
imgfree
kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} {{ kernel_params }}
kernel ${kernel_url}vmlinuz ${vga_params} ramdisk_size=16777216 rw quiet ${params} {{ kernel_params }}
initrd ${kernel_url}initrd
initrd ${kernel_url}proxmox.iso /proxmox.iso
boot