This page aims to describe the steps needed, to fully enable all features of the 5.2 White Macbook (release date: early 2009) when using Ubuntu 10.10, Maverick. You can check here if you own this model: on wikipedia, on apple.com

You can find out what model you have in OSX, System Profiler

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

Overview

Anything not mentioned here probably already works out of the box. If not, please refer to the Ubuntu Apple Users forum.

  • Feature

    Support status

    Sound

    IconsPage/warning.png

    Suspend

    IconsPage/ok.png

    Hibernate

    IconsPage/dont.png

    Shutdown

    IconsPage/ok.png

    ACPI, power management, etc

    IconsPage/warning.png

    Shell/CTRL-ALT-Fn

    IconsPage/ok.png IconsPage/info.png

    Reboot

    IconsPage/ok.png

    Desktop Effects (Compiz)

    IconsPage/ok.png

    Keyboard functions (Brightness,volume,...)

    IconsPage/ok.png IconsPage/info.png

    CD/DVD Writing

    IconsPage/ok.png

    Bluetooth

    IconsPage/ok.png

    External Monitor

    IconsPage/question.png

    Wireless (AirPort)

    IconsPage/ok.png IconsPage/info.png

    iSight

    IconsPage/ok.png IconsPage/info.png

    Touchpad (appletouch)

    IconsPage/ok.png IconsPage/info.png

    Apple Remote Control

    IconsPage/question.png

    Firewire

    IconsPage/question.png

