setup-mkosi
Version updated for systemd/mkosi to version v19.
- This action is used across all versions by 214 repositories.
Go to the GitHub Marketplace to find the latest changes.
Release notes
- Support for RHEL was added!
- Added
journalctlandcoredumpctlverbs for running the respective tools on built directory or disk images. - Added a
burnverb to write the output image to a block device. - Added a new
espoutput format, which is large similar to the existingukioutput format but wraps it in a disk image with only an ESP. Presetswere renamed toImages.mkosi.images/is now used instead ofmkosi.presets/, thePresets=setting was renamed toImages=and thePresetssection was merged into theConfigsection. The old names can still be used for backwards compatibility.- Added profiles to support building variants of the same image in one repository. Profiles can be defined in
mkosi.profiles/and one can be selected using the newProfile=setting. - mkosi will now parse
mkosi.local.confbefore any other config files if that exists. - Added a kernel-install plugin. This is only shipped in source tree and not included in the Python module.
- Added a
--jsonoption to get the output ofmkosi summaryas JSON. - Added shorthand
-afor--autologin. - Scripts with the
.chrootextension are now executed in the image automatically. - Added
rpmhelper script to haverpmautomatically operate on the image when running scripts. - Added
mkosi-as-callerhelper script that can be used in scripts to run commands as the user invoking mkosi. mkosi-chrootwill now start a shell if no arguments are specified.- Added
WithRecommends=to configure whether to install recommended packages by default or not where this is supported. It is disabled by default. - Added
ToolsTreeMirror=setting for configuring the mirror to use for the default tools tree. WithDocs=is now enabled by default.- Added
BuildSourcesEphemeral=to make source directories ephemeral when running scripts. This means any changes made to source directories while running scripts will be undone after the scripts have finished executing. - Added
QemuDrives=to have mkosi create extra qemu drives and pass them to qemu when using theqemuverb. - Added
BuildSources=match to match against configured build source targets. PackageManagerTrees=was moved to theDistributionsection.- We now automatically configure the qemu firmware, kernel cmdline and initrd based on what type of kernel is passed by the user via
-kernelorQemuKernel=. - The mkosi repository itself now ships configuration to build basic bootable images that can be used to test mkosi.
- Added support for enabling
updates-testingrepositories for Fedora. - GPG keys for CentOS, Fedora, Alma and Rocky are now looked up locally first before fetching them remotely.
- Signatures are not required for local packages on Arch anymore.
- Packages on opensuse are now always downloaded in advance before installation when using zypper.
- The tar output is now reproducible.
- We now make sure
gitcan be executed from mkosi scripts without running into permission errors. - We don’t create subdirectories beneath the configured cache directory anymore.
- Workspace directories are now created outside of any source directories. mkosi will either use
XDG_CACHE_HOME,$HOME/.cacheor/var/tmpdepending on the situation. - Added environment variable
MKOSI_DNFto override which dnf to use for building images (dnfordnf5). - The rootfs can now be modified when running build scripts (with all changes thrown away after the last build script has been executed).
- mkosi now fails if configuration specified via the CLI does not apply to any image (because it is overridden).
- Added a new doc on building rpms from source with mkosi (
docs/building-rpms-from-source.md). /etc/resolv.confwill now only be mounted for scripts when they are run with network access.