Files
AeroPkg/assets/var/gnu/linux-kernel.md

2.6 KiB

linux-kernel 6.18.7

https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.18.7.tar.xz

CONFIG_USB_EHCI_HCD=m CONFIG_USB_OHCI_HCD=m CONFIG_USB_XHCI_HCD=m CONFIG_USB_XHCI_PLATFORM=m CONFIG_USB_HID=m CONFIG_HID_GENERIC=m CONFIG_USB_COMMON=m

CONFIG_KEYBOARD_ATKBD=m CONFIG_MOUSE_PS2=m CONFIG_MOUSE_PS2_ALPS=m

CONFIG_I2C_CHARDEV=m CONFIG_I2C_DESIGNWARE_PLATFORM=m CONFIG_I2C_GPIO=m 7299

#
# Configuration
#
cat > .config.base <<ENDCONFIG
# Kernel settings
CONFIG_KERNEL_LZ4=y
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_PREEMPT=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y

# Video
CONFIG_FB=y
CONFIG_FB_EFI=y
CONFIG_FB_SIMPLE=y
CONFIG_DRM_SIMPLEDRM=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_DRM_FBDEV_EMULATION=y

# Security 
CONFIG_INTEGRITY=n
CONFIG_SECURITY_SELINUX=n
CONFIG_KEY_DH_OPERATIONS=y
CONFIG_TCG_TPM=y
CONFIG_TRUSTED_KEYS_TPM=y
CONFIG_SECURITYFS=y
CONFIG_HARDENED_USERCOPY=y
CONFIG_FORTIFY_SOURCE=y
CONFIG_SECURITY_DMESG_RESTRICT=y
CONFIG_SECURITY_LANDLOCK=y
CONFIG_SECURITY_YAMA=y
CONFIG_SECURITY_LOADPIN=y
CONFIG_SECURITY_SAFESETID=y
CONFIG_LSM="landlock,yama,loadpin,safesetid"

# Block devices
CONFIG_BLK_DEV_NVME=y
CONFIG_BLK_WBT=y
CONFIG_NVME_CORE=y
CONFIG_NVME_HWMON=y
CONFIG_F2FS_FS=y

# AeroLinux conf
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE="root=PARTLABEL=aerolinux init=/pkg/gnu/s6/bin/s6-init rootwait rw console=tty0 earlycon=efifb loglevel=8 debug"
CONFIG_MODPROBE_PATH="/pkg/gnu/bin/modprobe"
ENDCONFIG

make defconfig
./scripts/kconfig/merge_config.sh -m .config .config.base
find . -name Kconfig -exec awk '
    /^(config|menuconfig) [A-Za-z0-9_]+$/ {
        config_name = $2
        getline next_line
        if (next_line ~ /^[[:space:]]*tristate([[:space:]]|$)/) {
            print "CONFIG_" config_name "=m"
        }
    }
' {} + > .config.modules
./scripts/kconfig/merge_config.sh .config .config.modules
sed -E '/.*DEBUG.*/ s/=(y|m)/=n/' -i .config
make olddefconfig
./scripts/kconfig/merge_config.sh -m .config .config.base
make -j$(nproc) bzImage modules
make INSTALL_MOD_PATH=/pkg/gnu/linux-kernel modules_install
mkdir -p /pkg/gnu/linux-kernel/var/certs
objcopy arch/x86/boot/bzImage /pkg/gnu/linux-kernel/var/BOOTX64.EFI
cp System.map /pkg/gnu/linux-kernel/var/System.map
cp .config /pkg/gnu/linux-kernel/var/config
cp {certs/signing_key.pem,certs/signing_key.x509} /pkg/gnu/linux-kernel/var/certs || true
cp -rPl /pkg/gnu/linux-kernel/lib /
pkg run set linux-kernel
cp -r /pkg/gnu/linux-kernel/var/BOOTX64.EFI /boot/efi/EFI/BOOT/BOOTX64.EFI