Files
phyllomeos/cook/recipes_manifest.yaml
T
Lukas Greve 71d236aa15
ci / cook (push) Successful in 12s
ci / cook (pull_request) Successful in 10s
cook: ship the fscrypt stack by default in Phyllome OS
- ingredients/repo/phyllome.ks: add the git.phyllo.me roots registry as a
  downstream repo (install-time only; the phyllome-fscrypt package owns
  /etc/yum.repos.d/phyllome.repo on the installed system)
- ingredients/packages/fscrypt.ks: install phyllome-fscrypt, which pulls
  fscrypt + pam_fscrypt via Requires
- recipe_templates: new 'fscrypt' feature mapping the two fragments
- recipes_manifest: enable fscrypt for phyllomeos and phyllomeos-headless
  (default tier, repository 44)

make lint/validate/test pass; both default dishes regenerate with the
phyllome repo and phyllome-fscrypt included.
2026-09-25 14:22:44 +02:00

127 lines
3.7 KiB
YAML

# Recipe Manifest for Phyllome OS
# Define all recipe variants using ingredients from recipe_templates.yaml.
# Edit this file to add new variants, then run: make all
#
# Tiers: every group belongs to a tier (default: "default"). Only the requested
# tier is generated, so the default build stays tiny:
# default -- the two shipping editions (phyllomeos, phyllomeos-headless)
# guest -- Fedora VM guests to deploy on a Phyllome OS host
# experimental -- one-off variants for testing new dishes
# Build a tier with: make all TIER=guest (or: TIER="default guest", TIER=all)
# Lint always covers every tier.
#
# Syntax:
# - Single values: repository: "44"
# - List values: repository: ["43", "44"] (expands to multiple variants)
# - Booleans: hardware-support: true / false (feature flags)
#
# NOTE: List values create a cartesian product. Keep it out of the default and
# guest tiers; prefer one hand-written variant per experimental dish.
#
# NOTE: The 'name' field prefixes every generated dish/recipe filename, e.g.
# the "phyllomeos" group yields phyllomeos_44_standard_systemd-boot_...cfg.
recipes:
# --- default tier: the two shipping editions -------------------------------
# Phyllome OS with a GUI (GNOME + virt-manager)
- name: phyllomeos
tier: default
variants:
- repository: "44"
desktop: gnome
storage: standard
bootloader: systemd-boot
security: enabled
initial-setup: gnome
hardware-support: true
guest-agents: true
fscrypt: true
hypervisor: desktop
hypervisor_type: any
# Headless Phyllome OS
- name: phyllomeos-headless
tier: default
variants:
- repository: "44"
storage: standard
bootloader: systemd-boot
security: enabled
initial-setup: server
hardware-support: true
guest-agents: true
fscrypt: true
hypervisor: base
hypervisor_type: any
# --- guest tier: VMs to deploy on a Phyllome OS host -------------------------
- name: guest-server
tier: guest
variants:
- repository: "44"
storage: standard
bootloader: systemd-boot
security: enabled
initial-setup: server
hardware-support: false
guest-agents: true
- name: guest-desktop
tier: guest
variants:
- repository: "44"
desktop: gnome
storage: standard
bootloader: systemd-boot
security: enabled
initial-setup: gnome
hardware-support: false
guest-agents: true
# --- experimental tier: single variants, no matrices -------------------------
# BIOS (legacy firmware) laptop: GPT + biosboot partition, GRUB
- name: exp-bios-desktop-hypervisor
tier: experimental
variants:
- repository: "44"
desktop: gnome
storage: biosboot
bootloader: grub
security: enabled
initial-setup: gnome
hardware-support: true
guest-agents: false
hypervisor: desktop
hypervisor_type: any
# Encrypted root
- name: exp-encrypted-headless
tier: experimental
variants:
- repository: "44"
storage: encrypted
bootloader: systemd-boot
security: enabled
initial-setup: server
hardware-support: true
guest-agents: true
hypervisor: base
hypervisor_type: any
# Rawhide
- name: exp-rawhide-headless
tier: experimental
variants:
- repository: rawhide
storage: standard
bootloader: systemd-boot
security: enabled
initial-setup: server
hardware-support: true
guest-agents: true
hypervisor: base
hypervisor_type: any