[pve-devel] [PATCH qemu-server, manager v7 0/4] fix #1926 autodetect xtermjs or novnc for VM console
Hannes Duerr
h.duerr at proxmox.com
Tue Apr 8 14:49:21 CEST 2025
Created a VM, started it and opened the console -> noVNC was selected
added a serial device and selected Serial output as Display -> xtermjs
was selected
selected SPICE as Display -> noVNC was selected
the patches behaved as i would have expected, please consider them
Tested-by: Hannes Duerr <h.duerr at proxmox.com>
On 4/8/25 14:27, Aaron Lauterer wrote:
> Sorry for the noise, after the feedback from Fiona on v6 and some
> off-list discussion, we decided to improve the backend part by moving
> the "default" logic out of `get_vga_properties` and move it into a
> separate public `get_default_vga_type` function. This way we can leave
> all the other functions private to the QemuServer.pm module.
>
>
> We add a new property in the VM status/current API result that includes
> the display configurtion of the VM. This way we can check in the
> frontend what to do with it.
>
> I chose a nested return value, as that makes it easier to add/move
> additional display properties into it.
>
> Patch 1/4 moves the default display logic into its own public function
>
> Patch 2/4 adds the new display property. If not explicitly set in the VM
> config, it will return the default value.
>
> Patch 3/4 implements the changes in the UI. The final result isn't
> really a lot simpler on the UI side than in V4 where we had the extra
> API call to the VM's config directly. Because we still need to wait for
> the API call to finish when initially navigating to the VM. But we have
> one fewer call.
>
> Patch 4/4 then introduces some changes to make loading of the console
> faster if we just navigate in the submenu of a VM itself where we
> already have the current status of a VM already cached.
>
> Changes from
> v6: backend only: create new `get_default_vga_type` function.
> v5: implement suggestions:
>
> * use get_vga_properties for default VGA
> * UI: use helper to determine if serial display
>
> qemu-server: Aaron Lauterer (2):
> QemuServer: add new public get_default_vga_type function
> api: status/current: add display property
>
> PVE/API2/Qemu.pm | 13 +++++++++++++
> PVE/QemuServer.pm | 29 ++++++++++++++++++++++-------
> 2 files changed, 35 insertions(+), 7 deletions(-)
>
>
> manager: Aaron Lauterer (2):
> fix #1926 ui: vm console: autodetect novnc or xtermjs
> ui: console: check on activate if display info for VMs is present
>
> www/manager6/Utils.js | 4 +++
> www/manager6/VNCConsole.js | 60 ++++++++++++++++++++++++++-----------
> www/manager6/qemu/Config.js | 7 ++++-
> 3 files changed, 53 insertions(+), 18 deletions(-)
>
More information about the pve-devel
mailing list