ArchLinux auf einem MacBook: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Keine Bearbeitungszusammenfassung
(Links aktualisiert, verbesserte config-Dateien, ext4)
Zeile 18: Zeile 18:


   cd /usr/src
   cd /usr/src
   wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.bz2
   wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
   tar -xvf linux-2.6.27.tar.bz2
   tar -xvf linux-2.6.28.tar.bz2
   ln -s linux-2.6.27 /usr/src/linux
   ln -s linux-2.6.28 /usr/src/linux
   cd linux/
   cd linux/


Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet Ihr einfach nach /usr/src/linux. Am besten mit wget:
Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet Ihr einfach nach /usr/src/linux. Am besten mit wget:


   wget http://nathanhi.pytalhost.net/_.config -O .config
   wget http://home.arcor.de/macbook/_.config -O .config


Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.  
Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.  


   make && make modules_install && cp arch/x86/boot/bzImage /boot/linux
   make && make modules_install && cp -v arch/x86/boot/bzImage /boot/linux


Nun machen wir uns schnell einen Kaffee, denn in exakt 7 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzen die darin enthaltene menu.lst mit meiner:  
Nun machen wir uns schnell einen Kaffee, denn in exakt 7 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzen die darin enthaltene menu.lst mit meiner:  


   cd /boot/grub
   cd /boot/grub
   wget http://nathanhi.pytalhost.net/menu.lst -O menu.lst
   wget http://home.arcor.de/macbook/menu.lst -O menu.lst


Jetzt wird standardmäßig der selber gebackene Kernel gebootet. Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:
Jetzt wird standardmäßig der selber gebackene Kernel gebootet.


   MODULES=(usbcore ehci_hcd ohci_hcd uhci_hcd usblp usb-storage usbhid appletouch snd-hwdep snd-hda-intel uvcvideo isight_firmware ndiswrapper)
Die fstab müssen wir auch noch bearbeiten, um ext4 zu aktivieren. Falls du keine besondere Veränderung in der fstab vornehmen willst, rate ich dir, meine zu saugen:
 
  wget http://hoem.arcor.de/macbook/fstab -O /etc/fstab
 
Ansonsten versichere dich einfach nur, dass du bei (in unserem Falle) /dev/sda3 ext4 stehen hast, sonst bootet Linux nicht mehr. ;)
 
  /dev/sda3 / ext4 defaults 0 1
 
 
Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:
 
   MODULES=(usbhid appletouch uvcvideo isight-firmware snd-mixer-oss snd-pcm-oss snd-hwdep snd snd-page-alloc snd-pcm snd-timer snd-hda-intel sky2 ndiswrapper usb-storage usbhid
  ehci-hcd uhci-hcd ieee1394 ohci1394)


Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".
Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".
Zeile 50: Zeile 62:
   swapon /swapfile
   swapon /swapfile


Jetzt müssen wir noch folgende Zeile (an das Ende) in die /etc/fstab hinzufügen:
Falls du noch nicht meine fstab heruntergeladen hast, musst du noch folgende Zeile (an das Ende) in die /etc/fstab hinzufügen:


   /swapfile swap swap defaults 0 0
   /swapfile swap swap defaults 0 0
Zeile 66: Zeile 78:
Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.
Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.


===iSight===
===iSight Firmware fertig saugen===
 
Hier der wesentlich leichtere Weg:
 
  mkdir /usr/lib/firmware
  cd /usr/lib/firmware
  wget http://home.arcor.de/nathanhi/macbook/isight.fw
 
===iSight Firmware selbst extrahieren===


Um iSight, die integrierte Webcam im MacBook ans laufen zu bekommen, bedarf es etwas Geduld und Zeit. Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:
Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:


====Info2Man====
====Info2Man====
Zeile 91: Zeile 111:


   mkdir /usr/lib/firmware
   mkdir /usr/lib/firmware
   Bitte AppleUSBVideoSupport nach /usr/lib/firmware kopieren
   Bitte AppleUSBVideoSupport  
   cd /usr/lib/firmware
   cd /usr/lib/firmware
   ift-extract --apple-driver AppleUSBVideoSupport
   ift-extract --apple-driver AppleUSBVideoSupport


Das wars auch schon. Bin gerade am abklären mit Apple, ob man die daraus resultierende isight.fw hier gleich zum Download bereitstellen kann.
Das wars auch schon.


===WLAN===
===WLAN===
Zeile 141: Zeile 161:
   rm -rfv /etc/pommed.conf*
   rm -rfv /etc/pommed.conf*
   cd /etc/
   cd /etc/
   wget http://nathanhi.pytalhost.net/pommed.conf
   wget http://home.arcor.de/nathanhi/macbook/pommed.conf


