Commit Graph
79 Commits
Author SHA1 Message Date
Aelin 5d06fe0fd1 kconfigcheck: Add SELinux category
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8352>
2026-04-16 16:27:57 +00:00
Aster Boese b5c5a91b60 kconfigcheck: enable SECURITY_DMESG_RESTRICT
Kernel logs can contain sensitive information which we don't want
easily accessible. This locks the kernel buffer to privileged
access (with sudo).

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8342>
2026-04-13 21:15:35 +00:00
bluebunny 033c34b0ad kconfigcheck: add USB_NET_RNDIS_HOST
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8230>
2026-04-06 17:33:28 +00:00
Aster Boese 5e58825ad3 kconfigcheck: version gate DRM_FBDEV_EMULATION
DRM_FBDEV_EMULATION was added in kernel version 4.3, but we have kernels older than that.
Version gating the option fixes kconfigcheck on these kernels.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8202>
2026-03-19 22:21:03 +01:00
polyfloyd 37569a73bd Add new kconfig flags for Docker
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8002>
2026-03-13 15:36:07 +00:00
Aelin 577667f338 kconfigcheck: BPF_LSM depends on SECURITY
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8168>
2026-03-13 13:01:48 +00:00
Clayton Craft ef30e86f09 kconfigcheck: add additional kconfig requirements for systemd
From: https://github.com/systemd/systemd/blob/main/README

All of these config options are bool, hence why they are set to "y".
Kernels will also need to add pahole to the makedepends to support BPF.

fixes #3769

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6707>
2026-03-12 18:11:11 +00:00
Aster Boese b24a4ef1fd kconfigcheck: version gate MODULE_COMPRESS
MODULE_COMPRESS was added after the individual compression algorithm options.
As such, it needs a separate version set or any kernel below the version it
was added will fail kconfig check.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8131>
2026-03-06 10:53:34 +00:00
Sam Day 4dfac08c46 kconfigcheck: expand EroFS support
This modern alternative to SquashFS has been around for a while now.
It's the default format for Fedora's live media, and likely used in many
other notable places too.

Let's enable EroFS support as a baseline "filesystems" capability.

category:immutable was already bringing in erofs as a built-in. Clayton
confirmed in pmaports!8074 discussion that it's okay to downgrade to =m

Signed-off-by: Sam Day <me@samcday.com>
Assisted-by: opencode:gpt-5.3-codex
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8074>
2026-02-26 21:11:10 +00:00
Sam Day ce5a8307a3 kconfigcheck: enable ublk driver for netbooting devices
ublk allows a block device to be driven from userspace. think FUSE, but
blocks.

smoo uses ublk to present a block device driven by a USB protocol. this
serves as an alternate data plane to nbd for netbooting use cases.

Signed-off-by: Sam Day <me@samcday.com>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8075>
2026-02-25 20:52:21 +10:00
Aelin bebe107f52 kconfigcheck: Only require zstd module (de)compression on 6.2 or newer
The in-kernel zstd module decompression exists since kernel 6.2 [1], so
in order to accomodate split initramfs devices, we can only safely
require zstd module compression and decompression on 6.2 or newer.

[1]: https://github.com/torvalds/linux/commit/169a58ad824d896b9e291a27193342616e651b82

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7952>
2026-02-07 17:43:35 +01:00
Val Packett 839d8035c4 kconfigcheck: add more USB peripherals
- ensure MIDI 2.0 is enabled in the USB audio driver
- ensure UASP is enabled for faster storage access
- ensure USBNET framework is enabled for more Ethernet drivers
  (many particular USB_NET_* drivers have default 'y' in kconfig)

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7911>
2026-02-06 15:55:39 +00:00
Henrik Grimler dfc7fe9107 kconfigcheck: MODULE_DECOMPRESS should be set
We currently enforce MODULE_COMPRESS_ZSTD=y. In the 1st stage
initramfs we use busybox modprobe, and busybox modprobe cannot handle
zstd compression. Therefore, make sure MODULE_DECOMPRESS is enabled so
that kernel handles decompression instead.

See issue https://gitlab.postmarketos.org/postmarketOS/pmaports/-/issues/4305.

