added applicable build script

This commit is contained in:
arcanedev 2022-10-27 16:16:22 +00:00
parent 7f37c1ba58
commit 7f64568007
No known key found for this signature in database
GPG Key ID: 13BA4BD4C14170C0
2 changed files with 48 additions and 12 deletions

View File

@ -2,18 +2,8 @@
- `xbps-install -Sy make gcc xz elfutils elfutils-devel flex ncurses-devel openssl openssl-devel argp-standalone gcc-ada mpc libmpc-devel gmp-devel perl`
### Steps to create
- `cd /usr/src/`
- `wget https://git.arrr.cloud/whichdoc/plague-kernel/-/raw/main/5.10-hardened.config -o linux-hardened-"$KVER"/.config`
- `/usr/bin/curl --verbose --tlsv1.3 --proto =https -L -O --url "https://github.com/anthraxx/linux-hardened/archive/refs/tags/5.10."$KVER"-hardened1.tar.gz"`
- `tar -xvf 5.10."$KVER"-hardened1.tar.gz`
- `cd 5.10."$KVER"-hardened1`
- `make oldconfig`
- `make menuconfig` # (if any changes are required)
- `make --jobs=4` # start compiling with your number of allocated threads
- `make modules_install` # create /lib/modules/$kver
- `cp ./arch/x86_64/boot/bzImage /boot/vmlinuz-5.10."$KVER"-hardened1_1 && dracut --kver 5.10."$KVER"-hardened1_1 --force`
- `grub-mkconfig -o /boot/grub/grub.cfg`
- `xbps-reconfigure -fa`
1. Set the KVER variable to which version you want to obtain from Anthraxx's linux-hardened repository
2. Run `bash kernel_build.sh`
### Steps to import/configure release
- Built into PlagueOS installer

46
kernel_build.sh Normal file
View File

@ -0,0 +1,46 @@
#!/bin/bash
# Set VAR
KVER=''
#KVER='5.10.145-hardened1'
#KVER='5.15.74-hardened1'
# Dependencies
xbps-install -Sy make gcc xz elfutils elfutils-devel flex ncurses-devel openssl openssl-devel argp-standalone gcc-ada mpc libmpc-devel gmp-devel perl
# 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://git.arrr.cloud/whichdoc/plague-kernel/-/raw/main/5.10-hardened.config -o .config
# Address system and file timing for clock skew runtime compilation error
plague-time-sync
find . -type f | xargs -n 5 touch
make clean
# Compilation
make oldconfig
make menuconfig
echo "Compiling "$KVER""
make --jobs=9
make modules_install
# Ensure /boot is rw
mount -o remount,rw /boot
cp ./arch/x86_64/boot/bzImage /boot/vmlinuz-"$KVER"_1
dracut --kver "$KVER"_1 --force
grub-mkconfig -o /boot/grub/grub.cfg
# 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