MacBook Pro 8,1 / 8,2 / 8,3 (2011 Macbook Pro) Ubuntu 11.04
This page is a stub for beginning work on describing the process of getting a 2011 MacBookPro working in Ubuntu 11.04 (Natty Narwhal) (latest stable release since 28-Apr-2011).
This work is derived from the page that describes setup for the 7,1 MacBook Pro on Maverick Meerkat.
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.
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.
This thread on the forums has info on how to get started setting up Ubuntu for Natty (The thread says "Maverick", but most of the discussion in there is Natty-focused).
(works, with remarks)
(needs manual install)
(not yet documented)
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 modprobe coretemp
Then add coretemp to the list of modules loaded during the boot process:
sudo gedit /etc/modules
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 Natty. After enabling the ppa as shown above you can add this tool with the following command:
sudo apt-get install macfanctld
OR use this command:
and then run:
sudo dpkg -i macfanctld_0.5~mactel1~maverick_amd64.deb
After installation you there is a config file located at /etc/macfanctl.conf. The default configurations seems to work well.
works fine out-of-the-box, but if you suspended the laptop by closing the monitor the trackpad and the keyboard will not work after resuming.
You can avoid this issue by adding/linking the script of this thread to the folders /usr/lib/pm-utils/sleep.d and /usr/lib/pm-utils/power.d.
The resolution is right recognised, the LED-backlit works properly.
NOTE: There was a problem with levels of brightness (the last one) but running all latest updates that issue has been fixed, and everything works properly.
Works without any specific configuration.
Intel HD Graphics 3000
Works out of the box.
15-inch and 17-inch
AMD Radeon HD 6490M
Works out of the box.
AMD Radeon HD 6750M
Works out of the box.
There is at least one report of temporary screen flickering after reopening the lid when using the open source driver (not fglrx): switching to fglrx resolved the issue.
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.
- Search google for "ubuntu macbook graphics switching"
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.
works fine out-of-the-box, on 8,2 the cd/dvd drive is not functioning(https://bugs.launchpad.net/ubuntu/+source/linux/+bug/782389)
works fine with Natty Linux kernel version 2.6.38-9 or later
Works partially fine out-of-the-box, sometimes the entire keyboard could stops working without reason (like as resuming from Standby). To change the function key behavior, ie fn+f1 to adjust brightness ---
echo 2 > /sys/module/hid_apple/parameters/fnmode
ps: you might need to do this as root (sudo su)
Keyboard backlight is working with the latest pommed (version 1.39 and above). You might need to compile and install it manually, since the natty version of mactel PPA does not include a package for pommed.
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);
- single-tap = show the dash.
but sometimes it could stops working without reason (like as resuming from Standby), so take another mouse to reboot and everything will work again.
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 bcm5974-dkms xserver-xorg-input-synaptics xf86-input-multitouch
Then edit /etc/X11/xorg.conf
Section "InputClass" MatchIsTouchpad "true" Identifier "Multitouch Touchpad" Driver "multitouch" MatchDevicePath "/dev/input/event*" EndSection
Works out of the box for at least an external Firewire 400 drive.
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 without any special configuration.
Using the bleeding-edge b43 open source driver
The latest (27 Aug 2011) version of the b43 wireless software supports the 4331 wireless card used in the MacBook Pro 8-x. This module may still be in experimental stage and has to be patched and compiled from source. However, clear step-by-step instructions for doing so are available at:
Instructions: http://homepage.uibk.ac.at/~c705283/archives/2011/09/04/linux_support_for_broadcom_4331_wireless_chip_macbook_pro_81/index.html .
The above instructions and the driver have been verified to work under Natty on a Macbook Pro 8,1 and 8,2. This is the recommended method over the fallback method described in the next section.
Note: If upgrade your kernel at a later stage you will have to recompile and reinstall the module as it will get overwritten. Unless of course the module and patches become part of the kernel itself.
Fallback method (ndiswrapper)
In the 64-bits edition (named 'amd64') you can install the windows 64-bit driver (you can find it here: http://ubuntuforums.org/attachment.php?attachmentid=184715&d=1298911090, in the wiki page http://ubuntuforums.org/showthread.php?t=1695746&highlight=bcm4331&page=2) through ndiswrapper. But after configuring ndiswrapper, ubuntu fails to boot while loading the ndiswrapper module; so you have to remove ndiswrapper from "/etc/modules", it obviously doesn't allow you to use wireless lan (but ubuntu boots well), some users fixed that by adding "ndiswrapper" to autostart applications. Appreciate any suggestions.
Note: many users have reported a high unstability by using this approach like system stopped responding to commands from the keyboard and mouse;
Ndiswrapper : How to setup and run.
1. "cd to folder directory where the inf, sys, and cat files are. (Extract the 7z.gz file to Home folder. And cd into amd64) 2. Run these commands
sudo ndiswrapper -i bcmwl5.inf
sudo ndiswrapper -l
make sure you see the driver listed like this
bcmwl5 : driver installed
- device (14E4:4331) present
now run this command to start it
sudo depmod -a
sudo modprobe ndiswrapper
To make sure it always starts up use
sudo ndiswrapper -m
Broadcom engineers mention Linux support for the new chipset here: http://comments.gmane.org/gmane.linux.kernel.wireless.general/66377
[2011-07-08] Update: "We're currently on a big push to finish cleaning up the driver and moving into mainline. After that, we'll be working on adding a number of new chips." http://answerpot.com/showthread.php?2574286-Broadcom%204331%20wireless%20device
[2011-08-08] Update: Following this ChangeLog of 3.1 RC1 it seems support is on it's way: http://www.eu.kernel.org/pub/linux/kernel/v3.0/testing/ChangeLog-3.1-rc1
[2011-09-18] Update: For those not wanting to wait:
About the only thing missing was I had to also "apt-get install kernel-package" first. Instructions were tested on Oneiric.
[2011-09-18] Update: there is a PPA that seems to work:
sudo add-apt-repository ppa:zwaldowski/ppa
sudo apt-get update
sudo apt-get install b43-fwcutter compat-wireless-b43-dkms driver-b43-installer firmware-b43-installer
The new FaceTime HD Camera works without any special configuration.
Works with a standard SD card and SDHC card, not tested with SDXC card.
Works fine out-of the box. Some users found the speaker mute, it can be fixed: launch in terminal "alsamixer", set "show all" by clicking tab a couple of times and unmute by clicking "M" the speaker.
Sound does work by going into the sound preferences panel and unchecking "mute," which for some reason was automatically selected.
Sound works partial out of the box.
If you do not get stereo sound from your internal speakers, try adding options snd-hda-intel model=mbp55' to the end of /etc/modprobe.d/alsa-base.conf' and rebooting ( this thread ).
In case you don't have any sound and you upgraded from Maverick 10.10 try:
apt-get remove snd-hda-dkms
More details here: http://fossplanet.com/f10/%5Bbug-778049%5D-%5Bnew%5D-sound-not-working-kernel-2-6-38-macbook-6-1-a-157302/
Optical cables work.
Works out-of-the-box. May need to uncheck mute in the sound preferences.
Works out-of-the box on Macbook Pro 8,2 and Macbook Pro 8,3, but does not work out-of-the box on Macbook Pro 8,1. Main-screen freeze and external monitor doesn't work. You have to upgrade the kernel to version 2.6.39-0 or higher.
Open your terminal and type:
wget linux-headers-2.6.39-0_2.6.39-0.5~20110427_all.deb wget linux-headers-2.6.39-0-generic_2.6.39-0.5~20110427_amd64.deb wget linux-image-2.6.39-0-generic_2.6.39-0.5~20110427_amd64.deb sudo dpkg -i linux-headers-2.6.39-0_2.6.39-0.5~20110427_all.deb sudo dpkg -i linux-headers-2.6.39-0-generic_2.6.39-0.5~20110427_amd64.deb sudo dpkg -i linux-image-2.6.39-0-generic_2.6.39-0.5~20110427_amd64.deb
Reboot the machine and external monitor should work.
Here is a how to: http://blog.lome.pl/blog/ubuntu-11-4-black-screen-problem-solved/