IconsPage/ok.png (works out-of-the-box)
IconsPage/ok.png IconsPage/info.png (works perfectly, but needs a little job)
IconsPage/warning.png (works, with remarks)
IconsPage/dont.png (won't work - please post if you have hints)
IconsPage/question.png (not yet documented - please post if you can test)

Basic Installation Instructions

  • As stated in Ubuntu 10.10 Release Notes, Macbooks with EFI will not be able to boot the 64bit (amd64) version of Ubuntu 10.10 live cd. The i386 CDs will work.
  • If you really want to use the x86_64 version, you can download an alternate installation media from here. This iso will work.

  • Due to this bug, booting the kernel requires to use  maxcpus=1  or  acpi=off  flags. While booting from the LiveCD, make sure to hit F6 in order to change the boot options. Since the Macbook is a laptop, I strongly suggest to use the  maxcpus=1  option in order to save ACPI features.

Other common things about installing and maintaining Ubuntu on Intel-based Macs: Intel CPU-based Macintosh Generic Installation Instructions

Wireless (AirPort)

To enable wireless you need to install the restricted Broadcom STA driver. Open  System -> Administration -> Additional Drivers  and choose Broadcom STA. Otherwise, if you chose to install restricted software during Ubuntu's installation, the wireless card will automatically work.

Desktop Effects (Compiz)

You probably want to enable the proprietary graphics driver. Go to  System -> Administration -> Additional Drivers  and choose the NVIDIA accelerated graphics driver (latest version).

If desktop effect have strage behaviour, or if you are experiencing tearing, install the  compizconfig-settings-manager  package and edit compiz settings accordingly.

Touchpad

Left-click, right-click, two-finger use and basic trackpad work out of the box. It seems to be very slow and flaky, though. This can be fixed in  System > Preferences > Mouse  and change pointer speed (Acceleration & Sensitivity) Two finger scrolling can be activated from  System > Preferences > Mouse  and on tab Touchpad, change scrolling to Two finger scrolling. From here you can also deactivate the mouse click on the track pad which is very annoying.

Thanks to http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=10;att=0;bug=576456

You should disable the mouse plugin in gnome-settings-daemon, since gnome-control-center can't handle every possible touchpad setting via gnome-mouse-properties. Open a terminal and type

gconftool-2 --type boolean --set /apps/gnome_settings_daemon/plugins/mouse/active false

Then, edit your  /etc/X11/xorg.conf :

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "synaptics"
    Option         "Protocol" "auto-dev"
    Option         "Device" "/dev/psaux"
    Option         "SendCoreEvents" "true"
    Option         "LeftEdge" "100"
    Option         "RightEdge" "1120"
    Option         "TopEdge" "50"
    Option         "BottomEdge" "310"
    Option         "FingerLow" "5"
    Option         "FingerHigh" "20"
    Option         "MaxTapTime" "100"
    Option         "MaxTapMove" "150"
    Option         "MaxDoubleTapTime" "180"
    Option         "VertScrollDelta" "20"
    Option         "HorizScrollDelta" "50"
    Option         "MinSpeed" "0.49"
    Option         "MaxSpeed" "0.78"
    Option         "AccelFactor" "0.0010"
    Option         "LockedDrags" "false"
    Option         "TapButton1" "1"
    Option         "TapButton2" "3"
    Option         "TapButton3" "2"
    Option         "VertTwoFingerScroll" "true"
    Option         "HorizTwoFingerScroll" "false"
    Option         "FastTaps" "true"
    Option         "VertEdgeScroll" "false"
    Option         "HorizEdgeScroll" "false"
    Option         "SHMConfig" "true"
EndSection

If you keyboard stops working, add this lines too:

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

If you want you can change these settings in order to reach your preferred config. Check man synaptics to find all options and tuning.

Keyboard functions

Volume Up (F12), Volume Down (F11), Volume Mute (F10), Eject will work out-of-the-box.

Adjusting the screen brightness works out of the box with the default free graphics driver. But when you install the restricted NVIDIA graphics driver, it won't work.

In order to control the monitor backlight with the restricted driver, you need to add the Mactel PPA on your  /etc/apt/sources.list  and then install the  nvidia-bl-dkms  package. A reboot might be necessary.

ACPI, power management, etc

Due to this bug, in order to make the system boot you need to add the  maxcpus=1  or  acpi=off  options to your kernel boot line. Since the Macbook is a laptop, I strongly suggest to use the  maxcpus=1  option in order to save ACPI features.

You can edit the  /etc/default/grub  file with the editor of your choice (nano, gedit, kwrite, etc.), but remember to apply the changes you make by running  sudo update-grub 

Shell/CTRL-ALT-Fn

Works out of the box with the free nouveau drivers. Seems to work with the restricted ones, but at low screen resolution.

External Monitor

Works fine with proprietary NVIDIA graphics driver, you just need to configure it with the nvidia-settings tool - no reboot is needed. You can find it in  System -> Administration .

Sound and Headphones

Front speakers work out of the box, but with poor sound quality. By default, headphones are not working.

You can edit some settings in file  /etc/modprobe.d/options  OR  /etc/modprobe.d/alsa-base.conf  - you may need to create the former.

Add the following line. If you use this, you get the same poor sound quality but headphones working (you need to reboot)

options snd_hda_intel model=mbp3 power_save=5

If you don't want to reboot, you can:

  • close all audio applications
  • unload the module snd-hda-intel typing a couple of times in a terminal

sudo killall pulseaudio && modprobe -r snd-hda-intel
  • and than reload the module with this command

sudo modprobe snd-hda-intel model=mbp3 power_save=5

If you want good audio quality but NO headphones working, you can instead use this in the same file as above, and than reboot - or if you don't want, you can do as before:

options snd_hda_intel model=acer-aspire-7730g power_save=5

Microphone

The internal microphone works with both settings as in the section above.

Webcam/iSight

The built-in webcam works following this simple howto: AppleiSight

Suspend

Suspend works out of the box.

Remote Control

You have to install gnome-lirc-properties from repositories, and configure it following the wizard, choosing Apple Mac Mini IR Receiver with Custom remote control. Then go in  System -> Preferences -> Infrared Remote Control  , unlock the window, choose autodetect and select the IR receiver. Now you can test it: in the bottom of the window, you can see if you remote control works.

Then change the file /etc/lircd.conf.gnome into this:

begin remote
  name             Apple_A1156
  bits             8
  eps              30
  aeps             100
  one              0 0
  zero             0 0
  pre_data_bits    24
  pre_data         0x87EE81
  gap              211982
  toggle_bit_mask  0x0
  ignore_mask      0x0000ff01

      begin codes
          KEY_VOLUMEUP       0x0B
          KEY_VOLUMEDOWN     0x0D
          KEY_PREVIOUSSONG   0x08
          KEY_NEXTSONG       0x07
          KEY_PLAYPAUSE      0x04
          KEY_MENU           0x02
      end codes


end remote

Now, create and make executable two files in your home directory-I created them in the "script" directory: they will let you adjust audio volume from shell: script/volume_up

A=`pacmd dump | grep "set-sink-volume " | cut -d " " -f 3`
B=$((A + 0x01000))
if [ $(($B)) -gt $((0x10000)) ]
 then
    B=$((0x10000))
fi
pactl set-sink-volume 0 `printf "0x%X" $B`

script/volume_down

A=`pacmd dump | grep "set-sink-volume " | cut -d " " -f 3`
B=$((A - 0x01000))
if [ $(($B)) -lt $((0x00000)) ]
 then
    B=$((0x00000))
fi
pactl set-sink-volume 0 `printf "0x%X" $B`

This two scripts are useful to control your audio level from the shell or in a script. If they don't work because you have some esoteric configs, maybe you can adjust them on line 3 - take a look at the output of the command

pacmd dump

in line beginning with "set-sink-volume" and adjust line 3 accordling.

Now, you have to create a file like this (this is my own config, you can change it according to your preferences) in your home directory: .lircrc

begin rhythmbox

begin
prog = Rhythmbox
button = play
config = playpause
end

begin
prog = Rhythmbox
button = pause
config = pause
end


begin
prog = Rhythmbox
button = forward
config = next
end

begin
prog = RhythmBox
button = backward
config = previous
end

begin
prog = RhythmBox
button = fw
config = seek_forward
end

begin
prog = RhythmBox
button = bw
config = seek_backward
end
end rhythmbox


begin
prog = irexec
button = volup
config = $HOME/script/volume_up
repeat = 2
end


begin
prog = irexec
button = voldown
config = $HOME/script/volume_down
repeat = 2
end

begin
prog = irexec
button = play
config = rhythmbox-client
end

begin
prog = irexec
button = menu
config = rhythmbox-client --set-rating 2
end

and last add and enable the command "irexec --daemon" in System -> Preferences -> Session Properties (gnome-session-properties, from shell) - this will run irexec every time you log in into your home session and execute your favourite commands when you press something on your remote control.

With this .lircrc file:

  • Pressing Play/Menu will start rhythmbox, if it is not already running
  • Pressing vol+/vol- will change system volume
  • Pressing Play will play/pause playback, if rhythmbox is running
  • Pressing forward/backward will change song, if rhythmbox is running
  • Pressing menu will rate with two stars the current song, if rhythmbox is running

You can change it as you prefere.


CategoryMac




IconsPage/users.png
Please update this page, if you have figured out anything, that is not mentioned here!



IconsPage/users.png
The MactelSupportTeam is about to restructure and reorganize the documentation for Intel-based Macs. If you are interested in helping, please visit our team page for information. For all Mactel wikis, there is a starting place here. There is also a thread about planning the Mactel docummentation going on.



MacBook5-2/Maverick (last edited 2013-12-14 02:19:01 by knome)