===Bluetooth===
===Bluetooth===
Zeile 225: Zeile 245:
Als Alternative könnt Ihr auch gänzlich meine verwenden:
Als Alternative könnt Ihr auch gänzlich meine verwenden:


   http://nathanhi.pytalhost.net/xorg.conf
   http://home.arcor.de/nathanhi/macbook/xorg.conf


Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.
Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.
Zeile 244: Zeile 264:


     cd /usr/src
     cd /usr/src
     wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.bz2
     wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
     tar -xvf linux-2.6.27.tar.bz2
     tar -xvf linux-2.6.28.tar.bz2
     ln -s linux-2.6.27 /usr/src/linux
     ln -s linux-2.6.28 /usr/src/linux
     cd linux/
     cd linux/


Zeile 252: Zeile 272:
Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet ihr einfach nach /usr/src/linux. Am  besten mit wget
Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet ihr einfach nach /usr/src/linux. Am  besten mit wget


   wget http://nathanhi.pytalhost.net/.config -O .config
   wget http://home.arcor.de/nathanhi/macbook/.config -O .config


Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.
Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.


   make && make modules_install && cp arch/x86_64/boot/bzImage /boot/linux
   make && make modules_install && cp -v arch/x86/boot/bzImage /boot/linux


Nun machen wir uns schnell einen Kaffee, denn in exakt 6 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzten die darin enthaltene menu.lst mit meiner:
Nun machen wir uns schnell einen Kaffee, denn in exakt 6 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzten die darin enthaltene menu.lst mit meiner:


   cd /boot/grub
   cd /boot/grub
   wget http://nathanhi.pytalhost.net/menu.lst -O menu.lst
   wget http://home.arcor.de/nathanhi/macbook/menu.lst -O menu.lst
 
Jetzt wird standardmäßig der selber gebackene Kernel gebootet. Die fstab müssen wir auch noch bearbeiten, um ext4 zu aktivieren. Falls du keine besondere Veränderung in der fstab vornehmen willst, rate ich dir, meine zu saugen:
 
  wget http://home.arcor.de/macbook/fstab -O /etc/fstab
 
Ansonsten versichere dich einfach nur, dass du bei (in unserem Falle) /dev/sda3 ext4 stehen hast, sonst bootet Linux nicht mehr. ;)
 
  /dev/sda3 / ext4 defaults 0 1
 
 
Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:
 
  MODULES=(usbhid appletouch uvcvideo isight-firmware snd-mixer-oss snd-pcm-oss snd-hwdep snd snd-page-alloc snd-pcm snd-timer snd-hda-intel sky2 ndiswrapper usb-storage usbhid ehci-hcd uhci-hcd ieee1394 ohci1394)


Jetzt wird standardmäßig der selber gebackene Kernel gebootet. Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:


  MODULES=(usbcore ehci_hcd ohci_hcd uhci_hcd usblp usb-storage usbhid appletouch snd-hwdep snd-hda-intel uvcvideo isight_firmware ndiswrapper)


Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".
Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".
Zeile 293: Zeile 324:
Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.
Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.


===iSight===
===iSight Firmware fertig saugen===
 
Hier der wesentlich leichtere Weg:
 
  mkdir /usr/lib/firmware
  cd /usr/lib/firmware
  wget http://home.arcor.de/nathanhi/macbook/isight.fw
 
 
===iSight Firmware selbst extrahieren===


Um iSight, die integrierte Webcam im MacBook ans laufen zu bekommen, bedarf es etwas Geduld und Zeit. Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:
Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:


====Info2Man====
====Info2Man====
Zeile 304: Zeile 344:
   cd info2man
   cd info2man
   makepkg
   makepkg
   pacman -U info2man-1.0-2-x86_64.pkg.tar.gz
   pacman -U info2man-1.0-2-*.pkg.tar.gz


====ift====
====ift====
Zeile 311: Zeile 351:
   wget http://aur.archlinux.org/packages/ift/ift.tar.gz
   wget http://aur.archlinux.org/packages/ift/ift.tar.gz
   makepkg
   makepkg
   pacman -U ift-1.2-2-x86_64.pkg.tar.gz  
   pacman -U ift-1.2-2-*.pkg.tar.gz  




