MacBook (6,1) on Ubuntu 10.04 LTS (Lucid Lynx)
This page aims to describe the steps needed, to fully enable all features of the 6th Generation MacBook (Release Date: Late 2009 = MacBook6,1) when using Ubuntu 10.04 LTS, Lucid Lynx.
You can find out what model you have by typing at the terminal:
sudo dmidecode -s system-product-name
If you have a MacBook, but a different hardware revision, please go to the MacBook start page. If you have a different Intel CPU-based Macintosh product, go to the Mactel Community Help Pages to 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
Shutdown
Reboot
Suspend & Hibernate
Graphics & Desktop Effects (Compiz)
HFS+ (read only)
CD/DVD Writing
Bluetooth
Keyboard hotkeys
Sound
Microphone
External Monitor - Dual Monitor(VGA/DVI)
Wireless (AirPort)
Trackpad
Webcam/iSight
Sensors (temps & fans)
(works out-of-the-box)
(works, with remarks)
(needs manual install)
(won't work)
(not yet documented or tested)
Basic Installation Instructions
Booting the kernel from the (Live) CD was smooth and required no changes on the booting parameters.
Common things about installing and maintaining Ubuntu on Intel-based Macs: Intel CPU-based Macintosh Generic Installation Instructions, but remember that rEFIT supports this MacBook only from 0.12.
Mactel PPA
The Mactel PPA provides packages used in this guide. To add the repository, open a terminal window, and run the command
sudo add-apt-repository ppa:mactel-support/ppa
then the command sudo apt-get update
More information can be found here
Shutdown, Reboot, Suspend & Hibernate
Shutdown, suspend and hibernate all work out of the box. For reboots, a modification should be made.
Run gksudo gedit /etc/default/grub and change the line
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
to
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci"
Now, on the terminal run sudo update-grub, shutdown the computer and power it on again.
Bluetooth
Bluetooth pairing works out of the box.
If you have issues with Bluetooth, try to reset it with:
sudo hciconfig hci0 reset
Remember that the system service Bluetooth device manager (bluetoothd) must be running in the background.
Trackpad
Left-click, right-click (two finger)use and basic trackpad work out of the box. Can however be vary sensitive on clicking. You can try and adjust the sensitivity on System > Preferences > Mouse and change pointer speed (Acceleration & Sensitivity). You may want to deactivate 'Enable mouse clicks on touchpad' which can be annoying.
Side scrolling is enabled by default. Two finger scrolling can be activated from System > Preferences > Mouse and on tab Touchpad, change scrolling to Two finger scrolling.
Graphics & Desktop Effects (Compiz)
It is recommended you enable the proprietary graphics driver. After you added the Mactel PPA] repository then go to System > Administration > Hardware Drivers and choose the NVIDIA accelerated graphics driver (version current). After installing this the desktop effects worked out-of-the-box.
Installing nvidia-bl-dkms from the Mactel PPA] should enable screen brightness controls.
If enabling Desktop Effects gives strange effects, screen tearing or even an unresponsive system you need to download and install Nvidia's latest driver from their web site. Boot your system and choose Console Login. Go to the directory where you saved the file. Run sh <name of downloaded file> and follow the on screen instructions.
If you the boot splash screen to use the full screen resolution, edit gksudo gedit /etc/default/grub. Modify the line
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash reboot=pci nomodeset video=uvesafb:mode_option=1280x800-24,mtrr=3,scroll=ywrap"
Keyboard hotkeys
Brightness, volume control (up, down & mute), media controls (play/pause, next, previous) and eject works out of the box
If you apply the proprietary drivers (as recommended), then installing nvidia-bl-dkms from the Mactel PPA] should restore screen brightness controls.
Sound
Sound works out of the box, BUT you must enable the spdif and surround from the alsamixer, also turn up all the volume controls.
Open a terminal window and type alsamixer, then with the arrow keys turn up all the volume controls and activate the surround and spdif with the colon and dot keys.
Wireless
Go to System > Administration > Hardware Drivers and install the proprietary Broadcom wireless drivers.
External Monitor - Dual Monitor(VGA/DVI)
External monitors work with the proprietary nvidia drivers.
Sensors and Fan Speed
Manually set fan speed
Make sure the applesmc module is loaded by running the list modules command lsmod | grep smc.Else load it with sudo modprobe applesmc and check if it is in the /etc/modules file by running cat /etc/modules | grep smc . To manually set the fan speed, run this command:
echo 3000 | sudo tee -a /sys/devices/platform/applesmc.768/fan1_min
This will make the fan run at 3000rpm. You can change this value if this makes the fan too noisy.
This manual setting won't last when you restart.
System information
Command sudo dmidecode -s system-product-name
MacBook6,1
Command uname -a
Linux Matty-Mac 2.6.32-22-generic #36-Ubuntu SMP Thu Jun 3 22:02:19 UTC 2010 i686 GNU/Linux
Command lsusb
Bus 004 Device 005: ID 05ac:8218 Apple, Inc. Bus 004 Device 002: ID 0a5c:4500 Broadcom Corp. BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth) Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 002: ID 05ac:0237 Apple, Inc. Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 05ac:8507 Apple, Inc. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Command lspci
00:00.0 Host bridge: nVidia Corporation MCP79 Host Bridge (rev b1) 00:00.1 RAM memory: nVidia Corporation MCP79 Memory Controller (rev b1) 00:03.0 ISA bridge: nVidia Corporation MCP79 LPC Bridge (rev b3) 00:03.1 RAM memory: nVidia Corporation MCP79 Memory Controller (rev b1) 00:03.2 SMBus: nVidia Corporation MCP79 SMBus (rev b1) 00:03.3 RAM memory: nVidia Corporation MCP79 Memory Controller (rev b1) 00:03.4 RAM memory: nVidia Corporation Device 0a98 (rev b1) 00:03.5 Co-processor: nVidia Corporation MCP79 Co-processor (rev b1) 00:04.0 USB Controller: nVidia Corporation MCP79 OHCI USB 1.1 Controller (rev b1) 00:04.1 USB Controller: nVidia Corporation MCP79 EHCI USB 2.0 Controller (rev b1) 00:06.0 USB Controller: nVidia Corporation MCP79 OHCI USB 1.1 Controller (rev b1) 00:06.1 USB Controller: nVidia Corporation MCP79 EHCI USB 2.0 Controller (rev b1) 00:08.0 Audio device: nVidia Corporation MCP79 High Definition Audio (rev b1) 00:09.0 PCI bridge: nVidia Corporation MCP79 PCI Bridge (rev b1) 00:0a.0 Ethernet controller: nVidia Corporation MCP79 Ethernet (rev b1) 00:0b.0 IDE interface: nVidia Corporation MCP79 SATA Controller (rev b1) 00:10.0 PCI bridge: nVidia Corporation MCP79 PCI Express Bridge (rev b1) 00:15.0 PCI bridge: nVidia Corporation MCP79 PCI Express Bridge (rev b1) 02:00.0 VGA compatible controller: nVidia Corporation C79 [GeForce 9400M] (rev b1) 03:00.0 Network controller: Broadcom Corporation Device 4353 (rev 01)
Command lsmod
Module Size Used by michael_mic 1732 4 arc4 1153 2 hid_apple 4346 0 snd_hda_codec_cirrus 9741 1 nvidia_bl 7592 0 usbhid 36110 0 rfcomm 33421 4 snd_hda_intel 21877 4 snd_hda_codec 74201 2 snd_hda_codec_cirrus,snd_hda_intel snd_hwdep 5412 1 snd_hda_codec snd_pcm_oss 35308 0 snd_mixer_oss 13746 1 snd_pcm_oss snd_pcm 70662 4 snd_hda_intel,snd_hda_codec,snd_pcm_oss sco 7885 2 snd_seq_dummy 1338 0 snd_seq_oss 26726 0 bridge 45582 0 stp 1655 1 bridge snd_seq_midi 4557 0 snd_rawmidi 19056 1 snd_seq_midi bnep 9436 2 snd_seq_midi_event 6003 2 snd_seq_oss,snd_seq_midi joydev 8708 0 snd_seq 47263 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event l2cap 30624 16 rfcomm,bnep snd_timer 19098 2 snd_pcm,snd_seq snd_seq_device 5700 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq uvcvideo 56990 0 lib80211_crypt_tkip 7596 0 btusb 10925 2 bluetooth 49892 9 rfcomm,sco,bnep,l2cap,btusb hid 67032 2 hid_apple,usbhid bcm5974 6821 0 snd 54148 19 snd_hda_codec_cirrus,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device videodev 34361 1 uvcvideo v4l1_compat 13251 2 uvcvideo,videodev applesmc 20069 0 led_class 2864 1 applesmc input_polldev 2482 1 applesmc nvidia 9961216 40 fbcon 35102 71 tileblit 2031 1 fbcon font 7557 1 fbcon vga16fb 11385 0 bitblit 4707 1 fbcon vgastate 8961 1 vga16fb softcursor 1189 1 bitblit wl 1959598 0 lib80211 5046 2 lib80211_crypt_tkip,wl agpgart 31724 1 nvidia soundcore 6620 1 snd snd_page_alloc 7076 2 snd_hda_intel,snd_pcm shpchp 28820 0 i2c_nforce2 5199 0 lp 7028 0 parport 32635 1 lp uvesafb 22297 1 ahci 32008 2 forcedeth 49556 0
Command cat /proc/cpuinfo
processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU P7550 @ 2.26GHz stepping : 10 cpu MHz : 2261.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority bogomips : 4510.60 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU P7550 @ 2.26GHz stepping : 10 cpu MHz : 2261.000 cache size : 3072 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority bogomips : 4510.61 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management:
|