Hi, im new to using Manjaro but not a beginner in using linux in general, so please bare with me with this long post, i encountered this problem and solved it easily, so i might as well post it here just in case someone is experiencing the same problem.
In short i have:
But when i installed Manjaro, it installed fine so i just booted to opensuse and ran grub update to add manjaro to the bootlist. To my surprise it doesnt boot and grub displays an error similar to this:
error: file '/vmlinuz' not found error: you need to load the kernel first. Press any key to continue
After a bit of research, i found out that BTRFS isn't properly detected by Grub for some reason, and either i need to reinstall the / on ext4 or create a separate /boot partition. Which is cumbersome for me so i decided to fiddle with the boot partition of manjaro.
So i compared manjaro's grub.cfg file to opensuse's
Tho it's explicitely described there (2nd entry) that it's a btrfs, grub forgot adding an @
to the linuxefi and initrdefi part of the entry, resulting in grub to assume it's ext4 but BTRFS uses @ so it can't find it.
I made these changes to the line, i added an /@ to both and also erased ^ and added a space then add the /@ again. I did this to all manjaro entries created by opensuse. (advanced and memtest86)
linuxefi /@/boot/vmlinuz-5.0-rt-x86_64 root=UUID=1873dd54-9e00-4329-80fc-d4bb2eccba90 rw rootflags=subvol=@ quiet resume=UUID=d47339fc-a696-49a6-ab00-7405eeff224d
initrdefi /@/boot/intel-ucode.img /@/boot/initramfs-5.0-rt-x86_64.img
That nailed it, it now boots. Hopefully it helps