Commit Graph

111 Commits

Author SHA1 Message Date
Rick Rackow
4f8819e4df
fix(coreos-cloudinit): truncate hostnames 2025-04-07 13:33:29 +02:00
Sayan Chowdhury
3a1934d200
changelog: Add changelog for updating shim secureboot
Signed-off-by: Sayan Chowdhury <schowdhury@microsoft.com>
2025-03-24 17:00:57 +05:30
Jeremi Piotrowski
e313934fea changelog: Add entries for nvidia.service changes
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
2025-03-14 10:51:35 +01:00
Dongsu Park
03cec03bbd overlay coreos-init: Distribute new sub key 2025
This pulls in https://github.com/flatcar/init/pull/129
to distribute the new sub key.
2025-03-10 15:49:27 +01:00
Mathieu Tortuyaux
77bfff8ec0
changelog: add entry
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
2025-02-25 16:49:14 +01:00
Jeremi Piotrowski
754bb45d64
Merge pull request #2349 from flatcar/ader1990/enable-intel-igpu
sys-kernel/coreos-modules: build Intel iGPU module
2025-02-24 12:18:14 +01:00
Jan Bronicki
1a7b995a08 Add port forwarding as multiple use parameters
Add mention in the changelog

Update changelog/changes/2025-01-10-qemu-startup-script-port-forwarding.md

Co-authored-by: Mathieu Tortuyaux <mathieu.tortuyaux@gmail.com>

Update build_library/qemu_template.sh

Co-authored-by: Mathieu Tortuyaux <mathieu.tortuyaux@gmail.com>

Adjust to review comments

Review adjustments
2025-01-13 15:28:25 +01:00
James Le Cuirot
ef16de492a
sys-kernel/coreos-modules: Enable CONFIG_GTP
This is the GPRS Tunneling Protocol datapath for usage in telecoms
scenarios. It has been requested by a user.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-12-12 10:33:15 +00:00
Lukas Stockner
2677c1cebe
Update changelog/changes/2024-11-26-enable-vfio-on-arm.md
Co-authored-by: Mathieu Tortuyaux <mathieu.tortuyaux@gmail.com>
2024-12-10 13:52:56 +01:00
Lukas Stockner
f5d9435f43 sys-kernel/coreos-modules: Enable VFIO for arm64
VFIO was configured as x86-only, but it also works and is useful on ARM.
CONFIG_VFIO_PCI_VGA is x86-specific, so it remains in the amd64 config.
2024-11-26 21:59:50 +01:00
James Le Cuirot
945014691b
grub_install.sh: Compress modules with xz instead of gzip to save space
Giving the --best or -9 option results in a heavier decompression cost
with no gain on such small files.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-11-18 14:56:20 +00:00
James Le Cuirot
93cbba765d
grub_install.sh: Only install additional GRUB modules for non-SB targets
Secure Boot prevents you from loading additional modules so remove them
to save space. These modules could be useful for debugging with Secure
Boot disabled, but manually copying the modules with debug symbols is
even more useful and not that difficult.

Signed-off-by: James Le Cuirot <jlecuirot@microsoft.com>
2024-11-18 14:55:50 +00:00
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
Adrian Vladu
a91d0f2ad3 sys-kernel/coreos-modules: build Intel iGPU i915 as module
Enable Intel iGPU usage in Flatcar.

The change only affects AMD64/x86 arch, as the GPU is part of the SoC.

See: https://github.com/flatcar/Flatcar/issues/1306
2024-10-01 10:17:19 +00: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