Issues installing Manjaro on MacBook Pro

I can't get Manjaro to boot with rEFInd. If I boot Manjaro directly from it, it hangs on the rEFInd screen:
rEFInd - Booting OS Starting vmlinuz-4.9-x86_64 Using load options 'root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rw nomodeset nosplash verbose initrd=/boot/intel-ucode.img'

If, instead, I boot rEFInd, then GRUB from rEFInd, then Manjaro from GRUB, it boots but doesn't see the IGD.

That is because it is using the default refind entries.
If you set it up in the refind.conf file it will work.

Other option can be to use "bootctl install" from your root user in TTY, you will the be redirected to the Apple boot loader if you choose bootx64.efi.

refind and grub do the same thing so they may not like each other.

Even with a custom entry, the result is the same... Is there a way to enable some kind of debug output in rEFInd?

No that I know of and when I had an error it was always displayed on screen.

Can you post your config section of refind.conf I had some strugles with the / and \ for the paths.

menuentry "Arch Linux" {
#    icon     /EFI/refind/icons/os_arch.png
    volume   "root"
#root's the label of my / partition
    loader   /boot/vmlinuz-4.9-x86_64
    graphics off
#    initrd   /boot/initramfs-linux.img
    options  "root=UUID=65b5e392-5ee3-41b2-8923=3e2044394560 rw nosplash nomodeset verbose initrd=/boot/intel-ucode.img"
    initrd /boot/initramfs-linux.img
    submenuentry "Boot using fallback initramfs" {
        initrd /boot/initramfs-linux-fallback.img
    }
    submenuentry "Boot to terminal" {
        add_options "systemd.unit=multi-user.target"
    }
#    disabled
}

I had something like this:

menuentry "Manj Linux" {
    icon     EFI\refind\icons\os_arch.png
    volume   "Manj Linux"
    loader   /boot/vmlinuz-4.9-x86_64
    initrd   /boot/intel-ucode.img
    initrd   /boot/initramfs-4.9-x86_64.img
    options  "root=PARTUUID=5028fa50-0079-4c40-b240-abfaf28693ea rw add_efi_memmap"
}

Your initramfs does not seem ok for Manjaro and I removed all the stuff I was not using.
The volume name is not important is just for display

Even with a config similar to yours it will just hang at the same screen...
EDIT: here's the config
menuentry "Manjaro Linux" { volume "root" loader /boot/vmlinuz-4.9-x86_64 initrd /boot/intel-ucode.img initrd /boot/initramfs-4.9-x86_64.img options "root=UUID=65b5e392-5ee2-41b2-8923-3e2044394560 rw add_efi_memmap" }

I had the same problems, I ended up using Manjaro Architect as an installer. I have a dual graphics MacBook Pro 8,2 (2011). after the installation to keep booting had to edit the grub config a bit to keep it boot. I disabled the radeon card on bootup by changing GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash i915.lvds_channel_mode=2 i915.modeset=1 i915.lvds_use_ssc=0“

In /etc/grub.d/10_linux I changed

   else
      if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then
	  echo "	load_video" | sed "s/^/$submenu_indentation/"
      fi
      echo "	set gfxpayload=$GRUB_GFXPAYLOAD_LINUX" | sed "s/^/$submenu_indentation/"
  fi

  echo "	insmod gzio" | sed "s/^/$submenu_indentation/"

to

   else
      if [ "x$GRUB_GFXPAYLOAD_LINUX" != xtext ]; then
	  echo "	load_video" | sed "s/^/$submenu_indentation/"
      fi
      echo "	set gfxpayload=$GRUB_GFXPAYLOAD_LINUX" | sed "s/^/$submenu_indentation/"
  fi
  
  echo "    outb 0x728 1" | sed "s/^/$submenu_indentation/"  
    echo "    outb 0x710 2" | sed "s/^/$submenu_indentation/"
    echo "    outb 0x740 2" | sed "s/^/$submenu_indentation/"
    echo "    outb 0x750 0" | sed "s/^/$submenu_indentation/"
  echo "	insmod gzio" | sed "s/^/$submenu_indentation/"

then updated update-grub

hope that info can help you

2 Likes

Tthat will be the next step first the iGPU mmust be detected :slight_smile:

can you give the following info:
"tree /boot/"

Here's tree's output: https://pastebin.com/2P3Z4vyM

By the way, I edited my previous post with the boot config (I would have done it earlier, but the battery died, I couldn't find the charger and I needed sleep)

EDIT: I tried Architect, but I couldn't get it to boot.

Not the same timezone :slight_smile:

I don't like the dual grub entries, you have another os installed on the machine?

I'm putting quickly a vm in place to help you, I removed refind and have not kept the configuration files.
Can you provide me a screenshot of the entries you have in refind please.

The dual grub is only because of me messing up; only one shows up in rEFInd anyway. I don't have any other OS installed.
What do you mean exactly? I guess I can take a picture of the rEFInd screen (how do I take a screenshot of that?), or do you mean something else?

Refind takes all the boot files he can find on the boot partition, In my case I could only boot with the bootx64.efi one all the others returned me an error.

Just wanted to see the entries that you had. photo or just text is ok.

rEFInd shows five boot entries. The first one is EFI\Manjaro\grubx64.efi (which currently is the one I use; it runs GRUB which boots Manjaro); the second one reads "Boot Fallback boot loader from boot", which, again, runs GRUB. I don't know whether it's the same one or not, so maybe I should clean up the system. It does look like it's the same one though.
The third one is an automatic entry and boots \boot\vmlinuz-4.9-x86_64. The fourth one reads "Boot Legacy OS from whole disk volume", and doesn't really do much as there's no legacy OS installed (a screen comes up saying there's no bootable device, asking me to insert a disk and press a key). The fifth one is the one I posted above.

Wer're going to try something very ugly:

mkdir -p /boot/loader/entries
nano /boot/loader/entries/manj.conf

title          Manj Linux
linux          /vmlinuz-4.9-x86_64
initrd         /intel-ucode.img
initrd         /initramfs-4.9-x86_64.img
options        root=UUID=65b5e392-5ee2-41b2-8923-3e2044394560 rw

nano /boot/loader/loader.conf

default  manj
timeout  4

And if you can try the legacy loader.
If you get an error, can you copy the folder just created to /boot/efi and redo the test.

still don't like your boot partition you also have some syslinux stuff being around ...

Just did a fresh install of manjaro.
Installed refind-efi, reboot and I have only 2 entries grub and the vmlinuz one.
I select the vmlinuz one and it boots fine into manjaro. If the spoof parameter is set that one should give you access to your iGPU once booted. You can see it with lspci.

Well... I tried wiping everything and reinstalling Manjaro, then rEFInd; I still can't see the IGD, but somehow X finally works! I'd say that's even more than enough, since I guess he'd rather use the GPU instead of the IGD since he always has the PC plugged in anyway. Thanks!

If everything works ok now have you changed the spoof setting in refind again?
That is the condition to view your iGPU, by default mac hides it.

If you are already satisfied please solve the post.

Yes, I enabled the spoofing with the default value (10.9) and the IGD is nowhere to be seen. Still, I guess I'm satisfied with that! Thanks again!

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by