And remove references to old "config rebasing" procedure that no longer
is necessary since pmbootstrap's kconfig generation effectively does the
same thing. Also remove kconfigcheck category for Librem 5 and replace
it with a fragment.
Signed-off-by: Stefan Hansson <newbyte@postmarketos.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9066>
The current systemd user namespaces model
almost works with confidentiality, but a single
check for kprobes is used, which confidentiality
disables, so user namespaces fail. For now,
just downgrade lockdown to integrity until this
is sorted out in systemd.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8988>
Enables lockdown by default in the hardening category, but locks hardcoding
enabling confidentiality behind the lockdown category, which kernels can
opt-into where it makes sense.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7369>
It appears to default to y with our current config requirements from
Linux 7.2 onwards, and that in turn breaks kconfigcheck because it will
set CRYPTO_CAMELLIA=y, etc. If we require it to be built as a module,
our kconfig checks will pass again.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8929>
Initially, these were switched to built-ins as they were included in
the default initramfs, which can have a worse compression ratio
than the kernel itself (e.g. Exynos 4 kernel uses xz for kernel, gzip
(pmbootstrap default) for initramfs).
Since f45319dc, however, these have been moved to initramfs-extra;
as such, they don't get built into the initramfs on devices that use
create_initfs_extra. They are now safe to move to modules - this
lets us save ~2MB on space-constrained devices.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8943>
All but 10 kernels in downstream and 1 in testing support VFAT_FS already.
FAT32, which VFAT_FS supports, is proposed with
https://gitlab.postmarketos.org/postmarketOS/pmbootstrap/-/merge_requests/2869
to become the default filesystem for pmOS_boot. Since so many kernels already
support this option and the FAT filesystems are so common, there is no reason
not to include VFAT_FS by default. VFAT_FS only increases kernel size by 10kb,
so it does not impact boot partition space in any meaningful way.
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8694>
category:rust was actually not added to *enable* Rust support in the kernel,
but to add options needed by kernels that had *already* enabled Rust. Since
the category was meant for kernels with Rust enabled, enabling Rust support
with the category makes sense and fits better with the category name to clear
up any confusion kernel package maintainers may have.
See 5cbd09c81c
Signed-off-by: Aster Boese <asterboese@mailbox.org>
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8559>
This replaces all version requirements below the baseline for the
categories with >=0.0.0 and completely removes configurations that would
only apply to version ranges no longer included in the baseline.
The default category baseline is 2.6.0, categories for community kernels
currently have a baseline of 5.17.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8421>
CONFIG_CRYPTO_CTS is built-in if CONFIG_FS_ENCRYPTION is enabled, which
it is by default on loongarch64, which is reasonable.
CONFIG_NFSD is also built-in on some architectures, which causes
CONFIG_RPCSEC_GSS_KRB5 to be built-in rather than a module. We could
either force disable NFSD, which is not great, or just build it as a
module, which is what I opted for.
Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8415>
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>
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>
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>
- 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>
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>
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>
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>
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>