Dear experts in Debian, Pardon me for bothering you, but I have to turn to you for advice.
Recently, I've been struggling to customize a Debian (Bullseye) installer ISO tarball. My intention is to embed some features and a specific kernel(5.10.x) into the ISO tarball. Then, after deploying the debian system on a controller(amd64), I could get a workbench system booted with the specific kernel, and with the features I specified being installed by default. But after days painfull working, I still couldn't figure out how to let the debian installer retrieve and unpack the deb file of the specific kernel. I tried to hack into the file system of Debian ISO, and to collect a lot of information from technical blogs on the internet on the procedure of how a Debian installer booted, and to iminate mechanism in Debian ISO. But all failed. What I did are below: (1) to install feature in system as default I need the corresponding deb files, including the installing files and their dependencies, I collected them under /var/cache/apt/ directory on a machine who is connected to the internet, and on which the required features had been installed. Then transfer them under their corresponding directories under pool/main/, and modify the index files, including Packages and Release, as well as md5sum.txt. I set the "priority" field of all features to "standard". It seemed what I had done worked. (2) to install a new kernel and make the system boot with it by default Coming up to this item, I have never felt I made a step forward, but only stuck. I know, maybe I'm wrong, to achieve what I want, I need two images, linux-image and initrd. To get linux-image, I built linux kernel with "make bindeb-pkg"; and to get initrd, I installed linux kernel with commands "make modules_install" and "make install". With linux-image-xxx.deb, I transferred it under the directory "pool/main/l/linux-signed-amd64", and set index files and md5sum.txt. With vmlinuz, I used it to override the file named "vmlinuz" under install.amd/. With initrd.img-5.10.x, I compressed it with "gzip", and used it to override the file named "initrd.gz" under install.amd/gtk/. At last, I recompressed the ISO source into an ISO file, and tried to install it onto a virtual machine. Of course, I failed again. There is an error, "Initramfs unpacking failed: no cpio magic". I know actions taken to substitute for the default kernel are senseless, but I have no idea about where I should go. If you could give some advice to help me embed a new kernel into the debian destro ISO and make the system boot with it by default, I will appreciate it from the bottom of my heart. Thanks for your time. Sincerely, Qi Hou