Monroe Coin Bounty: disposable VM fails to boot with pvgrub2-pvh kernel

Monroe Coin Reward: disposable VM won’t boot using pvgrub2-pvh kernel. If appvm can boot, but disposable VM with pvgrub2-pvh kernel can’t open any software. I have installed linux-image-amd64 and grub2 packages and inside appvm I can see the kernel I installed myself using the uname -a command.
If anyone can get my disposable VM up and running successfully, please leave a Monroe coin collection address and I will pay appropriately, thanks!!

Related (on the AppVM side, I assume):

Cross-referencing for context.

It works for me with dvm based on debian-12 template.

Did you mean in templatevm instead of appvm? Because you should install it in template to make it persistent.

Are you sure that your disposable template has correct TemplateVM?

I compiled the kernel myself, then deb-pkg, I got three .deb files, image, headers, libc-dev, which of these three deb files should I install to the VM?

It would be helpful if you provided detailed information from the start
when asking your questions.
What options did you use when compiling the kernel?
Did you compile “the Debian way”?

I compiled the kernel with default options, the VM can boot, but if other VMs set this VM as a gateway, the other VMs refuse to boot. I turned on pvh support inside the default options and left the rest unchanged according to the default settings. If I use only pvgrub2-pvh and install the package linux-image-amd64 linux-headers-amd64 grub2 qubes-kernel-vm-support without using my own compiled kernel, everything works fine and the other VMs can set this VM as gateway.
I would like to know why other VMs cannot set this VM as gateway after using it when compiled by myself and how to solve this problem, thank you.

I’ve compiled and installed custom kernel using make && sudo make modules_install && sudo make install and it works for me using debian-12 templates.
Maybe there’s a problem with your custom kernel or your template. If you’re using kicksecure template created from debian template then try to compile and use your kernel with default debian template first.

After you use a customized kernel, other VMs set this VM as a gateway and the other VMs won’t be able to boot?

They are able to boot without a problem.

I tried it the way you did and there is no problem with this VM, but if the second VM sets it as a gateway, the second VM won’t start.

Which kernel did you build?
Try to build and install default kernel from without any modifications for a test:
How To Build Linux Kernel {Step-By-Step} | phoenixNAP KB

You can also check the second VM logs and journalctl log in dom0 to see if there are any hints for the reason why it failed to start.