Nun benötigen wir von der Mac OS Partition folgendes File: /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport
Nun benötigen wir von der Mac OS Partition folgende Datei: /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport
Dieses File wird anschließend nach /usr/lib/firmware kopiert. Wenn /usr/lib/firmware nicht existiert erstellt es bitte mit:
Diese Datei wird anschließend nach /usr/lib/firmware kopiert. Wenn /usr/lib/firmware nicht existiert erstellt es bitte mit:


   mkdir /usr/lib/firmware
   mkdir /usr/lib/firmware
   Bitte AppleUSBVideoSupport nach /usr/lib/firmware kopieren
   Bitte AppleUSBVideoSupport  
   cd /usr/lib/firmware
   cd /usr/lib/firmware
   ift-extract --apple-driver AppleUSBVideoSupport
   ift-extract --apple-driver AppleUSBVideoSupport


Das wars auch schon. Bin gerade am abklären mit Apple, ob man die daraus resultierende isight.fw hier gleich zum Download bereitstellen kann.
Das wars auch schon.


===WLAN===
===WLAN===
Zeile 334: Zeile 374:
   make
   make
   make install
   make install
   wget http://nathanhi.pytalhost.net/bcm4328.tar.gz
   wget http://home.arcor.de/nathanhi/macbook/bcm4328.tar.gz
   tar -xvf bcm4328.tar.gz
   tar -xvf bcm4328.tar.gz
   ndiswrapper -i bcmwl5.inf
   ndiswrapper -i bcmwl5.inf
Zeile 345: Zeile 385:


Nun entweder das ndiswrapper Modul neu laden oder neu starten.
Nun entweder das ndiswrapper Modul neu laden oder neu starten.
Für das MacBook Pro und alle anderen Modelle mit der WLAN-Karte Atheros AR5418 funktioniert der Madwifi-Treiber
  pacman -S madwifi
Man sollte nun die ath5k Modules aus der /etc/rc.conf austragen.


===Pommed===
===Pommed===
Zeile 361: Zeile 407:
   rm -rfv /etc/pommed.conf*
   rm -rfv /etc/pommed.conf*
   cd /etc/
   cd /etc/
   wget http://nathanhi.pytalhost.net/pommed.conf
   wget http://home.arcor.de/nathanhi/macbook/pommed.conf


===Bluetooth===
===Bluetooth===
Zeile 445: Zeile 491:
Als Alternative könnt Ihr auch gänzlich meine verwenden:
Als Alternative könnt Ihr auch gänzlich meine verwenden:


   http://nathanhi.pytalhost.net/xorg.conf
   http://home.arcor.de/nathanhi/macbook/xorg.conf


Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.
Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.


[[Kategorie:Installation]]
[[Kategorie:Installation]]

Version vom 27. Dezember 2008, 02:45 Uhr

Einleitung

Wie wir alle wissen vermag ArchLinux auf älteren Rechnern schneller, flexibler und stabiler zu laufen. Auf einem neuen MacBook aus dem Frühjahr 2008 kann man schon garnicht mehr von "laufen" sondern eher von "fliegen" sprechen, wobei das auch nicht der Wahrheit entspricht, denn nur das OS mit dem Fenster fliegt, weshalb es auch immer abstürzt.. Nun hatte ich vor, ein kleines Howto zu schreiben, wie man ArchLinux auf einem MacBook installiert. Ich habe bei mir nur Arch64 darauf eingesezt, da man den daraus bildenden Geschwindigkeitsvorteil enorm spürt. (Vergleich zwischen den UDEV Initialisierungswerten [die beim Booten]: Arch32, Vanilla Kernel: 1100ms; Arch64, Vanilla Kernel: 640ms)

ArchLinux 32-Bit

Grundinstallation

ArchLinux wird auf einem MacBook wie gewöhnlich installiert. Worauf Ihr achten solltet, wenn man Mac OS noch auf der ersten Partition hat, ist, dass cfdisk nicht mit GPT Partitionen arbeiten kann (offiziell). Es kommt eine Meldung, die man mit yes und Enter umgehen kann, ich hatte bisher (3 Installationen) noch keinen Datenverlust, jedoch würde ich euch zu einer Datensicherung der Mac OS Partition raten. Wichtig ist, dass man Mac OS X vorher schon auf einer kleinen Partition installiert. Ich habe 50% Mac OS X und 50% Linux (75GB Mac OS, 75GB Linux). Meiner Meinung nach ist Mac OS nach einer Erfolgreichen ArchLinux Installation vollkommen unnötig. Ich habe aber unter Mac OS rEFIt installiert, um eine angenehme Betriebssystemauswahl beim Booten zu haben, was man natürlich auch unter Linux kann. Wenn cfdisk geladen ist, erstellen wir im freien Plattenplatz eine Partition und formatieren diese mit ext3 oder einem anderen von rEFIt unterstützten Dateisystem und verwenden diese Partition (meist /dev/sda3) als ROOT (/). Nun ist die Installation des Grundsystems wie jede andere von ArchLinux auch. Ich empfehle euch als Bootloader GRUB.

