Gentoo Installation auf Lenovo IdeaPad S12

Übersicht

  1. Laptopinformationen
  2. BIOS konfigurieren
  3. Boot USB Stick erstellen
  4. Netzwerk
  5. Installation und Kernel/Grub Optionen
  6. Systemkonfiguration
  7. WLAN
  8. X Installation
  9. Xfce4
  10. Hibernate
  11. ALSA

Allgemeine Infos

Der von mir erstellte Guide wird Xfce4 installieren.
Gnome oder sogar KDE sind einfach zu energiefressend.
Dazu werde ich nur sehr schlanke und energiesparende Software installieren. Soweit es geht und es die funktionalität zulässt.
Mann kann aber auch LXDE (http://www.gentoo.org/proj/en/desktop/lxde/lxde-howto.xml) verwenden.

1. Laptopinformationen

00:00.0 Host bridge: Intel Corporation Mobile 945GME Express Memory Controller Hub 
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express \
Integrated Graphics Controller
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML \
Express Integrated Graphics Controller
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition \
Audio Controller
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller
02:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5906M Fast Ethernet \
PCI Express
03:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g


2. BIOS Konfigurieren

Für das problemlose Arbeiten von Gentoo und das vermeiden von sog. hangups oder hängern muss man folgende Option im BIOS ändern:

(1) Press F2 to enter setup after turning on the machine
(2) Go to "Configurations"
(3) Change "SATA controller working mode" from "AHCI" to "Compatibility"
(4) Press F10 to "Save and exit"

Der Grund ist folgender.
Nach meiner Installation traten sehr oft Hänger(Hangups) oder Pausen mitten im Betrieb auf, ohne jedigliche Systematik. Das einzige was half bzw. auffiel, war dass es erster weiter ging wenn man irgendeine Taste gedrückt hatte.
Wenn man somit dachte ich schalte mal den Rechner ein und machen mir in der Zeit einen Kaffee, wurde damit enttäuscht dass der Bootvorgang vom Kernel einfach stehen blieb. Erst nach einem Druck auf eine Taste ging es sofort und ohne Probleme weiter.
Ich war fast schon dabei das Laptop zurück zu senden, da ich auf einen Defekt schloss.

 

3. Von USB Stick booten

Da ja das System kein CD-ROM Laufwerk hat, muss man entwerder von einem USB CD-ROM Laufwerk booten oder man erstellt sich einen bootbaren USB-Stick mit dem Net-Install Image.
Installation und Konfigration:
http://www.gentoo.org/doc/en/liveusb.xml

Der USB Stick muss von Anfang an im Gerät stecken, ansonsten taucht er nicht in dem Bootmenü (F12) auf.

 

4. Netzwerk

Sollte man nur über das WLAN auf das Internet zugreifen können, dann muss man einen Rechner mit Internetzugang zur verfügung haben um sich die ganzen Distfiles herunterladen zu können.
Da die Netzwerkkarte nicht von dem Net-Install Image unterstützt wird. Was alles benötigt wird kann man einfach über die emerge Parameter -pv einsehen.

Sollte man dagegen einen Netzwerkkabel anschluss haben, hat man keine Probleme und kann in Ruhe alles Installieren bis das WLAN funktioniert oder einfach auch ohne WLAN arbeiten.

 

5. Installation + Kernel/Grub Optionen

http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml
Ab Schritt "Preparing the Disks" bis zum Reboot. Bitte aber erster weiter lesen !!!

Folgendes ist bei der Konfiguration von Grub zu beachten.
Die Kernel Zeile in der /boot/grub/menu.lst benötigt noch folgende Optionen um die oben erwähnten Hänger zu vermeiden:

kernel /boot/kernel root=/dev/sda2 acpi=on nolapic

 

6. Systemkonfiguration

So, nach dem erfolgreich ein Reboot erfolgte widmen wir uns der make.conf

Es folgen meine Einstellungen der /etc/make.conf
Mehr Informationen und auch für zukünftige gcc findet man hier: http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel#Atom_N270.2FN280

CHOST="i686-pc-linux-gnu"
CFLAGS="-O2 -march=core2 -mtune=generic -msse3 -mfpmath=sse -fomit-frame-pointer -pipe"
CXXFLAGS="${CFLAGS}"
 
ACCEPT_KEYWORDS="~x86"
 
MAKEOPTS="-j2"
 
# X installation
INPUT_DEVICES="evdev keyboard mouse synaptics"
VIDEO_CARDS="intel"
# Sprache für ebuilds
LINGUAS="en"

 

USE Flags
Hier die Allgemeinen und Xfce4 spezifischen USE Flags

USE="X dbus hal jpeg lock sesseion thunar vim-syntax acpi \
png unicode laptop opengl alsa startup-notification \
-gnome -nptl -cups -qt -qt3 -qt4 -arts -kde"

 

LOCALE

/etc/env.d/15locale
 
LC_ALL="en_US.utf8"
LANG="en_US.utf8"

 

7. WLAN

Wer WLAN nicht benötigt, der kann diesen Schritt übersprigen.

Für die Installation und Verwendung der Broadcom WLAN Karte habe ich folgenden Artikel verwendet:
http://en.gentoo-wiki.com/wiki/Broadcom_43xx
Dabei habe ich den Kernel und die Firmware verwendet und da ich den Kernel 2.6.32 habe konnte ich das firmware ebuild verwenden.

Nach dem Kernel rebuild und der firmware installation sollte so was im dmesg auftauchen:

dmesg | grep b43
[ 0.190427] b43-pci-bridge 0000:03:00.0: PCI INT A -> Link[LNKB] -> GSI 11 (level, low) -> IRQ 11
[ 0.190867] b43-pci-bridge 0000:03:00.0: setting latency timer to 64
[ 1.136203] b43-phy0: Broadcom 4312 WLAN found (core revision 15)
[ 1.151255] b43-phy0 debug: Found PHY: Analog 6, Type 5, Revision 1
[ 1.151283] b43-phy0 debug: Found Radio: Manuf 0x17F, Version 0x2062, Revision 2
[ 1.160218] Registered led device: b43-phy0::tx
[ 1.160437] Registered led device: b43-phy0::rx
[ 1.160649] Registered led device: b43-phy0::radio
[ 143.636301] b43 ssb0:0: firmware: requesting b43/ucode15.fw
[ 143.722474] b43 ssb0:0: firmware: requesting b43/lp0initvals15.fw
[ 143.743314] b43 ssb0:0: firmware: requesting b43/lp0bsinitvals15.fw
[ 143.909300] b43-phy0: Loading firmware version 410.2160 (2007-05-26 15:32:10)
[ 143.911925] b43-phy0 debug: b2062: Using crystal tab entry 19200 kHz.
[ 143.912854] b43-phy0 debug: RC calib: Failed to switch to channel 7, error = -5
[ 145.310486] b43-phy0 debug: Chip initialized
[ 145.310719] b43-phy0 debug: 64-bit DMA initialized
[ 145.311053] b43-phy0 debug: QoS enabled
[ 145.320229] b43-phy0 debug: Wireless interface started
[ 145.320262] b43-phy0 debug: Adding Interface type 2

Die Konfiguration der Netzwerkverbindungen wird über wpa_supplicant gemacht.
http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=4


Zu beachten ist die Konfiguration in /etc/conf.d/net

modules=( "wpa_supplicant" )
# To configure wpa_supplicant
wpa_supplicant_wlan0="-Dwext -c/etc/wpa_supplicant/wpa_supplicant.conf" # For generic wireless

Ansonsten musste ich nur die Schritte 4a und 4b machen. Danach funktionierte alles. Den Rest habe ich nicht gemacht.

 

8. X Installation

Die Installation und Konfiguration von X geht nach der offiziellen Anleitung ohne Porbleme.
Die Einstellungen und USE Flags sind schon in dem Schritt Systemkonfiguration behandelt worden. Einfach mal da nachschauen.
http://www.gentoo.org/doc/en/xorg-config.xml

Die Konfiguration der Eingabegeräte funktioniert via hal. Hier meine fdi für die Tastatur:

< ?xml version="1.0" encoding="UTF-8"?>
< deviceinfo version="0.2" >
< device >
< match key="info.capabilities" contains="input.keymap">
< append key="info.callouts.add" type="strlist">hal-setup-keymap< / append>
< / match>
< match >key="info.capabilities" contains="input.keys">
< merge key="input.xkb.rules" type="string">base< / merge>
< merge key="input.xkb.model" type="string">evdev< / merge>
< merge key="input.xkb.layout" type="string">de< / merge>
< merge key="input.xkb.variant" type="string">nodeadkeys< / merge>
< / match>
< / device>
< / deviceinfo>

 

Hier die fdi für das Touchpad. Ohne dieses war das Touchpad sehr empfindlich und sehr schlecht zu bedienen.
http://en.gentoo-wiki.com/wiki/Synaptics_Touchpad/Xorg_7.3

< ?xml version="1.0" encoding="UTF-8"? >
version="0.2" >
< device >
< match key="info.capabilities" contains="input.touchpad" >
< merge key="input.x11_driver" type="string">synaptics< / merge >
< merge key="input.x11_options.TapButton1" type="string" >1< / merge >
< merge key="input.x11_options.MaxTapMove" type="string" >2000< / merge >
< merge key="input.x11_options.VertEdgeScroll" type="string">true< / merge>
< / match>
< / device>
< / deviceinfo>

 

Sollte beim start von X die Meldung kommen, dass das Modul i915 nicht gefunden worden ist, dann muss man hier nochmal nachschauen. Denn dann wurde das nicht automatisch bei der Konfiguration des Kernel erkannt.

9. Xfce4

Also Desktopumgebung verwende Ich Xfce4. Gnome und KDE sind zu Energiefressend. Dadurch würde nur die Akku-Laufzeit leiden. Dazu kommt noch, dass man mit Xfce auch alles machen kann. Sollte man trozdem Software aus KDE oder Gnome verwenden, dann kann man dies ja jederzeit nachinstallieren.

Die Installation geht nach der offiziellen Anleitung: http://www.gentoo.org/doc/en/xfce-config.xml

Der einzige Unterschied ist nur, dass ich das Ganze mit startxfce4 starte und nicht via startx. Wer natürlich einen Displaymanager verwendet braucht das nicht zu machen. Dazu kommt noch, dass man auf jediglichen Schnick Schnack wie Compiz etc. verzichten sollte. Das geht alles nur auf Rechenleistung und Strom.

Zu empfehlen sind noch folgende Programme.

x11-terms/terminal
app-office/abiword
app-text/xpdf
media-gfx/ristretto
dev-util/geany
app-editors/mousepad

Eine Übersicht über weiter Programme findet man hier. http://wiki.xfce.org/recommendedapps sowie auch hier http://en.gentoo-wiki.com/wiki/Productivity_Applications_for_Xfce

 

10. Hibernate

Damit Hibernate oder suspend to RAM ohne Probleme funktioniert verwende ich einen speziellen Kernel Source:
http://en.gentoo-wiki.com/wiki/TuxOnIce
Dieser wird dann anstelle der normalen gentoo-sources verwendet.
Die Installation geht einfach nach http://en.gentoo-wiki.com/wiki/TuxOnIce.html
Man muss nur beachten, dass man die Konfiguration aus dem alten Kernel mit übernimmt ansonsten hat man ein Problem.
Am einfachsten ist es die Swap Partition zu verwenden und diese gleich im Kernel einzutragen. Als default resume partition. Damit muss man nicht grub anfassen. Nach der Installation und neu booten des Kernels kann man bequem vie dem Xfce4 Logout Menü die Optionen wählen. Das spart einiges an Strom wenn man Hibernate macht und nicht immer komplett hoch und runterfährt, wenn man
am Akku hängt.

 

11. ALSA

Installation und Konfiguration von ALSA erfolgt nach http://www.gentoo.org/doc/en/alsa-guide.xml.

Hier die speziellen Kernel Optionen für die Soundkarte:

# lspci -v | grep -i audio
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller

 

Kernel Optionen

1
2
3
4
5
6
7
Device Drivers -> Sound Card Support -> 
Advanced Linux Sound Architecture ->
PCI sound drivers -> Intel HD Audio
[*] Build hwdep interface for HD-audio driver
[*] Support jack plugging notification via input layer
[*] Build Realtek HD-audio codec support
[*] Build Intel HDMI HD-audio codec sup