Update 2022-11-07, bug fix, filter out 'linux-image-....' .deb from 'experimental' branch, script replaced below
----------------------------------------------------------------------------------------
Update 2022-11-02, script replaced below, added ntfs3 to the kernel modules to be copied to the initrd, thanks @wiak see: https://forum.puppylinux.com/viewtopic. ... 211#p71211
Here's a script that will download, extract Debian latest "linux-image" .deb package (currently v6.0.0-1) and create a setup for KLV-Airedale, including initrd.gz and 00modules-... .sfs.
Remove fake .gz extension and make executable.
EDIT 2022-10-21, some improvements and important fix,
- check for if required 'ar' is installed (if not, install 'binutils'), for extracting .deb package
- better way to check if depmod is symlink to kmod (should not be symlinked to busybox) (the script should work on a "non usr-merged" system too now).
- changed the trap 'exitfn' cleanup function very important !! as there was a risk of deleting the whole directory (standing in) when interrupting the script at some point, fixed now.
Usage: Copy the script to some directory of choice (on a Linux filesystem), open a terminal there and type ./cr-debkernel
Takes a few minutes and the files can be found in workdir-<date> .
To swap the kernel in a KLV install with these created Debian kernel files, copy these to the KLV frugal install dir and overwrite initrd.gz and vmlinuz.
Required is the "full" depmod (not symlink to busybox), the script checks for that, if it gives the message "it seems that depmod is a symlink to busybox", then install 'kmod' : xbps-install kmod
.
On top of script you can modify RT=no
to RT=yes
if the Debian realtime kernel is preferred.
Also modify INITCOMPR=gzip
to INITCOMPR=xz
for a much smaller initrd.gz (xz compressed).