Vanilla Kernel (Achtung, nicht getestet!)

Wichtig ist, dass man bevor man die GUI oder andere Programme installiert sich zuerst den Kernel selber "bäckt" bzw. kompiliert, da dann in Gnome der Standby/Ruhezustand auf Anhieb funktioniert. Das geht folgendermaßen ab:

Man installiert sich die Pakete make und gcc, falls nicht schon installiert.

  pacman -Sy make gcc

Man lädt sich die aktuellen Kernel Sources von kernel.org und entpackt sie nach /usr/src:

  cd /usr/src
  wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
  tar -xvf linux-2.6.28.tar.bz2
  ln -s linux-2.6.28 /usr/src/linux
  cd linux/

Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet Ihr einfach nach /usr/src/linux. Am besten mit wget:

  wget http://home.arcor.de/macbook/_.config -O .config

Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.

 make && make modules_install && cp -v arch/x86/boot/bzImage /boot/linux

Nun machen wir uns schnell einen Kaffee, denn in exakt 7 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzen die darin enthaltene menu.lst mit meiner:

 cd /boot/grub
 wget http://home.arcor.de/macbook/menu.lst -O menu.lst

Jetzt wird standardmäßig der selber gebackene Kernel gebootet.

Die fstab müssen wir auch noch bearbeiten, um ext4 zu aktivieren. Falls du keine besondere Veränderung in der fstab vornehmen willst, rate ich dir, meine zu saugen:

 wget http://hoem.arcor.de/macbook/fstab -O /etc/fstab

Ansonsten versichere dich einfach nur, dass du bei (in unserem Falle) /dev/sda3 ext4 stehen hast, sonst bootet Linux nicht mehr. ;)

 /dev/sda3	/ 		ext4	defaults		0	1


Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:

 MODULES=(usbhid appletouch uvcvideo isight-firmware snd-mixer-oss snd-pcm-oss snd-hwdep snd snd-page-alloc snd-pcm snd-timer snd-hda-intel sky2 ndiswrapper usb-storage usbhid
 ehci-hcd uhci-hcd ieee1394 ohci1394)

Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".

Swapfile

Da wir keine Swap-Partition erstellen konnten, tun wir das jetzt, jedoch in eine Datei, vergleichbar mit einer Auslagerungsdatei unter dem OS, das fliegen kann.

  dd if=/dev/zero of=/swapfile bs=1M count=512    (erstellt ein 512MB großes Swapfile)
  mkswap /swapfile
  swapon /swapfile

Falls du noch nicht meine fstab heruntergeladen hast, musst du noch folgende Zeile (an das Ende) in die /etc/fstab hinzufügen:

  /swapfile swap swap defaults 0 0

Sound

Um den Sound an einem MacBook ans laufen zu bringen vermag es ein wenig Magie, da im MacBook eine Intel HD Audio verbaut ist, und die, wie wir alle wissen von zu vielen Hardwareherstellern vertrieben wird, und jede anders funktioniert. Das Geheimnis lässt sich recht schnell lösen. Zuerst müssen wir alsa-utils installieren, um alsaconf ausführen zu können.

  pacman -S alsa-utils

Nun führen wir alsaconf aus und wählen Intel HD Audio aus. Anschließend fügen wir in die /etc/modprobe.d/sound folgende Zeile am Ende hinzu:

  options snd-hda-intel model=mbp3

Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.

iSight Firmware fertig saugen

Hier der wesentlich leichtere Weg:

 mkdir /usr/lib/firmware
 cd /usr/lib/firmware
 wget http://home.arcor.de/nathanhi/macbook/isight.fw

iSight Firmware selbst extrahieren

Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:

Info2Man

  cd /usr/src
  wget http://aur.archlinux.org/packages/info2man/info2man.tar.gz
  tar -xvf info2man.tar.gz
  cd info2man
  makepkg
  pacman -U info2man-1.0-2-*.pkg.tar.gz

ift

  cd /usr/src
  wget http://aur.archlinux.org/packages/ift/ift.tar.gz
  makepkg
  pacman -U ift-1.2-2-*.pkg.tar.gz 


