public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager 00/10] enable qemu vm architecture selection
@ 2026-01-28 12:18 Dominik Csapak
  2026-01-28 12:18 ` [pve-devel] [PATCH manager 01/10] api/pvestatd: broadcast and expose non-x86 host architecture Dominik Csapak
                   ` (10 more replies)
  0 siblings, 11 replies; 25+ messages in thread
From: Dominik Csapak @ 2026-01-28 12:18 UTC (permalink / raw)
  To: pve-devel

This series brings the emulated aarch64 vms to the gui. This could
be configured on the api only previously.

The code also handles if the host has a non-x86 architecture, and is
generally structured in a way that should make it (relatively) easy
to add other architectures in the future.

Some fields/panels needed adaptions to hide some values or change some
defaults, since not every combination that can be configured makes
sense. (e.g. seabios on aarch64 cannot work currently)

Generally the backend allows many combinations that don't make sense on
all architectures, so i tried to limit the users here to the 'correct'
ones, but we should think about limiting them in the backend too.

Also, the backend made some inconsistent choices with different
architectures, such as the default controller changes with the
architecture, but things like 'bios' or 'scsihw' do not. So I worked
around these things a bit differently.

What is still missing:
* make the disk controllers selective per architecture
  (e.g. aarch64 has no ide controller, ovmf+aarch64 cannot boot from sata)
* cpumodel + cpuflags need to be architecture aware

other nice to haves not yet done, that also invovle changing the backend:
* 'virt' machine support in our api, so one can choose older versions
* allow 'pcie' passthrough on 'virt'

Dominik Csapak (10):
  api/pvestatd: broadcast and expose non-x86 host architecture
  ui: resource store: add architecture field
  ui: qemu: add architecture field in wizard and hardware view
  ui: qemu: make scsi hw selector architecture aware
  ui: qemu: make osdefaults architecture aware
  ui: qemu: make os type selector architecture aware
  ui: qemu: make machine panels/fields architecture aware
  ui: qemu: make bios selector architecture aware
  ui: qemu: make sortByPreviousUsage architecture aware
  ui: qemu: wizard: use defaults to populate machine and bios

 PVE/API2/Cluster.pm                      |  9 +++
 PVE/API2/Nodes.pm                        |  3 +-
 PVE/Service/pvestatd.pm                  | 10 +++
 www/manager6/Makefile                    |  1 +
 www/manager6/Utils.js                    | 61 ++++++++++++++++--
 www/manager6/data/ResourceStore.js       |  6 ++
 www/manager6/form/ControllerSelector.js  |  9 ++-
 www/manager6/form/QemuBiosSelector.js    | 61 ++++++++++++++++--
 www/manager6/form/QemuMachineSelector.js | 64 +++++++++++++++++++
 www/manager6/form/ScsiHwSelector.js      | 63 ++++++++++++++++++
 www/manager6/panel/MultiDiskEdit.js      | 14 ++--
 www/manager6/qemu/CIDriveEdit.js         |  2 +
 www/manager6/qemu/CreateWizard.js        | 27 ++++++++
 www/manager6/qemu/HardwareView.js        | 19 +++++-
 www/manager6/qemu/MachineEdit.js         | 63 +++++++++++++-----
 www/manager6/qemu/MultiHDEdit.js         |  3 +-
 www/manager6/qemu/NetworkEdit.js         |  3 +-
 www/manager6/qemu/OSDefaults.js          | 81 +++++++++++++++++++-----
 www/manager6/qemu/OSTypeEdit.js          | 39 +++++++++++-
 www/manager6/qemu/QemuBiosEdit.js        | 35 +++++++++-
 www/manager6/qemu/ScsiHwEdit.js          |  1 +
 www/manager6/qemu/SystemEdit.js          | 33 +++++++---
 www/manager6/window/GuestDiskReassign.js |  1 +
 23 files changed, 539 insertions(+), 69 deletions(-)
 create mode 100644 www/manager6/form/QemuMachineSelector.js

-- 
2.47.3



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2026-01-29 13:15 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-01-28 12:18 [pve-devel] [PATCH manager 00/10] enable qemu vm architecture selection Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 01/10] api/pvestatd: broadcast and expose non-x86 host architecture Dominik Csapak
2026-01-28 16:05   ` Fiona Ebner
2026-01-29  9:20     ` Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 02/10] ui: resource store: add architecture field Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 03/10] ui: qemu: add architecture field in wizard and hardware view Dominik Csapak
2026-01-28 16:32   ` Fiona Ebner
2026-01-28 12:18 ` [pve-devel] [PATCH manager 04/10] ui: qemu: make scsi hw selector architecture aware Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 05/10] ui: qemu: make osdefaults " Dominik Csapak
2026-01-29  9:25   ` Fiona Ebner
2026-01-28 12:18 ` [pve-devel] [PATCH manager 06/10] ui: qemu: make os type selector " Dominik Csapak
2026-01-29  9:41   ` Fiona Ebner
2026-01-29  9:47     ` Dominik Csapak
2026-01-29 12:09       ` Fiona Ebner
2026-01-29 10:18     ` Dominik Csapak
2026-01-29 12:10       ` Fiona Ebner
2026-01-28 12:18 ` [pve-devel] [PATCH manager 07/10] ui: qemu: make machine panels/fields " Dominik Csapak
2026-01-29 11:12   ` Fiona Ebner
2026-01-29 12:16     ` Dominik Csapak
2026-01-29 12:25       ` Fiona Ebner
2026-01-28 12:18 ` [pve-devel] [PATCH manager 08/10] ui: qemu: make bios selector " Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 09/10] ui: qemu: make sortByPreviousUsage " Dominik Csapak
2026-01-28 12:18 ` [pve-devel] [PATCH manager 10/10] ui: qemu: wizard: use defaults to populate machine and bios Dominik Csapak
2026-01-29 13:13 ` [pve-devel] [PATCH manager 00/10] enable qemu vm architecture selection Fiona Ebner
2026-01-29 13:15   ` Fiona Ebner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal