Nix-caliga options
All nix-caliga options are disabled by default.
You can pick and choose which parts of nix-caliga you want to make use of.
Setting Base Image OS
config.caliga.os is optional, can be left empty.
Selects the base operating system of the bootc image. This sets OS-specific defaults such as SELinux, and system group GIDs to match those already present in the base image.
Currently Available:
- Fedora(
fedora) Fedora bootc base images - Bluefin-dakota(
gnomeOS) projectbluefin/dakota
Enabling All Core Options
config.caliga.core.enable enables all core modules: etc-usr, systemd, tmpfiles, and users.
SELinux is controlled separately through config.caliga.core.selinux.enable and is set automatically based on config.caliga.os.
Individual Core Modules
Each module can be enabled independently:
config.caliga.core.etc-usr.enable- Enables
/etcand/usrfile generation. Required by most other modules. See etc-usr.
- Enables
config.caliga.core.systemd.enable- Enables systemd unit generation. See systemd.
config.caliga.core.tmpfiles.enable- Enables
config.systemd.tmpfilesrule management.
- Enables
config.caliga.core.users.enable- Enables user and group management through userborn. See users-groups.
config.caliga.core.selinux.enable- Enables SELinux file context labeling. See selinux.
Environment
config.caliga.core.environment.linkCurrentSystem- Create a
/run/current-system/swsymlink toconfig.system.pathso NixOS and home-manager modules referencing/run/current-system/sw/binresolve. Defaults totrue. See etc-usr.
- Create a
Containerfile
config.caliga.core.containerfile configures an optional podman build step that runs after streamLayeredImage. Some operations (such as initramfs regeneration) cannot be done inside streamLayeredImage and require a Containerfile instead. See buildImage.
config.caliga.core.containerfile.enable- Apply a Containerfile on top of the
streamLayeredImageoutput. Defaults tofalse.
- Apply a Containerfile on top of the
config.caliga.core.containerfile.file- Path to a custom Containerfile. If set, takes full precedence — any commands from
config.caliga.core.containerfile.extraCommandsor generated commands (e.g. fromconfig.bootc.initramfs.regenerate.enable) are not used.
- Path to a custom Containerfile. If set, takes full precedence — any commands from
config.caliga.core.containerfile.extraCommands- Additional Containerfile commands appended to generated commands. Ignored if
config.caliga.core.containerfile.fileis set.
- Additional Containerfile commands appended to generated commands. Ignored if