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

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.

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.


The following features seem to work out of the box:

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)


Works on fresh install.


Works on fresh install. 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:


Works on fresh install.

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.


Works on fresh install.


Works on fresh install in 13" screen.

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.


Works on fresh install.


Works on fresh install.

Install package pommed to enable Apple specific keys as volumes, media, brightness


Works on fresh install. 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 on fresh install.

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.


Works on fresh install.


Works on fresh install.


There is no official support yet in Ubuntu 12.04, 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

For Precise, the Compat module should also be installed

sudo apt-get install 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:


Reboot and the wireless should work.


Works on fresh install.


Works on fresh install.


Works on fresh install.


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.


Works on fresh install.


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


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


Documentation needed.


MacBookPro8-2 (last edited 2013-12-14 10:18:04 by knome)