- create generate_recipe.py for universal template recipe generation - support cartesian product expansion from recipes_manifest.yaml - generate 72 unique recipes with proper filename disambiguation - update Makefile with simplified validation using ksflatten - keep ksflatten-relative script as-is for dish flattening The generator reads recipe_templates.yaml and recipes_manifest.yaml to produce recipe files that ksflatten then flattens into final dishes.
81 lines
2.3 KiB
YAML
81 lines
2.3 KiB
YAML
# Recipe Manifest for Phyllome OS
|
|
# Define all recipe variants using generators from recipe_templates.yaml
|
|
# Edit this file to add new variants, then run: make generate-recipes
|
|
#
|
|
# Supported syntax:
|
|
# - Single values: version: "43"
|
|
# - List values: version: ["43", "rawhide"] (expands to multiple variants)
|
|
# - List modifiers: hypervisor_type: ["amdcpu", "intelcpu"] (expands to separate variants)
|
|
#
|
|
# NOTE: List values create a cartesian product.
|
|
# Example: version: ["43", "rawhide"] + storage: ["standard", "encrypted"]
|
|
# creates 4 variants: (43,standard), (43,encrypted), (rawhide,standard), (rawhide,encrypted)
|
|
#
|
|
# NOTE: The 'name' field is no longer used with the universal template.
|
|
# It can be kept for organization but doesn't affect generated filenames.
|
|
|
|
recipes:
|
|
# Desktop variants
|
|
- name: desktop
|
|
variants:
|
|
- version: ["43", "rawhide"]
|
|
desktop: gnome
|
|
storage: ["standard", "encrypted"]
|
|
bootloader: ["grub", "systemd-boot"]
|
|
hardware-support: [true, false]
|
|
guest-agents: [true, false]
|
|
initial-setup: server
|
|
security: ["enabled", "disabled"]
|
|
|
|
# Server variants
|
|
- name: server
|
|
variants:
|
|
- version: ["43", "rawhide"]
|
|
storage: standard
|
|
bootloader: grub
|
|
hardware-support: false
|
|
guest-agents: true
|
|
initial-setup: server
|
|
security: secure
|
|
|
|
# Hypervisor variants
|
|
- name: hypervisor
|
|
variants:
|
|
- version: 43
|
|
storage: standard
|
|
bootloader: grub
|
|
hardware-support: true
|
|
guest-agents: false
|
|
hypervisor: base
|
|
hypervisor_type: ["amdcpu", "intelcpu"]
|
|
initial-setup: server
|
|
security: secure
|
|
|
|
# Desktop-hypervisor variants
|
|
- name: desktop-hypervisor
|
|
variants:
|
|
- version: 43
|
|
desktop: gnome
|
|
storage: standard
|
|
bootloader: grub
|
|
hardware-support: false
|
|
guest-agents: true
|
|
hypervisor: desktop
|
|
hypervisor_type: ["amdcpu", "intelcpu"]
|
|
initial-setup: server
|
|
security: secure
|
|
|
|
# Live desktop variants
|
|
- name: desktop-live
|
|
variants:
|
|
- version: 43
|
|
hardware-support: true
|
|
guest-agents: false
|
|
|
|
# Live server variants
|
|
- name: server-live
|
|
variants:
|
|
- version: 43
|
|
hardware-support: true
|
|
guest-agents: false
|