Nun benötigen wir von der Mac OS Partition folgende Datei: /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport Diese Datei wird anschließend nach /usr/lib/firmware kopiert. Wenn /usr/lib/firmware nicht existiert erstellt es bitte mit:

  mkdir /usr/lib/firmware
  Bitte AppleUSBVideoSupport 
  cd /usr/lib/firmware
  ift-extract --apple-driver AppleUSBVideoSupport

Das wars auch schon.

WLAN

Ich habe WLAN nur durch ndiswrapper ans laufen gebracht. Diesen müsst Ihr selber kompilieren.

  cd /usr/src
  wget http://mesh.dl.sourceforge.net/sourceforge/ndiswrapper/ndiswrapper-1.53.tar.gz
  tar -xvf ndiswrapper-1.53.tar.gz
  cd ndiswrapper-1.53
  make
  make install
  wget http://nathanhi.pytalhost.net/bcm4328.tar.gz
  tar -xvf bcm4328.tar.gz
  ndiswrapper -i bcmwl5.inf
  ndiswrapper -l

Hier sollte so etwas ausgegeben werden:

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

Nun entweder das ndiswrapper Modul neu laden oder neu starten.


Für das MacBook Pro und alle anderen Modelle mit der WLAN-Karte Atheros AR5418 funktioniert der Madwifi-Treiber

  pacman -S madwifi

Man sollte nun die ath5k Modules aus der /etc/rc.conf austragen.

Pommed

Pommed wird für die Helligkeitsregelung von der MacBook-Hintergrundbeleuchtung benötigt und auch für eine Fernbedienung, etc.

  pacman -S alsa-lib audiofile confuse dbus eject
  cd /usr/src
  wget http://aur.archlinux.org/packages/pommed/pommed.tar.gz
  tar -xvf pommed.tar.gz
  makepkg
  pacman -U pommed-1.20-1-*.pkg.tar.gz 

Nun wäre pommed installiert und wir müssen es noch konfigurieren. Ich würde empfehlen, die Konfigurationen zu löschen, und meine zu verwenden:

  rm -rfv /etc/pommed.conf*
  cd /etc/
  wget http://home.arcor.de/nathanhi/macbook/pommed.conf

Bluetooth

Für Bluetooth-Support müssen wir eine Datei abändern, und folgende Pakete installieren:

  pacman -S blueman bluemote bluez-utils bluez-gnome gnome-bluetooth bluez-hcidump
  nano /etc/conf.d/bluetooth

Nun Suchen wir nach # HID2HCI_ENABLE="false" und entfernen die Raute und ändern false in true, demnach:

  HID2HCI_ENABLE="true"

Daemons

Da wir jetzt ein funktionierendes System haben, können wir uns nun an Feinheiten machen. Ich habe als Daemons dbus, fam und hal installiert, da diese externe USB Laufwerke, oä. automatisch mounten. Nützlich ist auch Networkmanager, da man mit diesem komfortabel eine WLAN-Verbindung aufbauen kann, etc. wpa_supplicant benötigen wir für WPA/WPA2-Verbindungen

  pacman -S fam dbus hal networkmanager wpa_supplicant

Wenn du Gnome einsetzt, empfehle ich dir nm-applet

  pacman -S gnome-network-manager

Bei KDE kann ich knetworkmanager empfehlen:

  pacman -S knetworkmanager

So sollte deine DAEMONS-Line in der /etc/rc.conf aussehen:

  DAEMONS=(fam dbus hal networkmanager bluetooth alsa pommed)


Nun können wir auch den ArchLinux-Kernel deinstallieren, da dieser ja nur noch unnötig Plattenplatz benötigt.

  pacman -R kernel26

Nach der Installation der X.org

Falls du die Sonderfunktionen des Touchpads nutzen willst (Multitouch, etc), kannst du als Vorlage meine xorg.conf verwenden, oder verändern. Jetzt brauchen wir aber noch die synaptics Treiber, aber auf gar keinen Fall gsynaptics installieren, weil die Maus dann nicht funktionieren wird! Ich denke, dass dies an einem Bug derzeit liegt, da dieses Programm mit einem Speicherzugriffsfehler endet und dann das Touchpad "lahm" legt.

  pacman -S synaptics


  Section "ServerLayout"
      Identifier     "Xorg Configured"
      Screen      0  "Screen0" 0 0
      InputDevice    "Keyboard0" "CoreKeyboard"
      InputDevice    "MacBook Touchpad" "CorePointer"
  EndSection

Sucht jetzt die Section, wo

  Option "Device" "/dev/psaux"

