Installing Fedora 10 Linux on Macbook Air
Note: See comment below to my link for the Fedora 11 experience.
I have Fedora 10 Beta running quite smoothly on the original MacBook Air. There are several good sites from which I got most of my information. They are:
- http://www.kerbyserver.net:82/drupal/node/25
- http://www.mactel-linux.org/wiki/Fedora8OnMacBookSantaRosa#Wireless_installation_using_ndiswrapper
- http://nareshv.blogspot.com/2008/10/fedora-10-beta-64-bit-on-macbook-pro-41.html
- http://nareshv.blogspot.com/2008/09/fedora-9-on-macbook-pro-penryn-intel.html
Here are the steps I followed to get Fedora installed:
- Use Boot Camp to make room for Fedora. Go through the wizard and resize the partitions. Then quit Boot Camp
- Download rEFIt and install it on the Macbook Air
- Download a Fedora Live CD to another Fedora Install. I tried quite unsuccessfully to get the Macbook Air to boot the live CD from a USB thumbdrive but was not able to do so ever. I was using the live cd tools command
livecd-iso-to-diskto put the Live CD iso on the USB thumbdrive. rEFIt would recognize the thumbdrive and try to boot it but then give an error saying Apple’s firmware does not have good support for booting legacy OS’s.In the end I bought an external USB CDROM drive. Apple sells one that is expensive. I bought the cheapest one from Frye’s at $40. I put the Fedora Live CD on CD, plugged the external CDROM drive into the MacBook Air’s USB slot and booted. Hitting theOptionduring boot brings up rEFIt. It recognized linux on the CD and gave me the option to boot it. - The Live CD boot took a really long time and printed several warnings and errors during the process. It finally made it to the login screen. I auto-logged in and double clicked the Live Install option. During the install, I selected “Create Custom Layout” during the disk formatting option. I changed the third partition to ext3 and reduced its size by 2GB. I created a fourth partition of type swap. I made the third partition the root directory /. I then rebooted.
- With linux installed, it booted much faster and without errors. I happened to have the USB to Ethernet adapter that Apple sells. This made getting everthing working much easier. The live cd is rather lean on programs, so I first did a yum update and installed some of the essentials like
gcc, emacs, make,etc. - Wireless: To get wireless working I used ndiswrapper from the Livna repo. Download the livna repo file and install it:
wget http://rpm.livna.org/livna-release-9.rpm rpm -ihv livna-release-9.rpm
Then I disabled the livna repo by default in the
/etc/yum.repos.d/livna.repo. Then installndiswrapperand associated kernel module:yum install --enablerepo livna-development ndiswrapper kmod-ndiswrapper akmod-ndiswrapper
Run the
akmodscommand to build the ndiswrapper kernel module. Now download the windows driver for the Broadcom wireless adapter:wget ftp://ftp.hp.com/pub/softpaq/sp37501-38000/sp37950.exe
I had to use Windows to unpack this file. Grab the
bcmwl5.inffile and put it on the Air. Run the commandndiswrapper -i bcmwl5.inf ndiswrapper -ml ndiswrapper -mi ndiswrapper -m
I then had to remove all the pci related lines out of the
/etc/modprobe.d/ndiswrapperfile and leave only thealias wlan0 ndiswrapperline. Despite my best efforts with modprobe and ndiswrapper, I did not get awlan0network interface until I rebooted. After the reboot, wireless was working fine–except WPA. - Sound: Sound took me quite a while to get right. I tried adding
options snd_hda_intel model=mbp3to/etc/modprobe.d/soundas suggested on other places, and still sound would not play even through reboots. Various forums said to make sure the “Speaker” option was checked in the volume control dialog. That did not help. I was doing a lot of futzing with modprobing the snd_hda_intel driver with various models, including mbp3, laptop, viao, etc. I was doing this from a virtual terminal after teliniting to runlevel 3. Then, as root I started X from a virtual terminal using the startx command and suddenly sound was working. When I tried it as regular user, it was still working. It even continued to work through a reboot. So I am not sure why it started working, but it is working. Perhaps there was a permission issue with /dev/snd/* modules? I am not sure why logging in as root would have effected any permissions though. Perhaps the also settings were adjusted correctly when I logged in as root and now they are saved? I don’t know… - Keyboard:Fedora 10 does not come with an xorg.conf file. I created the following xorg.conf file to get multi-touch working:
Section "ServerLayout" Identifier "Default Layout" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Synaptics Touchpad" "CorePointer" EndSection #Section "Files" # ModulePath "/usr/lib/xorg/modules/extensions/nvidia" # ModulePath "/usr/lib/xorg/modules" #EndSection Section "Module" Load "synaptics" Load "extmod" Load "dbe" Load "glx" EndSection Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/input/mice" Option "Protocol" "auto-dev" Option "SHMConfig" "true" Option "LeftEdge" "10" Option "RightEdge" "1200" Option "TopEdge" "10" Option "BottomEdge" "370" Option "FingerLow" "10" Option "FingerHigh" "20" Option "MaxTapTime" "180" Option "MaxTapMove" "220" Option "SingleTapTimeout" "100" Option "MaxDoubleTapTime" "180" Option "LockedDrags" "off" Option "MinSpeed" "1.10" Option "MaxSpeed" "1.30" Option "AccelFactor" "0.08" Option "TapButton1" "1" Option "TapButton2" "3" Option "TapButton3" "2" Option "RTCornerButton" "0" Option "RBCornerButton" "0" Option "LTCornerButton" "0" Option "LBCornerButton" "0" Option "VertScrollDelta" "20" Option "HorizScrollDelta" "50" Option "HorizEdgeScroll" "0" Option "VertEdgeScroll" "0" Option "VertTwoFingerScroll" "1" Option "HorizTwoFingerScroll" "1" EndSection Section "InputDevice" # keyboard added by rhpxl Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 30.0 - 110.0 VertRefresh 50.0 - 150.0 Option "DPMS" EndSection Section "Device" Identifier "Videocard0" # Driver "nvidia" EndSection Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 24 Option "AllowGLXWithComposite" "True" Option "AddARGBGLXVisuals" "True" Option "TripleBuffer" "True" Option "UseDamageEvents" "True" Option "UseRandR" "True" Option "RenderAccel" "True" Option "NoPowerConnectorCheck" "False" Option "RandRRotation" "True" Option "DynamicTwinView" "True" Option "OnDemandVBlankInterrupts" "True" Option "ConnectToAcpid" "True" Option "EnableACPIHotkeys" "True" Option "UseEvents" "True" Option "ExactModeTimingsDVI" "True" Option "NvAGP" "0" SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection Section "Extensions" Option "Composite" "Enable" EndSection - Suspend: Suspend/resume works fine after creating an
/etc/pm/config.d/unload_modulesand with the single line:SUSPEND_MODULES=bcm5974
- I installed pommed to get the function keys to work.
Issues
- Don’t know how to right or middle click. Tapping the pad with two fingers initiates a right click, but still want middle click options.
- WPA wireless is not working.
September 21st, 2009 at 12:51 am
[...] have a previous post on installing Fedora 10 on the Macbook Air. I recently upgraded to Fedora 11 through yum. Overall that went well. I followed the yum upgrade [...]