Commit Graph

98 Commits

Author SHA1 Message Date
James Le Cuirot
e50fe0a7e4
sys-firmware/edk2-aarch64: Drop in favour of edk2-bin
edk2-bin now supports multiple platforms, including QEMU on arm64, so we
no longer need to use Fedora's build. Note that the Secure Boot
implementation is currently insecure as it lacks SMM, which is needed to
protect the EFI variable store.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-11-12 12:01:58 +00:00
James Le Cuirot
d1ba9b19fb
Switch from raw (.fd) EDK2 firmware images to QCOW2, plus 4MB on amd64
The new arm64 firmware supporting Secure Boot (see next commit) is in
QCOW2 format only, avoiding the extra space taken up by the 64MB
padding. Supporting both raw and QCOW2 images would be messy, so switch
entirely to QCOW2.

Only the 4MB images are in QCOW2 format on amd64, so also switch away
from the 2MB images. 4MB images are now the default for most
distributions as they are needed to apply certain Windows updates.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-11-12 11:59:40 +00:00
Mathieu Tortuyaux
c80760c999
Merge pull request #1783 from flatcar/kai/proxmox-support
OEM: Provide Proxmox images
2024-11-12 12:52:31 +01:00
Mathieu Tortuyaux
6e674b26d3
oem: provide proxmox images
Co-authored-by: Kai Lüke <pothos@users.noreply.github.com>
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-11-12 12:51:36 +01:00
James Le Cuirot
fb3c9cff98
sys-boot/grub: Apply Red Hat's large patch set (and drop Gentoo's)
We initially thought we would need Red Hat's patch set. Then it looked
like we wouldn't because the TPM Event Log appeared to work without it.
We later discovered that on amd64, it only works with Secure Boot
disabled. The patch set also fixes Secure Boot on arm64, which would
have otherwise needed a couple of patches from Canonical.

