This page describes how to install Debian on a MacBook Pro.
Most points are the same like the MacBook so we point out the differences only.
MacBook Pro specific bugs can be found at http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=macbook-pro;users=kraai@ftbfs.org.
Install Debian
See the MacBook Install Debian section.
If the kernel panics when you press return at the ISOLINUX prompt, enter "install noapic" at the ISOLINUX prompt (the kernel may panic while enabling the IO-APIC IRQs, [http://bugs.debian.org/381719 bug 381719]).
Kernel
linux-2.6 2.6.22 should work out of the box.
linux-2.6 2.6.18-3 supports MacBook Pros out of the box, but you'll need to ensure that the appletouch module is loaded before the usbhid module. You can do so by creating a file in /etc/modprobe.d that contains the following line:
install usbhid /sbin/modprobe appletouch && /sbin/modprobe --ignore-install usbhid $CMDLINE_OPTS
For some reason, this doesn't always work.
Using pre-built patched i386 etch kernel
See http://marcin.owsiany.pl/mactel.en.html for information. Note that only architecture i386 kernels are provided, no amd64 ones. These are unofficial packages, prepared by a debian developer.
Using stock kernel and patch from svn
You can build your own kernel using the stock Linux kernel and the patches found in the [http://svn.sourceforge.net/viewvc/mactel-linux/trunk/ mactel-linux SVN]. Here is the steps to follow:
- download the source for the stock kernel from one of the kernel mirror,
- get the mactel-linux patches with svn:
svn co https://svn.sourceforge.net/svnroot/mactel-linux/trunk mactel-linux-trunk
- apply all the mactel-linux patches:
cd mactel-linux-trunk/kernel/mactel-patches-2.6.17 vi version.patch # if you are patching a kernel different than the svn one ./apply /where/you/have/the/kernel/sources
copy the config from the svn (trunk/kernel/mactel-patches-2.6.17/config-2.6.17-MBP) to your kernel dir, with name .config,
configure your kernel with make menuconfig, and control that CONFIG_FB_IMAC is not set,
build your kernel (fakeroot make-kpkg ...,
install your kernel (dpkg --install ...),
- reboot.
X Window System
See MacBook page for other details.
The installation of x.org should work out of the box with the sid version of x.org (nv or radeonhd drivers).
If you wish 3D acceleration on ATI cards, install the non-free fglrx-driver package and, in the Device section of /etc/X11/xorg.conf, change the driver from "ati" to "fglrx". Afterwards, to enable 3D you need to build the kernel fglrx module:
apt-get install fglrx-control fglrx-kernel-src module-assistant m-a prepare m-a a-i fglrx depmod -a modprobe fglrx
Wireless
See the MacBook Wireless section.
This requires a newer version of the madwifi. I had problems with the svn causing a kernel panic, so I ended going with a snapshot of the madwifi-ng tree. This can be downloaded from here http://snapshots.madwifi.org/madwifi-ng-current.tar.gz, website here: http://www.madwifi.com.
Sound
See the MacBook Sound section.
With a Core 2 Duo MacBook Pro and kernel 2.6.18-3-amd64 sound only works with the headphone but no speaker output.
With a Core2 Duo MacBook Pro (built fall 06) running (unpatched) 2.6.18-3-686, sound output can be changed as follows in alsamixer:
- PCM channel changes overall volume
- Center and LFE channels change volume of headphones output (which is at the jack labled as line in!)
- Line in (only toggling mute possible) enables/disables built-in speakers
- IEC958 enables/disables optical IO on jack labled as headphones
- line in not yet worked out
Sound does not work with the mid 2007 version of MBP and kernel 2.6.22. Maybe with 2.6.23 ?
cpufreq
See the MacBook cpufreq section.
infra red receiver
See the MacBook infra red receiver section.
iSight
See the MacBook iSight section.
Appendix: Santa Rosa/LED MBP
The data from the section refers to testing/stable/unstable and svn's as of 7/25/07.
Mostly everything is the same with a few changes. The testing distro has enough working drivers to get you started. The stable distro, however does not have a new enough version of the ethernet drivers to work. The other caveat here is that 'apt-get install grub' seems to give you grub2 which didn't seem to work for me. If you're using rEFIt to boot to a boot loader then you should turn use Lilo or grub 1.
Ethernet
Requires a new version of sky2 available on the testing CD, but I am unsure as to what the minimum kernel version is. However, it works out of the box with kernel 2.6.22.
Video
The newest MBP uses an Nvidia 8600GM. The OSS drivers work in testing. The current binary nvidia drivers don't work quite right. To fix funky colors or missing mouse cursor you can do one of two things:
- You can run X first with the open source 'nv' driver and then run the nvidia driver.
Use the nv_macbook.diff patch here on this [http://sourceforge.net/mailarchive/forum.php?thread_name=46A87E2A.1030507%40dark-green.com&forum_name=mactel-linux-devel thread] it is listed as an attachment on the second message in that thread.
Touchpad
The touchpad seems to miss some of my touches and I am not sure what is causing this, if someone does figure this out or also see it please post fixes/suggestions here.
Plan
Here's what needs to be done:
- Figure out how to install ELILO.
- Figure out how to suspend and resume
- +++ MBP v3
- works out of the box for me with lenny, 2.6.22-2-686 in KDE; I used Settings/Power control/Laptop battery to parameter it. --
ED: With 2.6.22-3-amd64 and testing/unstable it does not work by choosing in GNOME System->?ShutDown->Suspend, MacBookPro v3.
- +++ MBP v3
- Figure out how to use the remote control.