steht. Diese Section entfernst du gänzlich und ersetzt sie durch folgende:

  Section "InputDevice"
       Identifier      "MacBook Touchpad"
       Driver          "synaptics"
       Option          "AccelFactor"           "0.015"
       Option          "BottomEdge"            "310"
       Option          "Device"                "/dev/psaux"
       Option          "FingerHigh"            "30"
       Option          "FingerLow"             "20"
       Option          "HorizScrollDelta"      "0"
       Option          "LeftEdge"              "100"
       Option          "MaxDoubleTapTime"      "180"
       Option          "MaxSpeed"              "0.88"
       Option          "MaxTapMove"            "220"
       Option          "MaxTapTime"            "150"
       Option          "MinSpeed"              "0.79"
       Option          "Protocol"              "auto-dev"
       Option          "RightEdge"             "1120"
       Option          "SendCoreEvents"        "true"
       Option          "SHMConfig"             "on"
       Option          "TapButton2"            "3"
       Option          "TapButton3"            "2"
       Option          "TopEdge"               "50"
       Option          "VertScrollDelta"       "25"
       Option          "VertTwoFingerScroll"   "true"
  EndSection

Als Alternative könnt Ihr auch gänzlich meine verwenden:

  http://home.arcor.de/nathanhi/macbook/xorg.conf

Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.

ArchLinux 64-Bit

Grundinstallation

Ich habe Arch64 wie gewöhnlich installiert. Worauf Ihr achten solltet, wenn man Mac OS noch auf der ersten Partition hat, ist, dass cfdisk nicht mit GPT Partitionen arbeiten kann (Offiziell). Es kommt eine Meldung, die man mit yes und Enter umgehen kann, ich hatte bisher (3 Installationen) noch keinen Datenverlust, jedoch würde ich zu einer Datensicherung der Mac OS Partition raten. Wichtig ist, dass man Mac OS X vorher schon auf einer kleinen Partition installiert. Ich habe 50% Mac OS X und 50% Linux (75GB Mac OS, 75GB Linux). Meiner Meinung nach ist Mac OS nach einer erfolgreichen ArchLinux Installation vollkommen unnötig. Ich habe aber unter Mac OS rEFIt installiert, um eine angenehme Betriebssystemauswahl beim Boot zu haben, was man natürlich auch unter Linux kann. Wenn cfdisk geladen ist, erstellen wir im freien Plattenplatz eine Partition und formatieren diese mit ext3 oder einem anderen von rEFIt unterstützten Dateisystem und verwenden diese Partition (meist /dev/sda3) als ROOT (/). Nun ist die Installation des Grundsystems wie jede andere von ArchLinux auch. Ich empfehle als Bootloader GRUB.

Vanilla Kernel

Wichtig ist, dass man bevor man die GUI oder andere Programme installiert sich zuerst den Kernel selber "bäckt" bzw. kompiliert, da dann in Gnome der Standby/Ruhezustand auf Anhieb funktioniert. Das geht folgendermaßen ab:

Man installiert sich die Pakete make und gcc, falls nicht schon installiert.

   pacman -Sy make gcc

Man lädt sich die aktuellen Kernel Sources von kernel.org und entpackt sie nach /usr/src

   cd /usr/src
   wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.tar.bz2
   tar -xvf linux-2.6.28.tar.bz2
   ln -s linux-2.6.28 /usr/src/linux
   cd linux/


Jetzt könnten wir zur einen Seite unseren Kernel manuell konfigurieren, oder Ihr nehmt meine .config. Die ladet ihr einfach nach /usr/src/linux. Am besten mit wget

  wget http://home.arcor.de/nathanhi/macbook/.config -O .config

Das -O .config überschreibt eine schon vorhandene .config. Nun müssen wir den Kernel kompilieren und die Module bauen lassen.

  make && make modules_install && cp -v arch/x86/boot/bzImage /boot/linux

Nun machen wir uns schnell einen Kaffee, denn in exakt 6 Minuten sollte der Kernel fertig sein. Anschließend wird der Kernel nach /boot/linux kopiert. Nun gehen wir in das /boot/grub Verzeichnis und ersetzten die darin enthaltene menu.lst mit meiner:

  cd /boot/grub
  wget http://home.arcor.de/nathanhi/macbook/menu.lst -O menu.lst

Jetzt wird standardmäßig der selber gebackene Kernel gebootet. Die fstab müssen wir auch noch bearbeiten, um ext4 zu aktivieren. Falls du keine besondere Veränderung in der fstab vornehmen willst, rate ich dir, meine zu saugen:

 wget http://home.arcor.de/macbook/fstab -O /etc/fstab

