hypervisor: implement base vs desktop variants with GUI packages only for desktop
- Split guest-agents/packages.ks into base.ks (qemu-guest-agent) and gui.ks (spice-vdagent) - Move hypervisor modifier from variant_type.hypervisor to dedicated modifier section - Added hypervisor modifier with base (headless) and desktop (GUI) options - Create hypervisor-desktop variant with desktop: gnome for GUI hypervisors - Update generate_recipe.py to recognize hypervisor-desktop variant name This ensures GUI packages (virt-manager, spice-vdagent) are only included in hypervisors with desktop environments, keeping headless hypervisors minimal.
This commit is contained in:
Binary file not shown.
@@ -464,8 +464,8 @@ class RecipeGenerator:
|
||||
# Build base parts
|
||||
parts = [recipe_type.replace('_', '-')]
|
||||
|
||||
# Add variant subname for install variants (desktop, server, hypervisor)
|
||||
if variant_subname and variant_subname in ['desktop', 'server', 'hypervisor']:
|
||||
# Add variant subname for install variants (desktop, server, hypervisor, hypervisor-desktop)
|
||||
if variant_subname and variant_subname in ['desktop', 'server', 'hypervisor', 'hypervisor-desktop']:
|
||||
parts.append(variant_subname)
|
||||
|
||||
# Add hypervisor-type (list, first type only for filename)
|
||||
|
||||
@@ -24,13 +24,6 @@ templates:
|
||||
desktop:
|
||||
server:
|
||||
hypervisor:
|
||||
- fragments/hypervisor/base/packages.ks
|
||||
- fragments/hypervisor/base/services.ks
|
||||
- fragments/hypervisor/base/post-scripts.ks
|
||||
- fragments/repo/rawhide-mirrors.ks
|
||||
- fragments/packages/virtual-machine-manager/packages.ks
|
||||
- fragments/packages/virtual-machine-manager/post-scripts.ks
|
||||
- fragments/guest-agents/packages.ks
|
||||
modifiers:
|
||||
version:
|
||||
"43": fragments/repo/fedora-43-mirrors.ks
|
||||
@@ -58,6 +51,16 @@ templates:
|
||||
amdcpu: fragments/hypervisor/amdcpu.ks
|
||||
intelcpu: fragments/hypervisor/intelcpu.ks
|
||||
intelgpu: fragments/hypervisor/intelgpu.ks
|
||||
hypervisor:
|
||||
base:
|
||||
- fragments/hypervisor/base/packages.ks
|
||||
- fragments/hypervisor/base/services.ks
|
||||
- fragments/hypervisor/base/post-scripts.ks
|
||||
- fragments/guest-agents/base.ks
|
||||
desktop:
|
||||
- fragments/packages/virtual-machine-manager/packages.ks
|
||||
- fragments/packages/virtual-machine-manager/post-scripts.ks
|
||||
- fragments/guest-agents/gui.ks
|
||||
|
||||
# Live recipe - for live-desktop or live-server
|
||||
live:
|
||||
|
||||
@@ -82,34 +82,40 @@ recipes:
|
||||
# Install variants - hypervisor
|
||||
- name: install
|
||||
variants:
|
||||
- name: hypervisor
|
||||
- name: hypervisor
|
||||
version: "rawhide"
|
||||
storage: standard
|
||||
bootloader: grub
|
||||
security: secure
|
||||
hardware-support: true
|
||||
hypervisor: base
|
||||
hypervisor-type:
|
||||
- amdcpu
|
||||
- name: hypervisor
|
||||
version: "rawhide"
|
||||
storage: standard
|
||||
bootloader: grub
|
||||
security: secure
|
||||
hardware-support: true
|
||||
hypervisor: base
|
||||
hypervisor-type:
|
||||
- intelcpu
|
||||
|
||||
# Install variants - hypervisor with desktop
|
||||
- name: install
|
||||
variants:
|
||||
- name: hypervisor-desktop
|
||||
version: "rawhide"
|
||||
desktop: gnome
|
||||
storage: standard
|
||||
bootloader: grub
|
||||
security: secure
|
||||
hardware-support: true
|
||||
hypervisor: true
|
||||
hypervisor-type:
|
||||
- amdcpu
|
||||
- name: hypervisor
|
||||
version: "rawhide"
|
||||
storage: standard
|
||||
bootloader: grub
|
||||
security: secure
|
||||
hardware-support: true
|
||||
hypervisor: true
|
||||
hypervisor-type:
|
||||
- intelcpu
|
||||
- name: hypervisor
|
||||
version: "rawhide"
|
||||
storage: standard
|
||||
bootloader: grub
|
||||
security: secure
|
||||
hardware-support: true
|
||||
hypervisor: true
|
||||
hypervisor: desktop
|
||||
hypervisor-type:
|
||||
- intelcpu
|
||||
- intelgpu
|
||||
initial-setup: desktop
|
||||
|
||||
# Live variants - desktop
|
||||
- name: live
|
||||
|
||||
Reference in New Issue
Block a user