Just installed Ubuntu 12.04 (Precise Pangolin, x64) on my MacBook Pro (2010) and had a few issues. Many things are dealt with on the community wiki page, but I still had some problems:
- I can’t unplug/plug in an external monitor and have it automatically recognized. I have to pull up the nVidia X Server Settings app and then detect and enable the display manually. And if I don’t disable the display before unplugging, I can’t seem to disable the display without restarting.
- Audio over HDMI (via a Mini Display Port adapter) doesn’t work. The output doesn’t show up in the Sound control panel.
- The system bell in the terminal did not work.
1 and 2 were solved by upgrading to a newer version of the nVidia driver than the one currently in repository. I added the Ubuntu-X Swat PPA, which tracks newer versions of the driver, along with other newer, but considered stable, xorg components. I avoided the xorg-edgers PPA, which is to far on the bleeding edge for my taste.
Run this to add the Ubuntu-X Swat PPA and install the latest components:
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates sudo apt-get update sudo apt-get upgrade
Problem 3 looks to be an integration issue between components or something, according to this bug report. This kind of thing takes forever to resolve, but the problem seems to be twofold: the bell volume in X11 is set to zero by default and the bell sound hasn’t been uploaded into Pulse Audio sample cache. This can be temporarily fixed with:
pactl upload-sample /usr/share/sounds/ gnome/default/ alerts/ glass.ogg bell.ogg xset b 100
To make this permanent for your user profile, add the pactl line to ~/.xprofile and the xset line to ~/.bashrc.
Update (2012-08-28): So it’s not all moonlight and roses. I’m seeing random xorg crashes and logouts occurring. A look around the internet suggests this is due to newer nVidia drivers not playing well with xorg. Sigh. The solution for now is to use Unity 2D – this can be selected at login by clicking the Ubuntu logo in the upper right corner of the login box and selecting Ubuntu 2D. You can make this the default by running:
sudo sed -i 's/user-session=ubuntu/user-session=ubuntu-2d/g' /etc/lightdm/lightdm.conf
I don’t know why nVidia has to be so difficult about working with Linux. Are they so tied to Microsoft? I understand Linus’ recent rant on the subject better. Perhaps this is why Apple has been using more ATI chips lately…