# SPDX-License-Identifier: LGPL-2.1-or-later
[Output]
-# Prevent ASAN warnings when building the image and ship the real ASAN options prefixed with MKOSI_.
-Environment=ASAN_OPTIONS=verify_asan_link_order=false
- MKOSI_ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1:disable_coredump=0:use_madv_dontdump=1
- MKOSI_UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1
OutputDirectory=mkosi.output
-
-[Content]
BuildDirectory=mkosi.builddir
CacheDirectory=mkosi.cache
-ExtraTrees=src:/root/src
-Packages=
- acl
- bash-completion
- coreutils
- diffutils
- dnsmasq
- dosfstools
- dracut
- e2fsprogs
- findutils
- gcc # For sanitizer libraries
- gdb
- grep
- kbd
- kexec-tools
- kmod
- less
- mtools
- nano
- nftables
- openssl
- python3
- qrencode
- sed
- strace
- systemd
- tree
- udev
- util-linux
- valgrind
- wireguard-tools
- xfsprogs
- zsh
-BuildPackages=
- bc
- binutils
- bison
- clang
- flex
- gcc
- gettext
- git
- gperf
- lld
- llvm
- make
- meson
- pkgconf
- rpm
- rsync
- tar
- zstd
+[Content]
+# Prevent ASAN warnings when building the image and ship the real ASAN options prefixed with MKOSI_.
+Environment=ASAN_OPTIONS=verify_asan_link_order=false
+ MKOSI_ASAN_OPTIONS=strict_string_checks=1:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1:disable_coredump=0:use_madv_dontdump=1
+ MKOSI_UBSAN_OPTIONS=print_stacktrace=1:print_summary=1:halt_on_error=1
[Host]
-Acl=yes
+Incremental=yes
QemuMem=2G
ExtraSearchPaths=build/
+# Make sure we don't trigger systemd-firstboot prompting for the root password.
+Credentials=passwd.plaintext-password.root=
KernelCommandLineExtra=systemd.crash_shell
systemd.log_level=debug
systemd.log_ratelimit_kmsg=0
systemd.journald.forward_to_console
systemd.journald.max_level_console=warning
- systemd.mask=auditd
- # Tell the kernel to only log warning and up to the console.
- loglevel=4
-
-[Validation]
-Password=
-Autologin=yes
+ # 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