Ugh, dam. Grub setup has gotten a lot better in Linux over the years but is still a pain point. In my experience these are the things that make it more likely that grub will Just Work™
Before the install, set your BIOS boot mode to UEFI only and disable CSM (comparability support module). Depending on how secure you need the machine to be, I’d also recommend disabling Secure Boot.
Using hybrid boot mode (legacy + UEFI) changes how grub gets configured, since it will install both a legacy entry into the MBR table (or really a link to the entries) and a UEFI entry.
Grub’s UEFI menu and support typically works, but if you still have issues after installing in UEFI only mode, then you can replace grub’s EFI loader with rEFInd. Installing it is easy, and it will almost enitrely configure itself based on a scan of your EFI entries.
The general solution to most grub/boot issues is to just reconfigure grub. To do that, reboot into the live image, open a terminal and run the following commands: basically you are mounting just the portions of the installed OS needed for grub to configure itself, then regenerating the configuration.
ls /sys/firmware/efi
# make sure you see an efivars file -- that means you booted in EFI mode
# list disks and partitions
lsblk
# assuming you have the standard 3 partitions -- one for EFI, one for /boot and one for /root
mount /dev/sda3 /mnt # root partition
mount /dev/sda2 /mnt/boot # boot partition
mount /dev/sda1 /mnt/boot/efi # EFI partition
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
# reinstall grub and update its configuration
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian
# at this point you can also install rEFInd if you want
apt install refind
# no configuration needed, just say yes when asked if you want it to install to the EFI partition
Guys. I’m out. Going back to Ubuntu. The GUI is pointless here regardless of desktop and display manager. None of the network settings I am setting in xfce “advanced network settings” are actually doing anything when compared with ip command and reality on the ground when trying to ping etc.
In much the same way I went for a bambu x1 carbon 3D printer versus something else, I don’t have time for the nuances of Debian right now.