Skip to content

Instantly share code, notes, and snippets.

@achilleas-k
Last active September 3, 2025 08:53
Show Gist options
  • Select an option

  • Save achilleas-k/299e672077eef017a2797645838e5ab4 to your computer and use it in GitHub Desktop.

Select an option

Save achilleas-k/299e672077eef017a2797645838e5ab4 to your computer and use it in GitHub Desktop.

Supported, required, and unsupported config keys for each distro

As of 738d6d986a80c1bbc02e12c190eba8ffe732f1e1.

Fedora

From checkOptionsFedora().

  1. ostree options are not supported for non-ostree types
  2. containers are not supported for ostree derived images (only iot-commit and iot-container)
  3. ostree ISOs require ostree.url
    • NOTE: The URL should also be required for IoT disk types
  4. iot-raw-xz and iot-qcow2 support:
    • customizations.user and customizations.group
    • customizations.directories and customizations.files
    • customizations.services
    • customizations.fips
  5. iot-simplified-installer requires customizations.installation_device
  6. iot-simplified-installer supports:
    • customizations.installation_device
    • customizations.fdo
      • NOTE: only one of the four sub-options can be set at a time
    • customizations.ignition
      • NOTE: only one of the two sub-options can be set at a time
      • NOTE: customizations.ignition.firstboot requires setting customizations.firstboot.provisioning_url
    • customizations.kernel
    • customizations.user and customizations.group
    • customizations.fips
  7. iot-installer and minimal-installer support:
    • customizations.user and customizations.group
    • customizations.fips
    • customizations.installer
    • customizations.timezone
    • customizations.locale
  8. worstation-live-installer supports:
    • customizations.installer
  9. iot-commit, iot-container, and iot-installer do not support customizations.kernel.append
  10. customizations.disk and customizations.filesystem are not supported by ostree types
  11. iot-simplified-installer does not support customizations.installer

RHEL 8

From checkOptionsRhel8().

  1. ostree options are not supported for non-ostree types
  2. containers are not supported for ostree derived images (only edge-commit and edge-container)
  3. ostree ISOs (edge-installer, edge-simplified-installer) and disks (edge-raw-image, edge-ami) require ostree.url
  4. edge-simplified-installer requires customizations.installation_device
  5. edge-simplified-installer supports:
    • customizations.installation_device
    • customizations.fdo
      • NOTE: only one of the four sub-options can be set at a time
    • customizations.user and customizations.group
    • customizations.fips
  6. edge-installer supports:
    • customizations.user and customizations.group
    • customizations.fips
    • customizations.installer
    • customizations.timezone
    • customizations.locale
  7. edge-raw-image supports:
    • customizations.user and customizations.group
    • customizations.fips
  8. edge-commit, edge-container, and edge-installer do not support customizations.kernel.append
  9. customizations.disk does not support fs_type = "swap" when arch = "aarch64"
  10. edge-commit and edge-container do not support customizations.filesystem and customizations.disk
  11. customizations.oscap is not supported when distro = "rhel-9.0"
    • This was probably copy-pasted from the unified RHEL version of the checkOptions() function.
  12. image-installer, edge-installer, and live-installer support customizations.installer

RHEL 9

From checkOptionsRhel9().

  1. containers are not supported for ostree derived images (only edge-commit and edge-container)
  2. ostree options are not supported for non-ostree types
  3. ostree ISOs (edge-installer, edge-simplified-installer) and disks (edge-raw-image, edge-ami, edge-vsphere) require ostree.url
  4. edge-simplified-installer requires customizations.installation_device
  5. edge-simplified-installer supports:
    • customizations.installation_device
    • customizations.fdo
      • NOTE: only one of the four sub-options can be set at a time
    • customizations.ignition
      • NOTE: only one of the two sub-options can be set at a time
      • NOTE: customizations.ignition.firstboot requires setting customizations.firstboot.provisioning_url
    • customizations.kernel
    • customizations.user and customizations.group
    • customizations.fips
    • customizations.filesystem
  6. edge-installer supports:
    • customizations.user and customizations.group
    • customizations.fips
    • customizations.installer
    • customizations.timezone
    • customizations.locale
  7. edge-raw-image, edge-ami, and edge-vsphere support:
    • customizations.ignition
    • customizations.kernel
    • customizations.user and customizations.group
    • customizations.fips
    • customizations.filesystem
  8. edge-commit, edge-container, and edge-installer do not support customizations.kernel.append
  9. edge-container and edge-commit do not support customizations.disk and customizations.filesystem
  10. customizations.oscap is not supported when distro = "rhel-9.0"
  11. image-installer, edge-installer, and live-installer support customizations.installer
  12. azure-cvm does not support customizations.kernel

RHEL 10

  1. image-installer and live-installer support customizations.installer

General notes

  • OSTree installers come in two flavours, edge/iot-installer and edge/iot-simplified-installer. The simplified-installer variant is an edge/iot-raw-image wrapped in an ISO (with the CoreOS installer for provisioning), so all customizations supported by the edge/iot-raw-image apply to the simplified-installer, but take effect on the disk image itself.
  • Anything that supports customizations.filesystem should also support customizations.disk.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment