MacBook Pro 8,1 / 8,2 / 8,3 (2011 Macbook Pro) Ubuntu 11.10

N.B. The normal USB and CD-Rom installers seem to be broken for these models. Installation only works when you use BOTH a CD-rom installer with a USB-installer in the machine at the same time. This most important stumbling block to getting Ubuntu running doesn't seem to be described or resolved in this documentation. Many users have been struggling with this in various forums however. I found the solution in this thread: http://ubuntuforums.org/showthread.php?t=1908210, although most complexities described therien are not needed. I installed, fixed the MBR with rEFIT, and restarting several times, and finally it booted into ubuntu.

This page is a stub for beginning work on describing the process of getting a 2011 MacBookPro working in Ubuntu 11.10 (Oneiric Ocelot) (latest stable release since October 2011).

This work is derived from the page that describes setup for the 8,1 MacBook Pro on Natty Narwhal.

Please note that before going through any of the suggested fixes for this hardware, or installing any additional drivers, please make sure you RUN UPDATE MANAGER first and apply all updates to the system.

Latest kernel available and tested is 3.0.0-16

You can find out what model you have by typing at the terminal:

sudo dmidecode -s system-product-name

If you have a different model, please go here and find the right wiki.

A script has been created using the information provided by this article to assist users in setting up Ubuntu properly on MacBook Pro 8,2 devices. It can be found here. All that's needed is to have an ethernet connection and run the script using bash after installing Ubuntu; it will add the necessary repositories and drivers.

Overview

As of this writing, various extended hardware in the MBP needs additional work to function correctly in Ubuntu. Below is a list/overview of the features of the MacBook Pro and their alleged status.

