Likely to be down to
I’ll look into this as soon as possible.
But until the reason is found, we can consider grub-silent and grub-tools “conflicting”.
grub-tools may not be fully compatible. Especially future changes of
grub-silent may complicate things further because
grub-tools have (partially) been changing the same grub source code files.
Anyway, after replacing
grub-silent, you should run commands
grub-fix-initrd-generation grub-mkconfig -o /boot/grub/grub.cfg
to make grub-silent and grub-tools work together (but no guarantees!).
And if you update
grub-silent later, you may need to run those commands again.
EDIT: as mentioned below by @mireiner ,
grub-fix-initrd-generation will update grub, so a separate command for updating grub is not needed.
thank you for the fix. It works!
I suspect that you can skip the “grub-mkconfig -o /boot/grub/grub.cfg” command. Because I got the impression that the command “grub-fix-initrd-generation” already does a grub update as last step.
When I saw this when running the command “grub-fix-initrd-generation” I didn’t run the “normal” grub update after that. And it worked.
So I suspect if you have grub-silent installed you just have to run “grub-fix-initrd-generation” to update grub instead of “grub-mkconfig -o /boot/grub/grub.cfg” and you’re done.
In the long run the ideal solution might be to include the code of grub-silent into EndeavourOS grub-tools - or make it in some way optional.
That’s true! I had already forgot it, as the initial version of grub-fix-initrd-generation did not update grub.
Anyway, thanks for reminding!
By the way, welcome aboard! :
Welcome to the forum @mireiner I hope you enjoy your time here.
Hello Manual & Pudge,
thank you both for your welcome.
I have to correct myself. Now as the first kernel update came in I saw that ‘grub-fix-initrd-generation’ didn’t automatically call ‘grub-mkconfig -o /boot/grub/grub.cfg’. Probably it’s doing this only for a fresh grub install.
So it’s just as Manual stated: Both commands have to be called after another if the kernel has updated. A bash alias can make it more handy:
alias update-grub=‘sudo grub-fix-initrd-generation && sudo grub-mkconfig -o /boot/grub/grub.cfg’
A pacman hook
grub-mkconfig ... when a kernel or microcode is installed or removed.
Grub doesn’t need to be updated if kernel is updated.
Another pacman hook
grub-fix-initrd-generation when either
os-prober is updated.
is this solved?
Yes (so far) in the 4th post here. Just need to run those 2 commands as root after installing or updating grub-silent.
The problem is in the grub-silent package.
Edit: in fact I’ll add
grub-silent to the same hook as
grub currently is.