[pve-devel] [PATCH manager 10/10] ui: qemu: wizard: use defaults to populate machine and bios
Dominik Csapak
d.csapak at proxmox.com
Wed Jan 28 13:18:11 CET 2026
instead of hardcoding some values here for win11, use the OSDefaults
mechanism to load it for all. This makes it also architecture aware.
rename the function to 'setDefaults' as it's a more fitting name now.
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
www/manager6/qemu/OSDefaults.js | 7 +++++++
www/manager6/qemu/SystemEdit.js | 16 ++++++++++++----
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/www/manager6/qemu/OSDefaults.js b/www/manager6/qemu/OSDefaults.js
index 3a707d60..b679f58d 100644
--- a/www/manager6/qemu/OSDefaults.js
+++ b/www/manager6/qemu/OSDefaults.js
@@ -109,6 +109,13 @@ Ext.define('PVE.qemu.OSDefaults', {
parent: 'w2k',
});
+ addOS({
+ pveOS: 'win11',
+ parent: 'generic',
+ machine: 'q35',
+ bios: 'ovmf',
+ });
+
me.getDefaults = function (ostype, arch = 'x86_64') {
if (!PVE.qemu.OSDefaults[ostype]) {
ostype = 'generic';
diff --git a/www/manager6/qemu/SystemEdit.js b/www/manager6/qemu/SystemEdit.js
index 4b72b274..7422d3e7 100644
--- a/www/manager6/qemu/SystemEdit.js
+++ b/www/manager6/qemu/SystemEdit.js
@@ -57,19 +57,27 @@ Ext.define('PVE.qemu.SystemInputPanel', {
change: 'biosChange',
},
'#': {
- afterrender: 'setMachine',
+ afterrender: 'setDefaults',
},
},
- setMachine: function () {
+ setDefaults: function () {
let me = this;
let vm = this.getViewModel();
+
let ostype = vm.get('current.ostype');
+ let architecture = PVE.Utils.getArchitecture(
+ vm.get('current.architecture'),
+ vm.get('nodename'),
+ );
+
+ let defaults = PVE.qemu.OSDefaults.getDefaults(ostype, architecture);
if (ostype === 'win11') {
- me.lookup('machine').setValue('q35');
- me.lookup('bios').setValue('ovmf');
me.lookup('addtpmbox').setValue(true);
}
+
+ me.lookup('machine').setValue(defaults.machine ?? '__default__');
+ me.lookup('bios').setValue(defaults.bios ?? '__default__');
},
},
--
2.47.3
More information about the pve-devel
mailing list