Difference between revisions of "MacBookPro"

From ArchWiki
Jump to: navigation, search
(marking dead link found by bot)
(this article is completely outdated and all information is available in MacBook)
(16 intermediate revisions by 9 users not shown)
Line 1: Line 1:
[[Category:Apple (English)]]
#REDIRECT [[MacBook]]
{{Out of date}}
Please see [[MacBook Aluminum]] for newest 5,1 and 5,2 unibody Macbook Pros or [[MacBook]] for general Macbook information.
== Installing Arch Linux on MacbookPro ==
These instructions could work for the most part for the regular MacBook.
You will need Arch Linux 0.8 alpha3 or newer at least since GRUB and the kernel will work fine from this version.
=== Arch Only System ===
To install Arch and replace OSX you need to change the partition table type in Mac OS X from bootcamp. Download bootcamp, install and run. Change disk from GPT to MBR partition table.
Reboot, hold down the "C" key to boot from CD.
Install Arch as normal. Do not forget to set one partition as bootable.
After install you need to configure a couple of things...
=== Dual Boot (Arch & Mac OS X) ===
Two possibilities:
- Install Bootcamp, resize the Mac OS X partition
When Mac OS X installation is finished. Go on http://refit.sourceforge.net and download rEFIT (Mac disk image)
To install rEFIT, mount the rEFIT.dmg file (it is normally automatic).
There is an other way (refer to rEFIT documentation) but you can open a terminal then you copy /Volumes/rEFIT/efi/ to /
# cp -r /Volumes/rEFIT/efi /
To install rEFIT :
# cd /efi/refit/
# ./enable.sh
Now we can synchronized MBR with GPT partition table thanks to rEFIT so you restart your computer. You can see rEFIT, you press down key to access to the Partitioning Tool. You press y to accept.
Put your Arch Linux CD in the CD-ROM drive first then restart the computer. You can press C to boot from the CD or you can choose it in the rEFIT menu.
Now it is the typical Arch Linux installation.
At the end of the installation DO NOT install the bootloader in the MBR, but in a partition (e.g. sda3)
== Configuration ==
=== rc.conf ===
Make sure your [[rc.conf]] at least has the following modules:
MODULES=(sky2 fglrx speedstep_centrino)
For CPU scaling use the [[powernowd]] package.
=== Xorg ===
pacman -S ati-fglrx-utils
A sample {{Filename|xorg.conf}} follows (Outdated! See [[Xorg Input Hotplugging]]):
Section "ServerLayout"
  Identifier    "Simple Layout"
  Screen      0  "aticonfig-Screen[0]" 0 0
  InputDevice    "Mouse1" "CorePointer"
  InputDevice    "Keyboard1" "CoreKeyboard"
Section "Files"
  FontPath    "/usr/share/fonts/misc"
  FontPath    "/usr/share/fonts/75dpi"
  FontPath    "/usr/share/fonts/100dpi"
  FontPath    "/usr/share/fonts/Type1"
Section "Module"
  Load "freetype"
  Load "xtt"
  Load  "dbe"  # Double buffer extension
  SubSection "extmod"
  Option     "omit xfree86-dga"  # do not initialize the DGA extension
Section "InputDevice"
  Identifier  "Keyboard1"
  Driver      "kbd"
  Option     "AutoRepeat" "500 30"
  Option     "XkbRules" "xorg"
  Option     "XkbModel" "pc105"
  Option     "XkbLayout" "latam"
  Option            "XkbOptions"    "lv3:rwin_switch"
Section "InputDevice"
  Identifier  "Mouse1"
  Driver      "mouse"
  Option     "Protocol" "Auto" # Auto detect
  Option     "Device" "/dev/input/mice"
  Option     "ZAxisMapping" "4 5 6 7"
  Option            "MinSpeed"              "1.0"
  Option            "MaxSpeed"              "1.0"
Section "Monitor"
  Identifier  "aticonfig-Monitor[0]"
  Option     "VendorName" "ATI Proprietary Driver"
  Option     "ModelName" "Generic Autodetecting Monitor"
  Option     "DPMS" "true"
Section "Device"
  Identifier  "aticonfig-Device[0]"
  Driver      "fglrx"
