Well, 12.10 (quantal quetzal) is out and runs a lot better on a Macbook Pro retina (rMBP) than 12.04. Just installed it on my retina and I think I can finally use it as my day to day laptop!

Improved from 12.04

  1. Better APIC support in the kernel (previous you had to boot with noapic)
  2. Special keys on keyboard work (volume control…etc)
  3. Better touchpad support (two-finger scrolling works!)
  4. Got full resolution and external monitor (edit: ran into some issues after trying to boot between OSX and Ubuntu, that I haven’t figured out yet) working! (this might have worked in 12.04, but I didn’t test EFI booting with 12.04)

So, without further ado, the directions!

1. Preparation

Just follow steps 1 through 3 in my last guide, to get rEFIt installed and prepare to install Ubuntu. Make sure you download the 12.10 ISO though, for step 3.

2. Install Ubuntu

Kernel modesetting doesn’t work, and will give you a garbled display, so make sure you disable it before starting the installer (press space at the splash screen, then F6, and turn on nomodeset). Also, note that the wifi won’t work (we’ll fix this in the next step), so don’t try to install updates during the installation process.

3. Update Kernel Options

Once the installation finishes, you’ll need to boot up with the nomodeset option (press ‘e’ in GRUB and add it to the kernel parameters, right next to “splash” and “quiet”), and then add it permanently once you’ve booted up:

  1. In a terminal run: sudo gedit /etc/default/grub
  2. Add nomodeset to GRUB_CMDLINE_LINUX_DEFAULT inside the double-quotes after the words “quiet splash“.
  3. Finally, run: sudo update-grub

You can find detailed directions for both of these steps in the Ubuntu guide for Kernel Boot Parameters.

 4. Install Wifi Drivers

You’ll need to be a bit creative here. Apple removed the ethernet port, so you’ll need a USB wifi card, or some other method of installing the drivers (I tethered my Android phone using EasyTether). Once you have a working Internet connection, just follow these directions to install the driver:

  1. sudo apt-get update && sudo apt-get install b43-fwcutter
  2. Download driver from: http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2
  3. tar -xf broadcom-wl-5.100.138.tar.bz2
  4. sudo b43-fwcutter -w /lib/firmware broadcom-wl-5.100.138/linux/wl_apsta.o
  5. Reboot and the wireless should work.

5. EFI Boot and NVIDIA Drivers

To get the 2880×1800 native resolution, and the external display ports working you’ll need to convert GRUB to EFI mode. Follow these steps adapted from the Ubuntu UEFI page:

  1. sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
  2. sudo apt-get install -y boot-repair && boot-repair
  3. Click on “Advanced options”, go to the “GRUB location” tab.
  4. Make sure that “Separate /boot/efi partition” is checked, then click the “Apply” button.

Before restarting you’ll need to install the proprietary NVIDIA drivers, and configure Xorg:

  1. sudo apt-get install linux-headers-`uname -r`
  2. sudo apt-get install nvidia-current
  3. sudo nvidia-xconfig

Restart, and you should now have a new option in rEFIt (or maybe a couple of them…), which will boot up Ubuntu using EFI.

6. Still Broken

  • Brightness controls for monitor
  • Wifi is sometimes flaky (tons of packet loss, until I reload the b43 module)

Let me know in the comments, if you get brightness controls working or find more stable wifi drivers!

8 Responses to “Installing Ubuntu 12.10 on Macbook Pro Retina (10,1)”

  1. Eosphere46 says:

    Thanks! The instructions work great. I now have Mountain Lion, Windows 8, and Ubuntu 12.10 functioning properly. Is there anyway to hide those other couple of new rEFIT boot options?

  2. Christopher Berner says:

    I think that you can safely delete them by mounting /dev/sda1 to /boot/efi, and then deleting the directories that you don’t want. I’d be careful though!

  3. You should change the title to:
    Installing Ubuntu 12.10 on Macbook Pro Retina (10,1) (Should work on most recent model macbook pros)

    This worked fine on my 2011 MAcbook Pro 13″

  4. Thank you for a great post!

    The only trouble I’m having is with the Nvidia drivers. Ubuntu won’t start with the nvidia-current installed; stalls on start-up. I’ve had to remove the drivers using the recovery prompt.

    I checked the GRUB mode using boot-repair; it seems to be right. I have my GRUB installed on the Ubuntu partition (and not the /dev/sda). Could that be a problem?

  5. Thanks for the instructions. How is the battery life and how does the screen look (ie. do the fonts look ok)? Does the Thunderbolt port work? I was thinking of getting the thunderbolt-ethernet dongle to help with installing the wifi.

  6. Christopher Berner says:

    @Rohan

    I just ran into the same issue, and I’m not sure what causes it. plech.d on UbuntuForums posted that perhaps running nvidia-xconfig again would fix it, but it didn’t work for me. Here’s the link though: http://ubuntuforums.org/showpost.php?p=12324724&postcount=221

  7. Thanks Chris.

    My friend faced the same problems on his Samsung (AMD-Intel Hybrid GPUs) laptop and he suggested that the problem could be related to: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/1068661/. Apparently, latest Nvidia/ATI drivers are incompatible with the latest Intel driver that ships with Ubuntu 12.10. Due to this reason, the hybrid cards do not work; in fact, Compiz/Unity crashes very often after Ubuntu loads.

    The fix seems to be the installation of an earlier version of the Intel driver: https://launchpad.net/~andrikos/+archive/ppa/+packages?field.name_filter=&field.status_filter=published&field.series_filter=quantal.

    The fix looks to be targeted to AMD-Intel combinations, prima facie, but I have reasons to believe that it’ll work for Nvidia-Intel hybrids as well.
    (Nick himself has a Nvidia-Intel based system, per my friend’s conversation with him :-) )

    I didn’t get a chance to try this but will try soon enough.

  8. @Rohan
    I had this problem. I saw that “nomodeset” was not set. Check your “/etc/default/grub” and don’t forget to run: “sudo update-grub”.

    I have another question. When I followed this guide I thought that the problem with resolution was solved. Icons and text are so small that it’s hard to see what’s there. Or this problem is solved? May be I’m doing something wrong?