Co-developed-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7922>
2026-02-04 14:41:03 +01:00
Aelin e9ff22e200 kconfigcheck: CPU_FREQ_GOV_SCHEDUTIL depends on CPU_FREQ
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7853>
2026-01-26 23:35:48 +01:00
Aelin a3e9f29450 kconfigcheck: Compress modules with zstd
Since we already require firmware compression with zstd, it only makes
sense to also require modules to be compressed the same way.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7837>
2026-01-25 21:41:26 +00:00
Aelin 6a1fe61bf7 kconfigcheck: Require framebuffer support
unl0kr is unusable without CONFIG_FB enabled. With DRM, we need
CONFIG_DRM_FBDEV_EMULATION=y to have /dev/fb* nodes.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7833>
2026-01-24 22:06:06 +00:00
Aelin 078a66a5b9 kconfigcheck: DRM_UDL requires DRM
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7810>
2026-01-23 19:35:19 +00:00
Aelin 4872005baf kconfigcheck: USB_SERIAL_* requires USB_SERIAL
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7810>
2026-01-23 19:35:19 +00:00
Aelin 4747f268cc kconfigcheck: Let community imply USB
I'm pretty sure this is an oversight and it was intended to make the USB
category part of the community checks.

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7810>
2026-01-23 19:35:15 +00:00
Clayton Craft 3a74f3a1de kconfigcheck: enable all compression backends for zram
It doesn't seem like enabling these will "cost" us anything, and
making sure they are enabled will let us more easily change the default
compressor for zram swap in the future.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7753>
2026-01-14 21:59:26 +00:00
Clayton Craft 4e712841d7 kconfigcheck: set USB_F_FS to =m
Setting it to =y requires also setting CONFIGFS=y, but since we have
CONFIGFS=m this needs to be adjusted or else config generated from this
toml will fail validation / kconfigcheck.

```
[09:25:01] Copy kernel config back to pmaports dir
[09:25:02] (native) generate checksums for linux-postmarketos-asahi
[09:25:03] INFO: config-postmarketos-asahi.aarch64: CONFIG_USB_F_FS is preferably y, but currently m (category:usb_gadgets)
[09:25:03] Fragment pmos.config: CONFIG_USB_F_FS expected to be 'y' but has different value in final config
[09:25:03] ERROR: Fragment validation failed: Some options from fragments did not make it to the final kernel config. This usually means missing dependencies.
```

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7713>
2026-01-11 10:03:22 +00:00
Dylan Van Assche 7d35823389 kconfigcheck: add USB FunctionFS
[ci:ignore-count]
[ci:skip-vercheck]

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6531>
2025-12-27 22:44:28 -08:00
Jens Reidel 7d3b8e05df kconfigcheck: Don't require LTO_CLANG_THIN for CFI
This is only required on kernels prior to 6.1 and not even supported on
some architectures like ARMv7.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7537>
2025-12-15 23:32:12 +00:00
Clayton Craft 1c26be5ffe kconfigcheck: add 'wine' category for community kernels
This category can be used to collect kconfig that improve Wine/Proton
support on devices. NTSYNC is Win NT sync primatives that improve
performance of things running under Wine.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7157>
2025-12-12 16:07:54 +01:00
Pablo Correa Gómez 6e99b38fc8 kconfigcheck.toml: add missing "all" arch to category:rust
This makes the whole thing more consistent, and allows to verify
architectures in pmb

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7527>
2025-12-08 16:04:43 +01:00
Pablo Correa Gómez 7bbac7dea6 kconfigcheck.toml: fix architecture typo
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7523>
2025-12-08 01:01:19 +01:00
Clayton Craft 5cbd09c81c kconfigcheck: rust: disable DEBUG_INFO_BTF
When this config is enabled along with LTO (from the "hardening"
category), the kernel build system disables rust support.

These options are added to a new category, "rust" since it's only
necessary for kernels with rust support enabled.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7466>
2025-12-01 08:27:17 -08:00
Jens Reidel 6a984c485c kconfigcheck: Fix version requirement for hardening configs
Since CONFIG_CFI exists since 6.18rc1, the requirement must be
>=6.18_rc1. This went unnoticed in my testing because my kernel
incorrectly had a version of 6.18.0_rc1, which is greater than 6.18.0,
but the correct version would be 6.18_rc1, which is lower than 6.18.0.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7430>
2025-11-26 20:08:22 +01:00
Jens Reidel b59e6adaf5 kconfigcheck: Add hardening category
For now, this category requires CFI and SCS to be enabled and ensures
that CFI is compatible with Rust. More options can be added in the
future.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7391>
2025-11-26 12:05:05 +00:00
Clayton Craft 287331de80 kconfigcheck: require immutable category for community kernels
This will make testing immutable images easier, because currently I
suspect most kernels aren't enabling things like erofs...

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7395>
2025-11-21 17:14:02 +00:00
Jens Reidel a499fc6a80 kconfigcheck: Resolve some more warnings
CRYPTO_MD5 and ZSMALLOC are enabled as builtin by the default defconfigs
for x86_64, ppc64le and loongarch64, amongst others.