IconsPage/ok.png (works out-of-the-box)
IconsPage/ok.png IconsPage/info.png (works, with remarks)
IconsPage/warning.png (needs manual install)
IconsPage/dont.png (won't work)
IconsPage/question.png (not yet documented)

Suspend

works fine out-of-the-box

Screen

The resolution is right recognised, the LED-backlit works properly.

NOTE: In order to be able to adjust the brightness you will have to install the apple-gmux package and boot with acpi_backlight=vendor kernel parameter which you can set e.g. in the /etc/default/grub file in GRUB_CMDLINE_LINUX line. Details: https://wiki.ubuntu.com/Kernel/AppleGmuxBacklight

Colors

The best way to set up good color profiles is to use the color profiling tools in OS X (since Ubuntu doesn't offer any software methods to achieve this in 11.10) and import these profiles as .icc files in System Settings - Color by selecting the appropriate screen icon, clicking "add profile" and navigating to the .icc files (located in OS X under /Users/username/Library/ColorSync/Profiles or /Library/ColorSync/Profiles/Displays if the settings were saved for all users). After this, choosing the radio button under the new OS X profile should yield a nice color profile.

Reboot

Works without any specific configuration.

Video

13-inchand 17-inch

Need test

15-inch

AMD Radeon HD 6470M

Works out of the box. Additional hardware suggested to install proprietary drivers. They work also.

NOTE: There is an issue on the 15 & 17 inch models that the graphics switching does not currently work (between integrated and discrete chips). The integrated graphics is not enabled unless booting from EFI. The impact is much reduced battery life. The 13 inch model is not effected since it only has the Intel chip. See the following links for details.

HFS+

HFS is mounted as Read-Only. By turning journaling off in OS X, the HFS+ file system will be read/write under Linux. This is the recommended solution if you need read/write access to your OS X partition.

It's also possible to mount HFS+ journaling-enabled volumes using the "-o force,rw" option though this is extremely risky.

Leaving the HFS's journaling turned on you're able to access it as root.

Cd&Dvd

works fine out-of-the-box. Be sure to have at least kernel 3.0.0-14, otherwise on 8,2 the cd/dvd drive is not functioning(https://bugs.launchpad.net/ubuntu/+source/linux/+bug/782389)

Keyboard

Works fine out-of-the-box. Install package pommed to enable Apple specific keys as volumes, media, brightness

Touchpad

Works fine out-of-the-box. You can disable the mouse-click with the trackpad tap and the horizontal scrolling in Preferences.

Unity supports multitouch with this funcs:

  • 1 finger
    • move = move the cursor;
    • click = "your-favourite-hand"-click;
  • 2 fingers
    • move = vertical/horizontal scrolling;
    • click = "2nd-button"-click;
  • 3 fingers
    • move = move the window and shows resizing options;
  • 4 fingers
    • move = show/hide the launcher (horizontal-scroll, enable auto-hide the launcher first);
    • single-tap = show the dash.

To get multitouch with just two finger scrolling and drag-and-drop follow these instructions:

sudo add-apt-repository ppa:mactel-support && sudo apt-get update
sudo apt-get install xserver-xorg-input-synaptics

Palm Recognition

By default palm recognition is not turned off, so you might have trouble moving the cursor or clicking something by brushing the trackpad with your palm while typing. To turn palm recognition on, open up a terminal and copy your default conf file:

sudo cp /usr/share/X11/xorg.conf.d/50-synaptics.conf /etc/X11/xorg.conf.d/my-synaptics.conf

Now edit the new conf file:

gksudo gedit /etc/X11/xorg.conf.d/my-synaptics.conf

and add the following line just before the EndSection marker of your input class:

Option "PalmDetect" "1"

Fine-tuning the touchpad

You can play with other options offered by Synaptic input drivers that are explained here and in this blog post.

External Monitor

External monitors connected via HDMI work out of the box.

If your external display's native resolution is not recognised when connected via a VGA port (only a lower resolution, such as 800x600 is offered, for example), then you need to issue a couple of xrandr commands in a terminal to force add the desired resolution. The source of information for this fix comes from here.

To check that xrandr is installed issue:

$ sudo apt-get install xrandr

You have to create a modeline using the gtf or cvt utility. For example, if you want to add a mode with resolution 1920x1080, you can enter the following command (The output is shown following):

$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

Then copy the information after the word "Modeline" into the xrandr command (which would in my example state):

xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

Now get the code of your external monitor by issuing xrandr. For me the external screen is branded DP1.

Now add this mode to the available ones for your external screen:

xrandr --addmode DP1 1920x1080_60.00

And select it:

xrandr --output DP1 --mode 1920x1080_60.00

If everything goes well, the resolution should be ok now and you'll have the desired option in the normal display preferences. This will have to be repeated every time. The easiest way to automate the task, add the 3 xrandr commands to the ~/.xprofile file.

$ gedit ~/.xprofile

The file should look something like:

xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr --addmode DP1 1920x1080_60.00
xrandr --output DP1 --mode 1920x1080_60.00

Afterwards, you have to add executable access to the file:

$ chmod +x ~/.xprofile

Note: if you make a mistake in the .xprofile file, you might have trouble reverting back to normal settings - in this case you can always use ctrl+alt+F1 to open the shell interface and issue mv ~/.xprofile ~/.xprofile-old; sudo reboot to get the previous settings back.

Sound

Works out-of the box, but some volume corrections are necessary.

You can install gnome-alsamixer for a nice GUI to set up your sound:

sudo apt-get install gnome-alsamixer

You can now open gnome-alsamixer from the dash and mix the volumes to your liking.

Ethernet

Works without any special configuration.

Wireless

There is no official support yet in Ubuntu 11.10, but you can get it working with the following repository:

sudo add-apt-repository ppa:mpodroid/mactel
sudo apt-get update
sudo apt-get install b43-fwcutter firmware-b43-installer

Then install the linux-backports-modules-cw-3.2-oneiric-generic or, if you have the pae kernel installed, the linux-backports-modules-cw-3.2-oneiric-generic-pae package. While this tutorial deals with Oneiric, the same instructions for the wireless work for Precise, with the above installation of "linux-backports-modules-cw-3.2-oneiric-generic" replaced with "linux-backports-modules-cw-3.3-precise-generic".

Edit the /etc/modprobe.d/blacklist.conf and add the line:

blacklist ndiswrapper

Create or edit the file /etc/pm/config.d/modules and make sure the wireless modules (b43 and bcma) are blacklisted:

SUSPEND_MODULES="b43 bcma"

Reboot and the wireless should work.

Bluetooth

Works out-of-the box. Make sure you have all the updates installed.

Webcam

The new FaceTime HD Camera works without any special configuration.

Microphone

Works out-of-the-box. May need to uncheck mute in the sound preferences.

WARNING!!!! THE FOLLOWING ARE ORIGINAL PAGE, NOT EDITED YET

Sensors

The program lmsensors detects the sensors, however it does not know what they are yet. But coretemp will allow lm-sensor to detect the others sensors, the rotation speed of the fan and the GPU temperature. {{{sudo sensors-detect }}}

It will be active at next reboot, but it you want it now type:

sudo modprobe coretemp

It is highly recommended to use the fan controller daemon that is included in the mactel-support ppa called macfanctl. However, that PPA does not currently have a build of macfanctl for Oneiric, so you can use this PPA: ppa:mpodroid/mactel (required also for wireless support)

sudo apt-add-repository ppa:mpodroid/mactel
sudo apt-get update
sudo apt-get install macfanctld

After installation you there is a config file located at /etc/macfanctl.conf. The default configurations seems to work well.

FireWire

To be tested

Battery

Lasts not more then 4.30 hrs in powersave mode, in wireless mode an average of 3.40 hrs.

You can increase these values by installing the laptop-mode and powertop packages, following the Extend battery life section of this thread on the forum, and recommendations stated by powertop -d

CardReader

Works with a standard SD card and SDHC card, not tested with SDXC card.

Thunderbolt

needs docs

ARC

Documentation needed.


CategoryMac

MacBookPro8-2/Oneiric (last edited 2013-12-14 10:13:24 by knome)