# SPDX-License-Identifier: LGPL-2.1-or-later
[Config]
-Images=system
-MinimumVersion=21
+@Images=system
+MinimumVersion=23~devel
[Output]
-@OutputDirectory=mkosi.output
-@BuildDirectory=mkosi.builddir
-@CacheDirectory=mkosi.cache
+@OutputDirectory=build/mkosi.output
+@BuildDirectory=build/mkosi.builddir
+@CacheDirectory=build/mkosi.cache
[Content]
# Prevent ASAN warnings when building the image and ship the real ASAN options prefixed with MKOSI_.
@SELinuxRelabel=no
BuildSourcesEphemeral=yes
+KernelCommandLine=systemd.crash_shell
+ systemd.log_level=debug,console:info
+ systemd.log_ratelimit_kmsg=0
+ # Disable the kernel's ratelimiting on userspace logging to kmsg.
+ printk.devkmsg=on
+ # Make sure /sysroot is mounted rw in the initrd.
+ rw
+ # Lower the default device timeout so we get a shell earlier if the root device does
+ # not appear for some reason.
+ systemd.default_device_timeout_sec=20
+ # Make sure no LSMs are enabled by default.
+ apparmor=0
+ selinux=0
+ enforcing=0
+ systemd.early_core_pattern=/core
+ systemd.firstboot=no
+ systemd.setenv=SYSTEMD_ENABLE_LOG_CONTEXT=yes
+ SYSTEMD_ENABLE_LOG_CONTEXT=yes
+
[Host]
@Incremental=yes
-# TODO: Drop to 2G again once the next Noble kernel update ships and we can use linux-image-virtual.
-@QemuMem=4G
@RuntimeSize=8G
+@RuntimeBuildSources=yes
+@QemuSmp=2
ToolsTreePackages=virtiofsd
-KernelCommandLineExtra=systemd.crash_shell
- systemd.log_level=debug
- systemd.log_ratelimit_kmsg=0
- systemd.journald.forward_to_console
- systemd.journald.max_level_console=warning
- # Disable the kernel's ratelimiting on userspace logging to kmsg.
- printk.devkmsg=on
- # Make sure /sysroot is mounted rw in the initrd.
- rw
- # Lower the default device timeout so we get a shell earlier if the root device does
- # not appear for some reason.
- systemd.default_device_timeout_sec=10
- # Make sure no LSMs are enabled by default.
- apparmor=0
- selinux=0
- enforcing=0
- systemd.early_core_pattern=/core
- systemd.firstboot=no
- systemd.setenv=SYSTEMD_ENABLE_LOG_CONTEXT=yes
- SYSTEMD_ENABLE_LOG_CONTEXT=yes