To avoid warnings on mismatches, just make them builtin for all
architectures.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:39 +00:00
Jens Reidel cd62959335 kconfigcheck: EFI is not available on ppc64le
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:39 +00:00
Jens Reidel 8cfaff88c8 kconfigcheck: Fix ConfigFS gadget dependencies
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:36 +00:00
Jens Reidel c0e981b059 kconfigcheck: SPI drivers depend on SPI
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:32 +00:00
Jens Reidel 37abd842fb kconfigcheck: HID sensors depend on IIO
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:29 +00:00
Jens Reidel f4bd887fb6 kconfigcheck: GPIOLIB is required by some HID configs
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:25 +00:00
Jens Reidel 81504cb5e8 kconfigcheck: NETFILTER_ADVANCED is required by some configs
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:22 +00:00
Jens Reidel df583a8cb0 kconfigcheck: KVM is not available on 32-bit ARM
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:18 +00:00
Jens Reidel 4e956c0f15 kconfigcheck: BLK_DEV_DM requires MD
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7397>
2025-11-20 16:10:15 +00:00
Jens Reidel 619a2af680 kconfigcheck: Enable EFI_ZBOOT for RISC-V
Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7392>
2025-11-17 10:13:44 +00:00
Jens Reidel bed66181bb kconfigcheck: Add missing dependencies
I am working on a RISC-V kernel that uses fragments and ran into a
couple of warnings / errors due to missing configs that resulted in some
other kconfigchecks failing. This fixes all of the errors I ran into.

Signed-off-by: Jens Reidel <adrian@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7392>
2025-11-17 10:13:44 +00:00
Aster Boese bcaa488e8c kconfigcheck: remove HID_BPF and its dependencies
HID_BPF conflicts with CLANG_CFI, which we want to enable in the near future.
It also doesn't seem that HID_BPF is particularly useful for postmarketOS as
a whole, so it should be fine to remove.

Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7370>
2025-11-16 16:29:59 +00:00
Robert Eckelmann 37cdda5adb kconfigcheck: adjust requirements for IP_NF_IPTABLES_LEGACY & IP6_NF_IPTABLES_LEGACY
These legacy options fail the kconfig check of `linux-google-nyan` which
is currently at 6.6.17. This was discovered during the step to update
the kconfig during !7273.

According to
https://cateee.net/lkddb/web-lkddb/IP_NF_IPTABLES_LEGACY.html and
https://cateee.net/lkddb/web-lkddb/IP6_NF_IPTABLES_LEGACY.html were
introduced with Kernel version 6.9

Signed-off-by: Robert Eckelmann <longnoserob@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7367>
2025-11-14 22:49:04 +00:00
Sebastian Fleer 9cec75d325 kconfigcheck: only check NETFILTER_XTABLES_LEGACY on >=6.17
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7333>
2025-11-12 16:16:25 +01:00
Clayton Craft 8670cf46dd kconfigcheck: enable missing deps for NF and FW compression
Without these, generated config doesn't have FW compression enabled, and
a few other NF/IP -related options.

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7323>
2025-11-10 01:46:05 +00:00
Clayton Craft 8d854127cc kconfigcheck: add BTRFS_FS_POSIX_ACL
This is required for running journalctl without root, see:
https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6145#note_470989

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/6263>
2025-10-24 05:23:48 +00:00
Clayton Craft 4e3743b99e kconfigcheck: fix typo in nftables version constraint
Fixes 7829e6c

The old pmb config that was migrated to pmaports had "<5.17"

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7136>
2025-10-18 14:16:07 +00:00
Clayton Craft 5e452bf41c kconfigcheck: switch many options to modules
Based on running kconfig check against a few kernel configs in pmaports
(which presumably already work/boot), and fixing the INFO messages when
it complained about an option should be builtin.

This also:

- removes some options that were in the default category that were
redefined/duplicated elsewhere, in order to avoid confusion later.

- moves CONFIG_CBC to the default category (used by FDE and a few other
things)

Signed-off-by: Clayton Craft <craftyguy@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7136>
2025-10-18 14:16:07 +00:00
adamthiede e087139b30 kconfigcheck: add SYN_COOKIES
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7002>
2025-10-17 14:59:42 +00:00
Casey Connolly d09c0bd7e8 kconfigcheck: enable USB simple serial console
Support for simple USB serial devices like those exposed by the Suzy-Q
cable.

Signed-off-by: Casey Connolly <kcxt@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7105>
2025-10-01 14:48:48 +00:00