Ansonsten versichere dich einfach nur, dass du bei (in unserem Falle) /dev/sda3 ext4 stehen hast, sonst bootet Linux nicht mehr. ;)

 /dev/sda3	/ 		ext4	defaults		0	1


Nun wird es Zeit, die /etc/rc.conf zu bearbeiten. Eure MODULES-Line sollte wie folgt aussehen:

  MODULES=(usbhid appletouch uvcvideo isight-firmware snd-mixer-oss snd-pcm-oss snd-hwdep snd snd-page-alloc snd-pcm snd-timer snd-hda-intel sky2 ndiswrapper usb-storage usbhid ehci-hcd uhci-hcd ieee1394 ohci1394)


Jetzt noch schnell einen Neustart machen und hoffen, dass alles geht, einige Module konnten bestimmt nicht geladen werden, aber das lösen wir in den späteren "Kapiteln".

Swapfile

Da wir keine Swap-Partition erstellen konnten, tun wir das jetzt, jedoch in eine Datei, vergleichbar mit einer Auslagerungsdatei unter dem OS, das fliegen kann.

  dd if=/dev/zero of=/swapfile bs=1M count=512    (erstellt ein 512MB großes Swapfile)
  mkswap /swapfile
  swapon /swapfile

Jetzt müssen wir noch folgende Zeile (an das Ende) in die /etc/fstab hinzufügen:

  /swapfile swap swap defaults 0 0

Sound

Um den Sound an einem MacBook ans laufen zu bringen vermag es ein wenig Magie, da im MacBook eine Intel HD Audio verbaut ist, und die, wie wir alle wissen von zu vielen Hardwareherstellern vertrieben wird, und jede anders funktioniert. Das Geheimnis lässt sich recht schnell lösen. Zuerst müssen wir alsa-utils installieren, um alsaconf ausführen zu können.

  pacman -S alsa-utils

Nun führen wir alsaconf aus und wählen Intel HD Audio aus. Anschließend fügen wir in die /etc/modprobe.d/sound folgende Zeile am Ende hinzu:

  options snd-hda-intel model=mbp3

Da ansonsten der Sound garnicht bis sehr leise hörbar wäre.

iSight Firmware fertig saugen

Hier der wesentlich leichtere Weg:

 mkdir /usr/lib/firmware
 cd /usr/lib/firmware
 wget http://home.arcor.de/nathanhi/macbook/isight.fw


iSight Firmware selbst extrahieren

Als erstes brauchen wir folgendes Tool aus dem AUR: Die ift-tools. Da die ift-tools einiges an Abhängigkeiten haben, müssen wir ein paar Pakete aus dem AUR installieren:

Info2Man

  cd /usr/src
  wget http://aur.archlinux.org/packages/info2man/info2man.tar.gz
  tar -xvf info2man.tar.gz
  cd info2man
  makepkg
  pacman -U info2man-1.0-2-*.pkg.tar.gz

ift

  cd /usr/src
  wget http://aur.archlinux.org/packages/ift/ift.tar.gz
  makepkg
  pacman -U ift-1.2-2-*.pkg.tar.gz 


Nun benötigen wir von der Mac OS Partition folgende Datei: /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport Diese Datei wird anschließend nach /usr/lib/firmware kopiert. Wenn /usr/lib/firmware nicht existiert erstellt es bitte mit:

  mkdir /usr/lib/firmware
  Bitte AppleUSBVideoSupport 
  cd /usr/lib/firmware
  ift-extract --apple-driver AppleUSBVideoSupport

Das wars auch schon.

WLAN

Ich habe WLAN nur durch ndiswrapper ans laufen gebracht. Diesen muss man selber kompilieren.

  cd /usr/src
  wget http://mesh.dl.sourceforge.net/sourceforge/ndiswrapper/ndiswrapper-1.53.tar.gz
  tar -xvf ndiswrapper-1.53.tar.gz
  cd ndiswrapper-1.53
  make
  make install
  wget http://home.arcor.de/nathanhi/macbook/bcm4328.tar.gz
  tar -xvf bcm4328.tar.gz
  ndiswrapper -i bcmwl5.inf
  ndiswrapper -l

Hier sollte so etwas ausgegeben werden:

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

Nun entweder das ndiswrapper Modul neu laden oder neu starten.

Für das MacBook Pro und alle anderen Modelle mit der WLAN-Karte Atheros AR5418 funktioniert der Madwifi-Treiber

  pacman -S madwifi

Man sollte nun die ath5k Modules aus der /etc/rc.conf austragen.

Pommed

