Fedora9OnMacBookSantaRosa

From Mactel-Linux

Jump to: navigation, search

Contents

How to install Fedora 8 x86_64 on a MacBook 4,1

This guide will help you through all the steps necessary for installing Fedora 9 on a MacBook 4,1 Santa Rosa. This guide is currently aimed at Fedora 9 x86_64.

Credits

This guide is based mostly off of the Fedora 8 article so credit goes to all those people. http://www.mactel-linux.org/wiki/Fedora8OnMacBookSantaRosa

Fixing the wireless

The MacBook 4,1 comes with a Broadcom 4328 wireless chipset. This is not supported by default in Fedora 9 and requires the use of ndiswrapper and Windows drivers to make it work correctly.

Follow the steps below to install ndiswrapper and get the wireless working.

Installing ndiswrapper

Enable the livna yum repositories and install the kmod-ndiswrapper package as well as some others to fix dependencies:

wget http://superb-west.dl.sourceforge.net/sourceforge/ndiswrapper/ndiswrapper-1.52.tar.gz
tar xvzf ndiswrapper-1.52.tar.gz
cd ndiswrapper-1.52
make
sudo make install

After a reboot, the ndiswrapper kernel module should be installed.

Wireless installation using ndiswrapper

Now that you have ndiswrapper installed and working, we can get the wireless drivers, blacklist some incompatible kernel modules, switch NetworkManager off, and unzip the drivers:

su -
wget http://ftp.us.dell.com/network/R151517.EXE
echo "blacklist bcm43xx" >> /etc/modprobe.d/blacklist
echo "blacklist ssb" >> /etc/modprobe.d/blacklist
echo "blacklist b43" >> /etc/modprobe.d/blacklist
echo "alias wlan0 ndiswrapper" >> /etc/modprobe.d/ndiswrapper
echo "alias wlan0 ndiswrapper" >> /etc/modprobe.conf
mkdir wifidriver
unzip -a R151517.EXE -d wifidriver/

At this point you need to cd to the directory that holds the file "bcmwl5.inf" then use ndiswrapper to install the driver:

cd wifidriver/DRIVER/
ndiswrapper -i bcmwl5.inf

At this stage you should now have the wireless drivers installed through ndiswrapper. To confirm, the output of "ndiswrapper -l" should look something like this:

bcmwl5 : driver installed
       device (14E4:4328) present (alternate driver: ssb)

If it doesn't, then something has gone wrong so retrace your steps and ensure you did everything correctly. If it does, then you should be able to scan for wireless networks using "iwlist wlan0 scan" and it should pick up any wireless networks in your area.

Fixing the keyboard fn-keys

To enable the keyboard hotkeys, you must have a kernel newer than 2.6.25.4-35. At the moment this hasn't been officially released, but you can download it from the koji page.

Fixing the touchpad

Backup and edit xorg.conf:

su -
cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup 
gedit /etc/X11/xorg.conf

Ensure that you have the following line in the "ServerLayout" section of xorg.conf:

InputDevice "Synaptics Touchpad" "CorePointer"

For reference my entire "ServerLayout" section looks like this:

Section "ServerLayout" 
	Identifier 	"Default Layout" 
	Screen 	0 	"Screen0" 0 0 
	InputDevice 	"Keyboard0" "CoreKeyboard" 
	InputDevice 	"Synaptics Touchpad" "CorePointer"
EndSection

Now create an "InputDevice" section as follows:

Section "InputDevice"
        # updated 2007-12-07
        # use command "synclient -m 1" to see raw output
        # common stuff
        Identifier      "Synaptics Touchpad"
        Driver          "synaptics"
        Option          "SendCoreEvents"        "true"
        Option          "Device"                "/dev/psaux"
        Option          "Protocol"              "auto-dev"
        
        # not using edge scrolling
        Option          "HorizEdgeScroll"       "0"
        Option          "VertEdgeScroll"        "0"
        
        # use two finger scrolling
        Option          "VertTwoFingerScroll"   "1"
        Option          "HorizTwoFingerScroll"  "1" # set to 0 if you don't want horizontal scrolling
        
        # scroll speed, lower is faster
        Option          "HorizScrollDelta"      "10"
        Option          "VertScrollDelta"       "10"

        # minimum pressure motion factor
        Option          "PressureMotionMinZ"    "10"

        # touch and untouch thresholds, higher numbers if you like to push hard
        Option          "FingerLow"             "10"
        Option          "FingerHigh"            "20" # change to 30 or 40 if you like

        # borders based on output from synclient
        Option          "LeftEdge"              "20"
        Option          "RightEdge"             "1200"
        Option          "TopEdge"               "20"
        Option          "BottomEdge"            "370"

        # speeds, smaller number for a slower mouse
        Option          "MinSpeed"              "0.8" # 0.5 is very slow, 1.5 is very fast
        Option          "MaxSpeed"              "1.2" # up to 1.5 works ok
        Option          "AccelFactor"           "0.10"

        # tap times, change to suit your tapping habits
        Option          "MaxTapMove"            "100"
        Option          "MaxTapTime"            "100"
        Option          "MaxDoubleTapTime"      "200"
        
        # don't change these or two finger tap stops working
        Option          "TapButton2"            "3"
        Option          "TapButton3"            "2"

        # must be commented out or normal tapping wont work
        #Option         "TapButton1"            "0"

        # needed for disabled while typing fix  
        Option          "SHMConfig"             "on"
EndSection

Finally, ensure you have the following in your "Module" section of xorg.conf - I have found it wasn't loading the synaptics module otherwise:

Load "synaptics"

Again, for reference, my entire "Module" section looks like this (you may not have all these X modules installed, but you can see the structure here):

Section "Module" 
	Load "synaptics" 
	Load "extmod" 
	Load "dbe" 
	Load "glx" 
	Load "xtrap" 
	Load "dri" 
	Load "GLcore" 
	Load "record" 
EndSection

For these changes to take effect you need to restart your X session by pressing control+alt+backspace (or just log out of gnome and log back in).

This will give you a OS X like feel. You can right click by tapping two fingers, or middle click by tapping three fingers. The two finger scroll also works.

Disable touchpad while typing

To disable the touchpad while your typing uses this command:

syndaemon -i 1 -d

This disables the touchpad for 1 second after you type something. This works well but if you go back and forth a lot it can be a hassle to wait that one second. NOTE you can use ".5" for half a seconf instead and it works much better.

Alternatively,

syndaemon -t -d 

This disables tapping motions but not movement while typing.

Both work fine, and the one that works best for you will likely be determined by the type of computing you do. Try them both and decide for yourself.

Once you've found the one you want to use, add it as an application to start in your gnome session.

Fix Firefox scrolling issue

Firefox interprets horizontal scrolling as forward/back commands which can be very annoying if you do it by mistake. To fix this type about:config in the address bar and change these two lines (click lines to edit). This is not a specific issue to the Santa Rosa version but its a common problem and an easy fix.

mousewheel.horizscroll.withnokey.action (change it to 1 to allow scrolling or 0 to turn it off)
mousewheel.horizscroll.withnokey.sysnumlines (change it to “true”)

Installing pommed

From its hompage, "pommed handles the hotkeys found on the Apple MacBook Pro, MacBook and PowerBook laptops and adjusts the LCD backlight, sound volume, keyboard backlight or ejects the CD-ROM drive accordingly."

pommed is waiting review for inclusion into Fedora, but until then packages are available here. A yum .repo file is also available here which can be saved to /etc/yum.repos.d for automatic updates to pommed via yum/PackageKit.

Personal tools