We have to drop Gentoo's patches because they conflict, but they don't
affect Flatcar anyway.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-11-07 14:26:04 +00:00
Stephan Fudeus
e4c8caa0ad coreos-modules: Enable kernel-module for mpi3mr 2024-10-02 18:08:46 +02:00
Jeremi Piotrowski
7b8f43756c changelog: Add entry for kernel lockdown changes
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2024-09-17 11:01:06 +02:00
Thilo Fromm
32c40fa1cb
oem-azure: add hyperv daemons (#2309)
* oem-azure: add hyperv daemons

This change adds hyperv daemons hv_fcopy, hv_kvp, and hv_vss to the
Azure and HyperV OEM sysexts. hv_kvp specifically is needed to submit OS version
information to the Azure hypervisor.

The daemons, tough userspace programs, are built from the kernel sources
as they are included in the Linux kernel.

As the ebuild is (somewhat)  kernel specific, it should be updated when the kernel
is updated. Respective additions have been made to the kernel update GitHub actions
automation.

Signed-off-by: Thilo Fromm <thilofromm@microsoft.com>
Co-authored-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-09-12 16:37:25 +02:00
Krzesimir Nowak
f3f51ed2d8 changelog: Add an entry 2024-09-05 15:07:23 +02:00
Krzesimir Nowak
a4ace4e43a changelog: Add an entry 2024-09-02 14:05:56 +02:00
Krzesimir Nowak
559464c489 changelog: Add an entry 2024-08-09 14:12:27 +02:00
Mathieu Tortuyaux
fd2c1a809d
Merge pull request #2141 from flatcar/tormath1/hetzner
coreos-base/afterburn: pull Hetzner patches
2024-07-30 16:09:33 +02:00
Mickaël Salaün
b2be807349
sys-kernel/coreos-modules: Enable Landlock
Landlock is a feature to create security sandboxes thanks to 3 dedicated
system calls.  They are designed to be safe to used by any processes,
which can only drop their privileges, similarly to seccomp.

The new Landlock LSM is build in the kernel (CONFIG_SECURITY_LANDLOCK=y)
but it is not enough to make it usable by default.  As a stackable LSM,
it is required to enable it at boot time with the CONFIG_LSM list.  See
https://docs.kernel.org/userspace-api/landlock.html#kernel-support

As for other stackable LSMs, prepending Landlock to the default LSM list
enables users to potentially get more protection by default by letting
programs sandbox themselves.

As a dependency, CONFIG_SECURITY_PATH=y will be automatically set.

Signed-off-by: Mickaël Salaün <mic@digikod.net>
2024-07-29 15:10:55 +02:00
Mathieu Tortuyaux
696f0168fd
changelog: add entries
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-07-23 12:01:30 +02:00
James Le Cuirot
1d7d53fad9
Upgrade to Catalyst 4
Catalyst 4 has totally changed the way repositories are handled. It only
works when the name of the directory containing the repository matches
the configured name of that repository. This was not the case for us,
with the coreos repository residing in the coreos-overlay directory. We
wanted to move and rename our repositories anyway, but this is a big
change, so we'll do separately. For now, this just renames coreos to
coreos-overlay.

Catalyst 4 also ingests the main repository snapshot as a squashfs
rather than a tarball. It features a utility to generate such a
snapshot, but it doesn't fit Flatcar well, particularly because it
expects each ebuild repository to reside at the top level of its own git
repository. It was very easy to call tar2sqfs manually though.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-07-15 14:27:59 +01:00
Adrian Vladu
6fbfa5c034 grub_install: add changelog for the file removals
Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
2024-06-21 11:10:20 +03:00
Mathieu Tortuyaux
101ef8c4f3
changelog: add entry
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-06-19 15:38:03 +02:00
Mathieu Tortuyaux
5f151a08bc
Merge pull request #1979 from JeWe37/python-sysext
sysext: Add python sysext
2024-06-10 14:26:52 +02:00
Alejandro Ripoll
68cf358c8f OpenStack: Changed metadata hostname source order
Change `flatcar-openstack-hostname.service` to use afterburn `openstack` provider implemented on coreos/afterburn#462  instead of `openstack-metadata`.
BootEngine PR: flatcar/bootengine#96
2024-06-03 14:18:19 +02:00
Jendrik Weise
64c9ed5820 sysext: Add python sysext
Minimal sysext containing dev-lang/python and dev-python/pip.
Enabled ensurepip for python and added required packages from Gentoo.
2024-05-29 19:18:18 +02:00
Krzesimir Nowak
f1636fc6de changelog: Add an entry 2024-05-23 11:19:30 +02:00
Jendrik Weise
cd849d6849 sysext: Add podman sysext
Enabled user session dbus in base image to support podman rootless mode.
Extension images can now be created from multiple packages by seperating
them with a comma. The podman sysext includes app-containers/podman and
net-misc/passt.
It can be enabled by adding podman to /etc/flatcar/enabled-sysext.conf.
Potential TODO: gpgme had to be added as BDEPEND to podman ebuild.
2024-05-03 22:59:36 +09:00
Adrian Vladu
6efe345d89 image: add kubevirt image build
As Ignition supports KubeVirt, add a custom oem for it and also the
required parts to be able to build an image in .qcow2 format that
is already using internal .qcow2 gzip compression.

Fixes: https://github.com/flatcar/Flatcar/issues/1358

Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
2024-04-30 09:19:16 +03:00
Mathieu Tortuyaux
0a7819a5f0
changelog: add entry
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-04-26 09:47:29 +02:00
Jeremi Piotrowski
7a1a004700 changelog: Add entry for azure-nvme-utils 2024-04-24 16:03:31 +00:00
Krzesimir Nowak
413c66fbe3 changelog: Add entries 2024-04-22 16:47:47 +02:00
Julian Tölle
08ba85c6a3 changelog: add entry for hetzner images 2024-04-16 17:08:04 +02:00
Adrian Vladu
ab2cb0fff3 ci-automation/vms: provide Hyper-V images with .zip compression
On Windows, the .bz2 compression format is not supported by native
tooling and external tools like 7zip need to be installed.

Switching to .zip compression, there will be no need for the extra step
of having external tools.

See: https://github.com/flatcar/Flatcar/issues/1009

Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
2024-04-11 15:43:07 +03:00
Kai Lueke
f57a928b4a coreos-base/common-oem-files: Enable flatcar.autologin for OpenStack
So far the console in OpenStack (or Brightbox which shares the image)
was not usable well until one issues a reboot to add the autologin in
the GRUB menu.
Add it by default so that one doesn't need this reboot trick.
2024-04-11 16:48:31 +09:00
Kai Lueke
834d32efa8 build_library/grub.cfg: Enable TPM module by default
For binding a secret to the OS we need TPM PCRs that measure the kernel
and boot configuration (UEFI). Used for:
https://github.com/flatcar/flatcar-website/pull/317
2024-04-09 22:17:18 +09:00
Kai Lueke
de4eb8f755 Set up symlinks for same image artifacts to remove qemu/qemu_uefi_secure
The qemu and qemu_uefi_secure images have the same contents as the
qemu_uefi image which wastes space on the release server. A similar
case is the PXE vmlinuz which is the same as the regular one, too.

Set up symlinks for same images, and also detect this when compressing
to set up symlinks there as well. To reduce complexity, the qemu and
qemu_uefi_secure images are not supported anymore and the Jenkins or
GitHub CI will skip over them if specified. Users that build their own
images need to adapt, though.
2024-04-09 15:09:29 +02:00
Adrian Vladu
7d4917d67c image_to_vm: add support for hyper-v vhdx format
Add support for Gen 2 Hyper-V VMs.

`./image_to_vm` tool has now a new supported format: `hyperv_vhdx`,
that produces .vhdx dynamic disks.

How to use:

```bash
 ./image_to_vm.sh --from ../build/images/amd64-usr/developer-latest/ --format hyperv_vhdx
```

See: https://github.com/flatcar/Flatcar/issues/1009

Uses PR: https://github.com/flatcar/bootengine/pull/92

Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
2024-04-09 10:52:06 +03:00
Kai Lueke
7379db37e8 vm_image_util.sh: Bump default VM memory to 2 GB
While Flatcar itself runs fine with 1 GB, many workloads do not and
having to debug this is time consuming when one forgets to bump the VM
memory, e.g., in the Qemu script.
Default to 2 GB as known-good setting for things like Kubernetes or
setting up LUKS devices.
2024-04-04 12:55:37 +09:00
Kai Lueke
6d01140927 app-emulation/actool,acbuild: Remove actool and acbuild
Both actool and acbuild upstream are deprecated and probably not in
use anymore.
Remove actool from the image and acbuild from the SDK.
2024-04-03 16:18:56 +09:00
Jeremi Piotrowski
dd9e0303c4
Merge pull request #1792 from flatcar/jepio/clock
NTP/PTP by default on Azure/AWS/GCP
2024-03-28 12:14:27 +01:00
Jeremi Piotrowski
d93f0807b0 changelog: Add entry for PTP/NTP changes
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2024-03-28 12:13:48 +01:00
Kai Lueke
44086829b0 sys-kernel/bootengine: Install libcryptsetup-token-systemd-tpm2 plugin
This pulls in https://github.com/flatcar/bootengine/pull/93
to support systemd-cryptenroll for the rootfs with TPMs.
2024-03-28 16:55:19 +09:00
Henrik Schmidt
1bd8373430 Changelog: sys-kernel/coreos-modules: Enable CONFIG_IGC=y 2024-03-26 00:45:51 +09:00
Jeremi Piotrowski
7b937f2ddb
Merge pull request #1770 from flatcar/jepio/amd-pstate
sys-kernel/coreos-modules: Enable CONFIG_X86_AMD_PSTATE=y
2024-03-19 16:38:54 +01:00
Jeremi Piotrowski
8417eda473 changelog: Add entry for X86_AMD_PSTATE
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2024-03-19 16:38:19 +01:00
Jeremi Piotrowski
b790241057
Merge pull request #1771 from flatcar/multipathd-disable-rt
sys-fs/multipath-tools: Disable realtime scheduling for multipathd
2024-03-19 15:41:07 +01:00
Jeremi Piotrowski
71ffac206b changelog: Add entry for multipath realtime change
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2024-03-19 14:37:04 +00:00
Simon Campion
2a5917deb9 changelog: add entry for disk encryption 2024-03-14 12:09:16 +01:00
Kai Lüke
e5867917ec
Merge pull request #1742 from flatcar/jepio/zfs-sysext
Build ZFS sysext with each release
2024-03-13 23:24:30 +01:00
Jeremi Piotrowski
3aa9cd21ac changelog: Add entry for zfs sysext
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2024-03-13 23:23:44 +01:00
Adrian Vladu
89cca15171
Merge pull request #1734 from flatcar/ader1990/decrease_initrd_size_v1
initrd_size_decrease: remove mlxsw_spectrum/mlxsw_core kernel modules
2024-03-12 19:36:29 +02:00
Adrian Vladu
3da9f859be initrd_size_decrease: remove mlxsw_spectrum/mlxsw_core kernel modules
This commit is part of the effort to decrease the initrd size:
Partially-Fixes: https://github.com/flatcar/Flatcar/issues/1381

Signed-off-by: Adrian Vladu <avladu@cloudbasesolutions.com>
2024-03-12 16:51:35 +00:00
Mathieu Tortuyaux
fab18fdb42
changelog: add entry
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-03-05 13:51:07 +01:00
Sayan Chowdhury
0fc380cf21 sys-boot/shim: Add the changelog for shim upgrade, and secureboot
Signed-off-by: Sayan Chowdhury <schowdhury@microsoft.com>
2024-02-26 15:46:12 +01:00
Mathieu Tortuyaux
ea3d0cf1c4
changelog: add entry
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2024-02-23 14:33:29 +01:00