[pve-devel] [PATCH qemu-server, manager v8 0/4] fix #1926 autodetect xtermjs or novnc for VM console
    Michael Köppl 
    m.koeppl at proxmox.com
       
    Mon Oct 27 15:48:21 CET 2025
    
    
  
Gave this another quick spin, just to be sure. Tested the following:
- Created VM with serial terminal as display
- xtermjs was used for serial
- Switching to "default" or explicitly to "Standard VGA" uses noVNC
- Switching to "SPICE" uses remote-viewer
Seems to work as advertised. Left a comment regarding one code change on
3/4.
Renewing the T-b just in case:
Tested-by: Michael Köppl <m.koeppl at proxmox.com>
On Fri Oct 3, 2025 at 5:00 PM CEST, Aaron Lauterer wrote:
> Here is a new verson for this fix. Nothing changed since v7 expect
> rebasing. Quite a bit happened since then, but the rebase should be fine
> by now. I gave it a quick test on my workstation and things seem to work
> as expected. A quick test by someone else might be warranted though,
> just to be safe. I added all the R-b and T-b tags that were added on v7
> direclty into each patch. Hopefully as they should be (chronological).
>
> The old cover letter that explains what is happening below:
>
> 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
> v7: rebased
> 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
>
> Aaron Lauterer (2):
>   add new public get_default_vga_type function
>   api: status/current: add display property
>
>  src/PVE/API2/Qemu.pm  | 13 +++++++++++++
>  src/PVE/QemuServer.pm | 29 ++++++++++++++++++++++-------
>  2 files changed, 35 insertions(+), 7 deletions(-)
    
    
More information about the pve-devel
mailing list