Pommed wird für die Helligkeitsregelung von der MacBook-Hintergrundbeleuchtung benötigt und auch für eine Fernbedienung, etc.

  pacman -S alsa-lib audiofile confuse dbus eject
  cd /usr/src
  wget http://aur.archlinux.org/packages/pommed/pommed.tar.gz
  tar -xvf pommed.tar.gz
  makepkg
  pacman -U pommed-1.20-1-x86_64.pkg.tar.gz 

Nun wäre pommed installiert und wir müssen es noch Konfigurieren. Ich würde euch empfehlen, die Konfigurationen zu löschen, und meine zu verwenden:

  rm -rfv /etc/pommed.conf*
  cd /etc/
  wget http://home.arcor.de/nathanhi/macbook/pommed.conf

Bluetooth

Für Bluetooth-Support müssen wir eine Datei abändern, und folgende Pakete installieren:

  pacman -S blueman bluemote bluez-utils bluez-gnome gnome-bluetooth bluez-hcidump
  nano /etc/conf.d/bluetooth

Nun Suchen wir nach # HID2HCI_ENABLE="false" und entfernen die Raute und ändern false in true, demnach:

  HID2HCI_ENABLE="true"

Daemons

Da wir jetzt ein funktionierendes System haben, können wir uns nun an Feinheiten machen. Ich habe als Daemons dbus, fam und hal installiert, da diese externe USB Laufwerke, oä. automatisch mounten. Nützlich ist auch Networkmanager, da man mit diesem komfortabel eine WLAN verbindung aufbauen kann, etc. wpa_supplicant benötigen wir für WPA/WPA2-Verbindungen

  pacman -S fam dbus hal networkmanager wpa_supplicant

Wenn Du Gnome einsetzt, empfehle ich dir das nm-applet

  pacman -S gnome-network-manager

Bei KDE kann ich euch KNetworkmanager empfehlen:

  pacman -S knetworkmanager

So sollte eure DAEMONS-Line in der /etc/rc.conf aussehen:

  DAEMONS=(fam dbus hal networkmanager bluetooth alsa pommed)


Nun können wir auch den ArchLinux-Kernel deinstallieren, da dieser ja nur noch unnötig Plattenplatz benötigt.

  pacman -R kernel26

Nach der Installation der X.org

Falls du die Sonderfunktionen des Touchpads nutzen willst (Multitouch, etc), dann kannst du als Vorlage meine xorg.conf verwenden, oder verändern. Jetzt brauchen wir aber noch die synaptics Treiber, aber auf gar keinen Fall gsynaptics installieren, weil die Maus dann nicht funktionieren wird!Ich denke, dass dies an einem Bug derzeit liegt, da dieses Programm mit einem Speicherzugriffsfehler endet und dann das Touchpad "lahm" legt.

  pacman -S synaptics


  Section "ServerLayout"
      Identifier     "Xorg Configured"
      Screen      0  "Screen0" 0 0
      InputDevice    "Keyboard0" "CoreKeyboard"
      InputDevice    "MacBook Touchpad" "CorePointer"
  EndSection

Sucht jetzt die Section, wo

  Option "Device" "/dev/psaux"

steht. Diese Section entfernst du gänzlich und ersetzt sie durch folgende:

  Section "InputDevice"
       Identifier      "MacBook Touchpad"
       Driver          "synaptics"
       Option          "AccelFactor"           "0.015"
       Option          "BottomEdge"            "310"
       Option          "Device"                "/dev/psaux"
       Option          "FingerHigh"            "30"
       Option          "FingerLow"             "20"
       Option          "HorizScrollDelta"      "0"
       Option          "LeftEdge"              "100"
       Option          "MaxDoubleTapTime"      "180"
       Option          "MaxSpeed"              "0.88"
       Option          "MaxTapMove"            "220"
       Option          "MaxTapTime"            "150"
       Option          "MinSpeed"              "0.79"
       Option          "Protocol"              "auto-dev"
       Option          "RightEdge"             "1120"
       Option          "SendCoreEvents"        "true"
       Option          "SHMConfig"             "on"
       Option          "TapButton2"            "3"
       Option          "TapButton3"            "2"
       Option          "TopEdge"               "50"
       Option          "VertScrollDelta"       "25"
       Option          "VertTwoFingerScroll"   "true"
  EndSection

Als Alternative könnt Ihr auch gänzlich meine verwenden:

  http://home.arcor.de/nathanhi/macbook/xorg.conf

Ich wünsche euch nun viel Spaß mit dem funktionierendem System. Die Desktop Umgebung und weitere Programme müsst Ihr nun selbst installieren.