| Age | Commit message (Collapse) | Author |
|
The zstd RPM is neither part of the default Fedora Silverblue
and Workstation installation [1], nor the Container/Dockerfile and
Kickstart equivalents of the fedora-toolbox images [2,3]. Therefore,
there's no need to need to include it in the KIWI description.
Fallout from d27e4c3f6c3e13bcefe9d1d904386794140d8a91
[1] https://pagure.io/fedora-comps/
[2] https://src.fedoraproject.org/container/fedora-toolbox
https://github.com/containers/toolbox/tree/main/images/fedora
[3] https://pagure.io/fedora-kickstarts/blob/main/f/fedora-container-toolbox.ks
https://pagure.io/fedora-kiwi-descriptions/pull-request/21
|
|
The Container/Dockerfile and Kickstart equivalents of the fedora-toolbox
OCI images installed all locale definitions, translations, and weak
dependencies (barring exceptions) [1,2]. In fact, the Containerfile
tried very hard to restore any content that was stripped out by the
fedora base image. Hence, the KIWI descriptions should do the same.
Sometimes, like in the case of the gawk and gawk-all-langpacks RPMs,
skipping weak dependencies also strips out translations.
The Kickstart files did this by decoupling fedora-container-common.ks
from fedora-container-common.ks [3], and this is the KIWI equivalent of
the same change.
The separate 'packages' elements of types 'bootstrap' and 'image' [4]
are no longer needed and have been fused into one. This avoids the need
to specify the 'ignore' child elements separately.
This change has two workarounds that deserve mention.
First, enabling weak dependencies for the packages that used to come
from the ContainerCore profile pulls in systemd, and config.xml
specifies a keytable for all the KIWI descriptions. These two combined
makes KIWI try to set the keymap/keytable using systemd-firstboot(1),
and it fails the build with:
[ INFO ]: Setting up keytable:
[ DEBUG ]: EXEC: [chroot /path/to/image-root systemd-firstboot --help]
[ DEBUG ]: EXEC: [chroot /path/to/image-root systemd-firstboot --keymap=us]
[ DEBUG ]: EXEC: Failed with stderr: Keymap us is not installed.
, stdout: (no output on stdout)
[ ERROR ]: KiwiCommandError: chroot: stderr: Keymap us is not installed.
, stdout: (no output on stdout)
This has been worked around by making the keymaps available during the
image build through the kbd-misc RPM, which is later uninstalled.
Second, KIWI isn't passing the 'ignore' child elements to DNF [5], and
hence they currently have no effect. This has been worked around by
uninstalling the RPMs later.
Some noteworthy changes in the list of RPMs in the fedora-toolbox image
after this change:
...
+gawk-all-langpacks-5.3.0-3.fc40.x86_64
...
-glibc-2.39.9000-5.fc41.i686
-glibc-gconv-extra-2.39.9000-5.fc41.i686
-glibc-minimal-langpack-2.39.9000-5.fc41.x86_64
...
-libgcc-14.0.1-0.8.fc41.i686
...
+python-unversioned-command-3.12.2-2.fc41.noarch
They are all in line with the latest Kickstart equivalent of the image.
[1] https://src.fedoraproject.org/container/fedora-toolbox
https://github.com/containers/toolbox/tree/main/images/fedora
[2] https://pagure.io/fedora-kickstarts/blob/main/f/fedora-container-toolbox.ks
[3] fedora-kickstarts commit 30f76d387d9e7f5c
https://pagure.io/fedora-kickstarts/c/30f76d387d9e7f5c
https://pagure.io/fedora-kickstarts/pull-request/1002
[4] https://osinside.github.io/kiwi/concept_and_workflow/packages.html
[5] https://github.com/OSInside/kiwi/issues/2499
https://pagure.io/fedora-kiwi-descriptions/pull-request/21
|
|
Otherwise, the build fails with:
$ sudo kiwi-ng \
--type tbz \
--profile Container-Toolbox \
system build \
--description . \
--target-dir ./outdir
[ INFO ]: 01:40:41 | Reading runtime config file: '/etc/kiwi.yml'
[ INFO ]: 01:40:41 | Loading XML description
[ INFO ]: 01:40:41 | Support for multiple markup descriptions
available
[ ERROR ]: 01:40:41 | KiwiTypeNotFound: Build type 'tbz' not found
for applied profiles: ['Container-Toolbox',
'ContainerCore']
Fallout from 0becdd4d43205b8eb136b4b1f9177c046d30a7a4
https://pagure.io/fedora-kiwi-descriptions/pull-request/20
|
|
This incorporates the labels that are expected for Fedora images.
|
|
Anything lower than that causes performance problems.
|
|
If no preference is expressed, sdubby will be selected instead of
grubby, which breaks image builds. Thus, install grubby early to
avoid this issue.
|
|
This ensures that the correct variant packages are installed.
|
|
The service is now enabled via systemd presets.
|
|
These are needed for the images currently being validated in CI.
|
|
This allows building cloud images for POWER systems.
|
|
Most of the Fedora Cloud-owned profiles are limited to a subset of
architectures, generally x86_64 and aarch64 (with the exception of
the VirtualBox Vagrant image, which is x86_64 only).
|
|
|
|
This prepares for the future change to another compositor with Wayland.
|
|
This makes it easier to read what all the settings are.
|
|
Multiple profiles can be defined in a profiles section.
|
|
|
|
This pulls in a number of services to integrate a guest running under
Hyper-V. These services are all automatically activated via udev rules.
|
|
Azure provides an optional "Accelerated Networking" feature. Enabling
this feature when creating a VM enables SR-IOV and provides the guest
with a virtual function.
Supporting this requires two changes. Firstly, the kernel-modules
package is required as it contains the Mellanox drivers required for the
VF provided to the guest. Secondly, the interface needs to be ignored by
NetworkManager or it'll try and fail to bring up the device and the VM
will be unreachable except by serial console. If this is observed, it's
likely new hardware has been deployed and additional drivers need to be
added to the NetworkManager config.
See https://learn.microsoft.com/en-us/azure/virtual-network/accelerated-networking-overview
for details.
|
|
In the event that there's an issue with early boot, setting
earlyprintk=ttyS0 ensures that the messages are routed to the serial
console so it can be debugged.
This particular option is documented as required in the Azure VM
certification FAQ[0].
[0] https://learn.microsoft.com/en-us/partner-center/marketplace/azure-vm-certification-faq#linux-test-cases
|
|
The WALinuxAgent package was already being installed, but the service
was enabled. This ensures it'll start when the VM is created.
|
|
This realigns the configuration into separate files/folders that
would be modified by specific teams (e.g. WGs and SIGs).
|
|
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
This is a variation of Cloud-Base-Generic which boots using UKIs.
This also adds uki-editbootconfig.sh script which makes the
image bootable via "UEFI firmware -> shim.efi -> UKI.efi".
Some background information:
https://fedoraproject.org/wiki/Changes/Unified_Kernel_Support_Phase_2
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
|
This enables building live ISO images for all the various spins.
|
|
This makes adjustments for the script part for configuring images
of the various desktops.
|
|
This adds the basic configuration for Sugar on a Stick.
|
|
This adds desktop environments that are the basis of existing Fedora
Linux spins.
|
|
The initial-setup packages for firstboot were split into their own
comps group that ensures initial-setup-gui is configured to use
kwin as the Wayland compositor.
|
|
This contains the somewhat current reference of the current maintainers
of the various spins.
|
|
As the list of buildable variants grows, it will be harder to maintain
in the main README. Thus, split it out to its own file to keep the
README manageable.
|
|
Once the image build is done, we do not need the working tree
anymore and leaving it around causes it to get archived at the
end of CI runs when it is totally unneeded.
|
|
This has been fixed properly with kiwi 9.25.21.
|
|
This makes the various name+profile combinations more closely
match their official names.
|
|
This adds the definitions for building the container tarballs for
the base container, the minimal base container, and the toolbox
container.
|
|
We now have more than one cloud system that is essentially a KVM
environment that uses cloud-init to boot, so now we declare that
"generic" and have the OpenStack and Oracle images reuse those
definitions.
Also, in preparation for layered cloud image variants, rename
them from "Cloud-" to "Cloud-Base-". Vagrant variants are
similarly prefixed to make it clear who provides them.
Finally, restructure the layout of the tmt plans to match the
description structure.
|
|
|
|
This allows us to have pull requests tested before we review changes
to merge.
|
|
This avoids issues caused by the existence of grubby and sdubby.
|
|
Generally, the kiwi descriptions are in the same directory, but
when this script is being called out-of-tree, it needs to be told
where they are.
|
|
Oracle Cloud images are KVM cloud images, just like the OpenStack
images. Reuse the OpenStack image definition for Oracle Cloud.
|
|
KIWI differentiates between libvirt and VirtualBox based Vagrant
images, especially for the box format, so now we split up the
Vagrant definition accordingly.
|
|
This is not used for Vagrant.
|
|
|
|
|
|
|
|
|