- Added `VolatilePackages=` and `InitrdVolatilePackages=` to configure
packages that should be installed after executing build scripts and
which should not be cached when using `Incremental=`.
+- `PackageDirectories=` now has an associated default path
+ `mkosi.packages`.
+- `reprepro` is now used to generate local apt repositories.
+- Support for BSD tar/cpio was dropped.
+- When both `ExtraSearchPaths=` and `ToolsTree=` are used, mkosi will
+ now prefer running a binary found in `ExtraSearchPaths=` without the
+ tools tree over running the binary from the tools tree. If a binary is
+ not found in `ExtraSearchPaths=`, the tools tree is used instead.
+- An artifact directory is now made available when running scripts which
+ can be used to pass around data between different scripts. mkosi will
+ also look for microcode and initrds in the artifact directory under
+ the `io.mkosi.microcode` and `io.mkosi.initrd` subdirectories.
+- Added `Environment=` match setting to check for environment variables
+ defined with the `Environment=` setting.
+- The `basesystem` package is now always installed in Fedora and
+ CentOS images instead of the `filesystem` package.
+- The `qemu`, `shell` and `boot` verbs do not automatically build the
+ image anymore unless `--force` is specified.
+- `SplitArtifacts=` is now supported for the portable, sysext and
+ confext outputs.
+- The `WithDocs=` option was implemented for pacman-based distributions.
+- The default Fedora release was bumped to 40.
+- `QemuSwtpm=` can now be used with `QemuFirmware=` set to `linux` or
+ `bios`.
+- Added `UnitProperties=` to allow configure properties on the scopes
+ generated by `systemd-nspawn` and `systemd-run`.
+- mkosi now only builds a single default tools tree per build using the
+ settings from the last regular image that we'll build.
+- Configure scripts are now only executed for verbs which imply an image
+ build and are executed with the tools tree instead of without it.
+- `$QEMU_ARCHITECTURE` is now set for configure scripts to easily allow
+ scripts to figure out which qemu binary will be used to run qemu.
+- A file ID can now be specified for `QemuDrives=`. This allows adding
+ multiple qemu drives that are backed by the same file.
+- mkosi doesn't fail anymore if images already exist when running
+ `mkosi build`.
+- Image names from `mkosi.images/` are now preferred over the specified
+ image ID when determining the output filename to use for an image.
+- `--include` now has a shorthand option `-I`.
+- The `WITH_NETWORK` environment variable is now passed to build and
+ finalize scripts.
+- We now clamp mtimes to the specified source date epoch timestamp
+ instead of resetting all mtimes. This means that we won't touch any
+ mtimes that are already older than the given source date epoch
+ timestamp.
+- Removed support for CentOS 8 Stream as it is now EOL.
+- The `coredumpctl` and `journalctl` verbs now operrate on the path
+ specified in `ForwardJournal=` if one is set.
+- Added `UnifiedKernelImage=` format setting to allow configuring the
+ naming of unified kernel images generated by mkosi.
+- The `versionlock` plugin is now enabled by default for dnf with a noop
+ configuration.
+- `Repositories=` is now implemented for zypper.
## v22