Section "Screen"
  Identifier "aticonfig-Screen[0]"
  Device    "aticonfig-Device[0]"
  Monitor    "aticonfig-Monitor[0]"
  DefaultDepth    24
  SubSection "Display"
  Viewport  0 0
  Depth    24
Section "DRI"
  Mode 0666
OR you can just make the necessary changes: (ADD these to your xorg.conf, do not replace)
Configure Xorg using xorgconfig. Once done edit your "xorg.conf" and change the driver type to "fglrx".
Section "Device"
  Driver      "fglrx"
Configure your keyboard: (make right "apple key" right ALT key)
Section "InputDevice"
  Option          "XkbOptions"    "lv3:rwin_switch"
Configure your trackpad:
Section "InputDevice"
  Option          "Protocol"              "Auto"
  Option          "MinSpeed"              "1.0"
  Option          "MaxSpeed"              "1.0"
OR you may want to use this, that emulates the Mac OS X behavior:
Section "InputDevice"
  Identifier "Synaptics Touchpad"
    Driver "synaptics"
    Option          "CorePointer"
    Option          "Device"                "/dev/input/mouse1"
    Option          "Protocol"              "auto-dev"
    Option          "LeftEdge"              "60"
    Option          "RightEdge"            "900"
    Option          "BottomEdge"            "511"
    Option          "HorizScrollDelta"      "0"
    Option          "MinSpeed"              "0.4"
    Option          "MaxSpeed"              "1"
    Option          "AccelFactor"          "0.08"
    Option          "MaxTapTime"            "0"
    Option          "TapButton1"            "0"
    #Two Finger Scroll
    Option          "VertTwoFingerScroll"  "1"
    Option          "HorizTwoFingerScroll"  "1"
Configure modules:
Section "Module"
  Load  "dbe"  # Double buffer extension
  SubSection "extmod"
    Option     "omit xfree86-dga"  # do not initialize the DGA extension
=== Wireless ===
The airport card in the newest MacBook (PCI-ID 168c:0024) is not yet supported by Madwifi. In short: Madwifi does not yet have a version of the (binary-only) HAL (hardware-abstraction layer) for the new chipset and ETA is unknown. Workaround: If your kernel is 32-bit, you can use ndiswrapper in combination with the 32-bit windows driver for the [http://www.dlink.com/products/support.asp?pid=489&sec=0 D-Link DWA-645].
It is ugly, but it works. [http://ge.ubuntuforums.com/showpost.php?s=ca69b769276fb42cca3c591015993721&p=5141506&postcount=39 some ubuntu users]{{Linkrot|2011|09|07}} report it working with 64-bit too, albeit some have issues with WPA1/2.
Madwifi drivers work on my second generation MBP following [http://ubuntu-tutorials.com/2007/10/24/how-to-enable-wireless-networking-on-the-macbook-ubuntu-710/ these] instructions.
=== Pommed ===
[http://technologeek.org/projects/pommed/ Pommed] handles the hotkeys and is able to adjusts the LCD backlight, sound volume, keyboard backlight or to eject the CD-ROM drive.
Pommed is in [community], there is also a GUI built on GTK (gpomme)
=== Suspend ===
Suspend works most of the time (occasionally it dose not wake up) with the latest version of [[pm-utils]].
sudo pacman -S pm-utils
Run the following to test suspension. (Pressing the power button, plugging in a usb device, or closing/opening the lid will resume.)
sudo pm-suspend
To suspend on closing of laptop lid, make sure you have acpi, and acpid installed with pacman, and that the acpid daemon is running. Then edit /etc/acpi/handler.sh and change the "button/lid)" section to look like the following:
#echo "LID switched!">/dev/tty5
if grep -q closed /proc/acpi/button/lid/LID0/state
then pm-suspend
Acpid calls the button/lid) section whenever the lid is opened or closed. If pm-suspend is just added to this section, it will suspend when the lid is opened, and when the lid is closed. Causing it to wake up, and then immediately suspend again when you open the lid. Checking to see if the lid is closed with grep and only running pm-suspend when the lid is closed fixes this issue.
== TODO ==
I WILL get around to doing these! I promise! In the mean time I just put them here to remind me to do them.
- make package for refit
(EDIT: refit is actually in [community])
- make section for isight

Revision as of 21:33, 3 June 2013

Redirect to: