Change: Update recipe generation to use single universal template
- Transition from multi-template (install/live recipe types) to single universal template (proteus) - Remove recipe_type parameter from RecipeGenerator - Update manifest format (remove recipe_type field) - Simplify CLI (remove --type argument, use --output for single generation) - Filename generation now uses primary modifier as first component
This commit is contained in:
+74
-94
@@ -1,96 +1,76 @@
|
||||
# Recipe Templates for Phyllome OS Kickstart Generator
|
||||
# Each template defines the structure for a recipe type
|
||||
# Proteus is a template generator for Phyllome OS
|
||||
# Fragment paths use relative paths from project root
|
||||
# Required elements can all be replaced by a listed modifier
|
||||
# Optional elements add features
|
||||
|
||||
templates:
|
||||
# Install recipe - for desktop, server, or hypervisor
|
||||
install:
|
||||
description: "An install recipe for desktop, server, or hypervisor"
|
||||
base: core
|
||||
required:
|
||||
- core: core/base.ks
|
||||
- { path: repo/fedora-43-mirrors.ks, replaceable: true }
|
||||
- { path: storage/standard.ks, replaceable: true }
|
||||
- { path: bootloader/grub.ks, replaceable: true }
|
||||
- core/locale.ks
|
||||
- core/services.ks
|
||||
- core/network.ks
|
||||
- packages/core-group.ks
|
||||
- packages/fedora-remix.ks
|
||||
- packages/hand-picked.ks
|
||||
- { path: core/security/enabled.ks, replaceable: true }
|
||||
- { path: initial-setup/server/config.ks, replaceable: true }
|
||||
modifiers:
|
||||
version:
|
||||
"43": repo/fedora-43-mirrors.ks
|
||||
"rawhide": repo/rawhide-mirrors.ks
|
||||
storage:
|
||||
standard: storage/standard.ks
|
||||
encrypted: storage/encrypted.ks
|
||||
desktop:
|
||||
gnome:
|
||||
- desktop/gnome/config.ks
|
||||
- desktop/gnome/packages.ks
|
||||
- desktop/gnome/post-scripts.ks
|
||||
labwc:
|
||||
- desktop/labwc/config.ks
|
||||
security:
|
||||
secure: core/security/enabled.ks
|
||||
"off": core/security/disabled.ks
|
||||
initial-setup:
|
||||
server: initial-setup/server/config.ks
|
||||
desktop: initial-setup/desktop/config.ks
|
||||
gnome: initial-setup/gnome/config.ks
|
||||
generic-wayland: initial-setup/generic-wayland/config.ks
|
||||
hypervisor_type:
|
||||
amdcpu: hypervisor/amdcpu.ks
|
||||
intelcpu: hypervisor/intelcpu.ks
|
||||
intelgpu: hypervisor/intelgpu.ks
|
||||
hypervisor:
|
||||
base:
|
||||
- hypervisor/base/packages.ks
|
||||
- hypervisor/base/services.ks
|
||||
- hypervisor/base/post-scripts.ks
|
||||
desktop:
|
||||
- packages/virtual-machine-manager/packages.ks
|
||||
- packages/virtual-machine-manager/post-scripts.ks
|
||||
bootloader:
|
||||
grub: bootloader/grub.ks
|
||||
systemd-boot: bootloader/systemd-boot.ks
|
||||
optional:
|
||||
hardware-support: packages/hardware-support.ks
|
||||
guest-agents: guest-agents/base.ks
|
||||
|
||||
# Live recipe - for live-desktop or live-server
|
||||
live:
|
||||
description: "A live recipe for live-desktop or live-server"
|
||||
base: live-core
|
||||
required:
|
||||
- live-core: live/core/base.ks
|
||||
- { path: repo/fedora-43-mirrors.ks, replaceable: true }
|
||||
- { path: live/core/storage.ks, replaceable: true }
|
||||
- { path: live/core/bootloader/grub.ks, replaceable: true }
|
||||
- core/locale.ks
|
||||
- core/services.ks
|
||||
- core/network.ks
|
||||
- live/core/packages.ks
|
||||
- live/post/base.ks
|
||||
- live/post/session.ks
|
||||
- repo/rpmfusion-nonfree.ks
|
||||
modifiers:
|
||||
version:
|
||||
"43": repo/fedora-43-mirrors.ks
|
||||
"rawhide": repo/rawhide-mirrors.ks
|
||||
storage:
|
||||
standard: live/core/storage.ks
|
||||
encrypted: live/core/storage.ks
|
||||
bootloader:
|
||||
grub: live/core/bootloader/grub.ks
|
||||
systemd-boot: live/core/bootloader/systemd-boot.ks
|
||||
optional:
|
||||
hardware-support: packages/hardware-support.ks
|
||||
guest-agents: guest-agents/base.ks
|
||||
hypervisor: live/hypervisor.ks
|
||||
security:
|
||||
secure: core/security/enabled.ks
|
||||
"off": core/security/disabled.ks
|
||||
name: proteus
|
||||
description: "Universal template to generate kickstart recipes for a server, a desktop or a hypervisor system"
|
||||
required:
|
||||
repository:
|
||||
"f43": repo/fedora-43-mirrors.ks
|
||||
core:
|
||||
"base": core/base.ks
|
||||
bootloader:
|
||||
"grub": bootloader/grub.ks
|
||||
storage:
|
||||
"ext4": storage/standard.ks
|
||||
locale:
|
||||
"fr_CH": core/locale.ks
|
||||
services:
|
||||
"minimal": core/services.ks
|
||||
network:
|
||||
"network-manager": core/network.ks
|
||||
packages:
|
||||
"core": packages/core.ks
|
||||
brand:
|
||||
"fedora-remix": packages/fedora-remix.ks
|
||||
extra:
|
||||
"extra": packages/hand-picked.ks
|
||||
security:
|
||||
"enabled": core/security/enabled.ks
|
||||
initial-setup:
|
||||
"server": initial-setup/server/config.ks
|
||||
modifiers:
|
||||
repository:
|
||||
"rawhide": repo/rawhide-mirrors.ks
|
||||
storage:
|
||||
"encrypted": storage/encrypted.ks
|
||||
security:
|
||||
"disabled": core/security/disabled.ks
|
||||
initial-setup:
|
||||
gnome: initial-setup/gnome/config.ks
|
||||
generic-wayland: initial-setup/generic-wayland/config.ks
|
||||
live:
|
||||
core:
|
||||
"live-base": livecore/base.ks
|
||||
bootloader:
|
||||
"systemd-boot": live/core/bootloader/systemd-boot.ks
|
||||
packages:
|
||||
"live-core": live/core/packages.ks
|
||||
optional:
|
||||
hardware-support: packages/hardware-support.ks
|
||||
guest-agents: guest-agents/base.ks
|
||||
hypervisor: live/hypervisor.ks
|
||||
desktop:
|
||||
gnome:
|
||||
- desktop/gnome/config.ks
|
||||
- desktop/gnome/packages.ks
|
||||
- desktop/gnome/post-scripts.ks
|
||||
labwc:
|
||||
- desktop/labwc/config.ks
|
||||
hypervisor_type:
|
||||
amdcpu: hypervisor/amdcpu.ks
|
||||
intelcpu: hypervisor/intelcpu.ks
|
||||
intelgpu: hypervisor/intelgpu.ks
|
||||
hypervisor:
|
||||
base:
|
||||
- hypervisor/base/packages.ks
|
||||
- hypervisor/base/services.ks
|
||||
- hypervisor/base/post-scripts.ks
|
||||
desktop:
|
||||
- packages/virtual-machine-manager/packages.ks
|
||||
- packages/virtual-machine-manager/post-scripts.ks
|
||||
post:
|
||||
live:
|
||||
- base: live/post/base.ks
|
||||
- session: live/post/session.ks
|
||||
|
||||
Reference in New Issue
Block a user