forked from pool/mkosi
704f5e84ab
- update to v14: * mkosi now creates distro~release subdirectories inside the build, cache and output directories for each distro~release combination that is built. This allows building for multiple distros without throwing away the results of a previous distro build every time. * The preferred names for mkosi configuration files and directories are now mkosi.conf and mkosi.conf.d/ respectively. The old names (mkosi.default and mkosi.default.d) have been removed from the docs but are still supported for backwards compatibility. * plain_squashfs type images will now also be named with a .raw suffix. * tar type images will now respect the --compress option. * Pacman's SigLevel option was changed to use the same default value as used on Arch which is SigLevel = Required DatabaseOptional. If this results in keyring errors, you need to update the keyring by running * Support for CentOS 7 was dropped. If you still need to support CentOS 7, we recommend using any mkosi version up to 13. * Support for BIOS/grub was dropped. because EFI hardware is widely available and legacy BIOS systems do not support the feature set to fully verify a boot chain from firmware to userland and it has become bothersome to maintain for little use. * To generate BIOS images you can use any version of mkosi up to mkosi 13 or the new --bios-size option. This can be used to add a BIOS boot partition of the specified size on which grub (or any other bootloader) can be installed with the help of mkosi's script support (depending on your needs most likely mkosi.postinst or mkosi.finalize). This method can also be used for other EFI bootloaders that mkosi intentionally does not support. * mkosi now unconditionally copies the kernel, initrd and kernel cmdline from the image that were previously only copied out for Qemu boot. * mkosi now runs apt and dpkg on the host. As such, we now require apt and OBS-URL: https://build.opensuse.org/request/show/1039896 OBS-URL: https://build.opensuse.org/package/show/Virtualization/mkosi?expand=0&rev=14
188 lines
11 KiB
Plaintext
188 lines
11 KiB
Plaintext
-------------------------------------------------------------------
|
|
Sat Dec 3 22:08:17 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to v14:
|
|
* mkosi now creates distro~release subdirectories inside the build, cache
|
|
and output directories for each distro~release combination that is
|
|
built. This allows building for multiple distros without throwing away
|
|
the results of a previous distro build every time.
|
|
* The preferred names for mkosi configuration files and directories are
|
|
now mkosi.conf and mkosi.conf.d/ respectively. The old names
|
|
(mkosi.default and mkosi.default.d) have been removed from the docs but
|
|
are still supported for backwards compatibility.
|
|
* plain_squashfs type images will now also be named with a .raw suffix.
|
|
* tar type images will now respect the --compress option.
|
|
* Pacman's SigLevel option was changed to use the same default value as
|
|
used on Arch which is SigLevel = Required DatabaseOptional. If this
|
|
results in keyring errors, you need to update the keyring by running
|
|
* Support for CentOS 7 was dropped. If you still need to support CentOS 7,
|
|
we recommend using any mkosi version up to 13.
|
|
* Support for BIOS/grub was dropped. because EFI hardware is widely
|
|
available and legacy BIOS systems do not support the feature set to
|
|
fully verify a boot chain from firmware to userland and it has become
|
|
bothersome to maintain for little use.
|
|
* To generate BIOS images you can use any version of mkosi up to mkosi 13
|
|
or the new --bios-size option. This can be used to add a BIOS boot
|
|
partition of the specified size on which grub (or any other bootloader)
|
|
can be installed with the help of mkosi's script support (depending on
|
|
your needs most likely mkosi.postinst or mkosi.finalize). This method
|
|
can also be used for other EFI bootloaders that mkosi intentionally does
|
|
not support.
|
|
* mkosi now unconditionally copies the kernel, initrd and kernel cmdline
|
|
from the image that were previously only copied out for Qemu boot.
|
|
* mkosi now runs apt and dpkg on the host. As such, we now require apt and
|
|
dpkg to be installed on the host along with debootstrap in order to be
|
|
able to build debian/ubuntu images.
|
|
* Split dm-verity artifacts default names have been changed to match what
|
|
systemd and other tools expect: image.root.raw, image.root.verity,
|
|
image.root.roothash, image.root.roothash.p7s (same for usr variants).
|
|
* mkosi will again default to the same OS release as the host system when
|
|
the host system uses the same distribution as the image that's being
|
|
built.
|
|
* By default, mkosi will now change the owner of newly created directories
|
|
to SUDO_UID or PKEXEC_UID if defined, unless --no-chown is used.
|
|
* If systemd-nspawn v252 or newer is used, bind-mounted directories with
|
|
systemd-nspawn will use the new rootidmap option so files and
|
|
directories created from within the container will be owned by the
|
|
actual directory owner on the host.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Sep 26 06:08:52 UTC 2022 - Sebastian Wagner <sebix+novell.com@sebix.at>
|
|
|
|
- update to version 13:
|
|
- The `--network-veth` option has been renamed to `--netdev`. The old name made
|
|
sense with virtual ethernet devices, but when booting images with qemu a
|
|
TUN/TAP device is used instead.
|
|
- The network config file installed by mkosi when the `--netdev` (previously
|
|
`--network-veth`) option is used (formerly
|
|
`/etc/systemd/network/80-mkosi-network-veth.network` in the image) now only
|
|
matches network interfaces using the `virtio_net` driver. Please make sure
|
|
you weren't relying on this file to configure any network interfaces other
|
|
than the tun/tap virtio-net interface created by mkosi when booting the image
|
|
in QEMU with the `--netdev` option. If you were relying on this config file
|
|
to configure other interfaces, you'll have to re-create it with the correct
|
|
match and a lower initial number in the filename to make sure
|
|
`systemd-networkd` will keep configuring your interface, e.g. via the
|
|
`mkosi.skeleton` or `mkosi.extra` trees or a `mkosi.postinst` script.
|
|
- The `kernel-install` script for building unified kernel images has been
|
|
removed. From v13 onwards, on systems using `kernel-install`, `mkosi` won't
|
|
automatically build new unified kernel images when a kernel is updated or
|
|
installed. To keep the old behavior, you can install the `kernel-install`
|
|
script manually via a skeleton tree; a copy can be found
|
|
[here](https://github.com/systemd/mkosi/blob/3798eb0c2ebcdf7dac207a559a3cb5a65cdb77b0/mkosi/resources/dracut_unified_kernel_install.sh).
|
|
- New `QemuKvm` option configures whether to use KVM when running `mkosi qemu`.
|
|
- `mkosi` will not default to the same OS release as the host system anymore
|
|
when the host system uses the same distribution as the image that's being
|
|
built. Instead, when no release is specified, mkosi will now always default
|
|
to the default version embedded in mkosi itself.
|
|
- `mkosi` will now use the `pacman` keyring from the host when building Arch
|
|
images. This means that users will, on top of installing `archlinux-keyring`,
|
|
also have to run `pacman-key --init` and `pacman-key --populate archlinux` on
|
|
the host system to be able to build Arch images. Also, unless the package
|
|
manager is configured to do it automatically, the host keyring will have to
|
|
be updated after `archlinux-keyring` updates by running `pacman-key
|
|
--populate archlinux` and `pacman-key --updatedb`.
|
|
- Direct qemu linux boot is now supported with `BootProtocols=linux`. When
|
|
enabled, the kernel image, initrd, and cmdline will be extracted from the
|
|
image and passed to `qemu` by `mkosi qemu` to directly boot into the kernel
|
|
image without a bootloader. This can be used to boot for example s390x images
|
|
in `qemu`.
|
|
- The initrd will now always be rebuilt after the extra trees and build
|
|
artifacts have been installed into the image.
|
|
- The github action has been migrated to Ubuntu Jammy. To migrate any jobs
|
|
using the action, add `runs-on: ubuntu-22.04` to the job config.
|
|
- All images are now configured by default with the `C.UTF-8` locale.
|
|
- New `--repository-directory` option can be used to configure a directory with
|
|
extra repository files to be used by the package manager when building an
|
|
image. Note that this option is currently only supported for `pacman` and
|
|
`dnf`-based distros.
|
|
- Option `--skeleton-tree` is now supported on Debian-based distros.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Dec 3 14:55:35 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>
|
|
|
|
- Enable build on aarch64
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Dec 3 06:59:38 UTC 2021 - Sebastian Wagner <sebix+novell.com@sebix.at>
|
|
|
|
- update to version 12:
|
|
- Fix handling of baselayout in Gentoo installations.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Nov 25 20:29:17 UTC 2021 - Sebastian Wagner <sebix+novell.com@sebix.at>
|
|
|
|
- update to version 11:
|
|
- Support for Rocky Linux, Alma Linux, and Gentoo has been added!
|
|
- A new `ManifestFormat=` option can be used to generate "manifest" files that
|
|
describe what packages were installed. With `json`, a JSON file that shows
|
|
the names and versions of all installed packages will be created. With
|
|
`changelog`, a longer human-readable file that shows package descriptions and
|
|
changelogs will be generated. This latter format should be considered
|
|
experimental and likely to change in later versions.
|
|
- A new `RemovePackages=` option can be used to uninstall packages after the
|
|
build and finalize scripts have been done. This is useful for the case where
|
|
packages are required by the build scripts, or pulled in as dependencies
|
|
for scriptlets of other packages, but are not necessary in the final image.
|
|
- A new `BaseImage=` option can be used to build "system extensions" a.k.a.
|
|
"sysexts" — partial images which are mounted on top of an existing system
|
|
to provide additional files under `/usr/`. See the
|
|
[systemd-sysext man page](https://www.freedesktop.org/software/systemd/man/systemd-sysext.html)
|
|
for more information.
|
|
- A new `CleanPackageMetadata=` option can be used to force or disable the
|
|
removal of package manager files. When this option is not used, they are
|
|
removed when the package manager is not installed in the final image.
|
|
- A new `UseHostRepositories=` option instructs mkosi to use repository
|
|
configuration from the host system, instead of the internal list.
|
|
- A new `SshAgent=` option configures the path to the ssh agent.
|
|
- A new `SshPort=` option overrides the port used for ssh.
|
|
- The `Verity=` setting supports a new value `signed`. When set, verity data
|
|
will be signed and the result inserted as an additional partition in the
|
|
image. See https://systemd.io/DISCOVERABLE_PARTITIONS for details about
|
|
signed disk images. This information is used by `systemd-nspawn`,
|
|
`systemd-dissect`, `systemd-sysext`, `systemd-portabled` and `systemd`'s
|
|
`RootImage=` setting (among others) to cryptographically validate the image
|
|
file systems before use.
|
|
- The `--build-environment=` option was renamed to `--environment=` and
|
|
extended to cover *all* invoked scripts, not just the `mkosi.build`.
|
|
The old name is still understood.
|
|
- With `--with-network=never`, `dnf` is called with `--cacheonly`, so that the
|
|
package lists are not refreshed. This gives a degree of reproducibility when
|
|
doing repeated installs with the same package set (and also makes installs
|
|
significantly faster).
|
|
- The `--debug=` option gained a new value `disk` to show information about disk
|
|
sized and partition allocations.
|
|
- Some sections and settings have been renamed for clarity: [Packages] is now
|
|
[Content], `Password=`, `PasswordIsHashed=`, and `Autologin=` are now in
|
|
[Content]. The old names are still supported, but not documented.
|
|
- When `--prepare-script=`/`--build-script=`/`--finalize-script=` is used with
|
|
an empty argument, the corresponding script will not be called.
|
|
- Python 3.7 is the minimal supported version.
|
|
- Note to packagers: the Python `cryptography` module is needed for signing
|
|
of verity data.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 20 12:18:38 UTC 2021 - Enrico Belleri <idesmi@protonmail.com>
|
|
|
|
- Update to version 10
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jan 3 09:36:40 UTC 2020 - Sven Marquardt <dev@mail.smarquardt.space>
|
|
|
|
- update to version 5
|
|
* no changelog available
|
|
* merged upstream
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Feb 12 19:22:30 UTC 2018 - sebix+novell.com@sebix.at
|
|
|
|
- update to version 4
|
|
* no changelog available
|
|
* removed 109.patch, merged upstream
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jun 29 16:20:46 UTC 2017 - sebix+novell.com@sebix.at
|
|
|
|
- initial package
|
|
- Add 109.patch from pull request at upstream repository, workaround for boo#1049997 and missing support for https URLs in mkosi/zypper
|