#!/bin/bash # Set VAR KVER='6.6.13-hardened1' #KVER='5.10.145-hardened1' #KVER='5.15.74-hardened1' # Dependencies sudo dnf install binutils /usr/include/{libelf.h,openssl/pkcs7.h} \ /usr/bin/{bc,bison,flex,gcc,git,openssl,make,perl,pahole,zstd} # Staging w/ error handling if [[ ! -f /usr/src/"$KVER".tar.gz ]]; then /usr/bin/curl --verbose --tlsv1.3 --proto =https -L -O --url "https://github.com/anthraxx/linux-hardened/archive/refs/tags/$KVER.tar.gz" fi if [[ ! -d /usr/src/linux-hardened-"$KVER" ]]; then tar -xf "$KVER".tar.gz -C /usr/src/ fi cd /usr/src/linux-hardened-"$KVER" wget https://0xacab.org/optout/plague-kernel/-/raw/main/6.6.13-hardened.config -O .config # Compilation yes "" | make olddefconfig make menuconfig # Exit if making no changes echo "Compiling "$KVER"" make -j $(nproc --all) # Installing kernel ## Ensure /boot is rw mount -o remount,rw /boot command -v installkernel && sudo make modules_install install # remove sysmap/signing keys rm /lib/modules/"$KVER"_1/source/certs/signing_key* rm /lib/modules/"$KVER"_1/source/System.map rm /lib/modules/"$KVER"_1/source rm /lib/modules/"$KVER"_1/build