Karmic Koala auf der Seashell

Hier war es eine weile sehr ruhig, dass hatte zwei Gründe. Erstens hatte ich Urlaub (die letzte Woche) zum anderen hat sich gezeigt, dass beim Netbook-Remix von Jaunty (9.04) auf Karmic (9.10) sehr viel passieren würde. Es hätte wenig Sinn gemacht, den Jaunty auf der Seashell bis zum Brechen zu optimieren, um ihn anschließend durch den Karmic zu ersetzten.

Darum dreht sich die Frage ja im Grunde. Lohnt es sich, eine funktionierende  Jaunty-Netbook-Installation durch eine Karmic zu ersetzten. Kurz und knapp: Ja. Sämtliche Funktionen der Seashell funktionieren Out-of-the-Box. Hier nochmal die Auflistung:

  • WLAN und LAN: Beide Interfaces werden erkannt und können sofort genutzt werden.
  • HotKeys/LEDS: Fast alle wichtigen HotKeys (WLAN ausschalten, usw) funktionieren tadelos. Ausnahmen Touchpad-deaktiviern
  • Suspend to Disk/Ram: laufen jetzt besser/robuster.

Diese Verbesserungen sind zu großen Teilen auf den neuen Kernel (2.6.31) zurückzuführen. Hier war der Jaunty einfach „benachteiligt“. Beim damaligen Release hat sich in zu vielen Treiberteilen, die die Netbooks betreffen, zu viel getan. Besonders hart hat es den Treiber der Intel-Grafikkarten getroffen. Dieser war im alten Kernel einfach „gebrochen“. Die Performance ist zwar immer noch hinter den Windows-Treibern aber schon erheblich besser als unter Jaunty.

Das Design und die Bedienung wurden im Detail verbessert. Es wirkt alles aufgeräumter und dezenter.

Über FN-Taste das Touchpad deaktivieren.

Der Controler des 1008HA benutzt für die Touchpad-Taste einen anderen KeyCode als die bissherigen EeePC-Modelle. Somit bedarf es einer Anpassung. Am leichtesten geht dies über das EeePC-Tooling von Statux.

Mit diesem wird eine „angepasstes“ ACPI-Tooling ausgeliefert welches die Events dem System zur Verfügung stellt. Dies ist nich alles weiter wild und wird auch von anderen ACPI-Implementierung geliefert (auch der Standartversion). Diese Variante bietet aber die Möglichkeit ohne größere Probleme in den „Verarbeitungsprozess“ einzugreifen.

Mittels einer Debugoption kann sich die KeyCodes ausgeben lassen. Damit lässt sich die folgende Configurationsdatei (/etc/default/eeepc-acpi.local) schnell zusammenstellen. Nach einem (Dienst)Neustart funktioniert der Key.

#KEY_SHOW=1 #Debugausgabe zuschalten oder nicht

KEY_WIFI="00000010"
#KEY_BT=  #die Seashell hat dafür keinen schalter
#KEY_CAM= #die seashell hat dafür keinen schalter
KEY_VOLU="00000015"
KEY_VOLD="00000014"
KEY_MUTE="00000013"
KEY_TOUCHPAD="00000037" #angepasster keycode
KEY_RESOLUTION="0000001b"

KEY_VGAOFF="00000016"
KEY_VGAOUTA="00000030" 
KEY_VGAOUTB="00000031" 
KEY_VGAOUTC="00000032" 

KEY_PERFMON="00000012"
KEY_PERFMON_COMMAND="/usr/bin/gnome-system-monitor"
KEY_PERFMON_NAME="System Monitor"
KEY_PERFMON_ICON="gnome-monitor"

TOUCHPAD_KEY_DISABLE="1"
TOUCHPAD_DELAY="0.5"

POWER_AC="00000050"
POWER_BAT="00000051"

MODE_AC="performance"
MODE_BAT="ondemand"

PAUSE_SERVICES="anacron cron ntp bluetooth"

USB_SUSPEND=1 #mit vorsicht zu genießen! dokumentation lesen
DONOT_SCALE_FSB="1"

Damit das Touchpad „on-the-fly“ abgeschaltet werden kann braucht es noch „einige“ Anpassungen.
Erstmal müssen alle Einträge in der XServer-Configdatei (/etc/X11/xorg.conf) entfernt werden die das Touchpad/Mause betreffen.
Die Seashell verwendet ein standart Synaptic-Touchpad, entsprechend müssen eventuelle Protokollanpassungen in der Datei „/etc/modules“ entfernt werden. Der Treiber funktioniert „out of the Kernel“.

Alle konfiguration betreffend des Touchpads sollte/muss über eine HAL-Policy erfolgen. Dazu einfach eine Datei unter /etc/hal/fdi/policy anlegen. Diese sollte die Endung .fdi haben.
folgenden Inhalt einfach reinkopieren

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="input.x11_driver" string="synaptics">
<merge key="input.x11_options.PalmDetect" type="string">true</merge>
<merge key="input.x11_options.SHMConfig" type="string">true</merge> 
</match>
</device>
</deviceinfo>

Auf „PalmDetect“ kann verzichtet werden, SHMConfig muss auf „true“ gesetzt werden. Alle weiteren möglichen Parameter können im Ubuntu wiki nachgeschlagen werden. Nach einem (HAL-Dienst)Neustart lässt sich nun auch das Touchpad auf Knopfdruck zu/abschalten.

Sehr praktisch das ganze.

Seashell RFKillswitch unter Ubuntu

Damit man auf Knopfdruck das WLan abschalten kann muss man das modul rfkill-input laden lassen. In der Datei „/etc/modules“ das modul angeben.

Man kann auch mit dem folgendem Befehl, das modul temporär laden und testen.

sudo modprobe rfkill-input

will man etwas mehr komfort braucht man eines der „vielen“ EeePC-Applets. Ein gutes wird über das statux.org-Repository. Danach kann man sich das EeePC-Tray installieren. Danach bekommt man eine Visualisierung ob der Tastendruck „gezogen“ hat, da der WPA-Supplicant ein wenig verzögert reagiert.

Ein Rückblick: eine Woche Ubuntu-Netbook-Remix

Ich hab jetzt seit einer Woche ein Netbook im Einsatz. Es ist also Zeit für einen kleinen Rückblick. Erstes Fazit: arbeiten auf der Seashell macht Spaß. Besonders da es momentan noch wirklich Arbeit ist. Es braucht eine weile bis man sich Ubuntu so angepasst hat, das es so läuft wie man es wirklich will. Besonders die Optimierung auf „Sparsamkeit“ ist noch (Konsolen) Arbeit. Daneben lassen sich hervorragend Texte schreiben, Mails lesen und im Internet surfen.

Neben der Tastatur und dem Display überzeugt vor allem der Netbook-Remix selber. Diesen muss man in zwei Bereiche teilen: Kernel/Unterbau und GUI.
Der Kernel im Netbook-Remix samt die ihm umgebene Konfiguration aus Daemons ist nicht „optimal“. Was aber nicht weiter verwundert, es zwar ein optimierter aber immer noch „allgemeingültigen“ Kernel eingesetzt. Auch der Xserver läd noch alle Module/Treiber um eine Nvidia, ATI oder sonst irgendeine Karte zu befeuern. Dies ist dem Umstand geschuldet, das es sich beim Netbook Remix um eine „große“ Distribution handelt, keine optimierte Spartenvariante. Das ließ sich aber schnell ändern. Mit „wenigen“ Handgriffen war der „allgemeine“ Kernel gegen einen EeePC-Kernel ausgetauscht, der ist nicht nur kleiner sondern spart auch Strom. Auch sonst ließ sich der Unterbau mittels aptitude und Config-Scriptes sehr komfortabel an die Bedürfnisse anpassen. Momentan hab ich das Gefühl eine Betriebssystem zu haben, was sich „fast“ perfekt an die vorhanden Hardware angepasst hat. Noch ein zwei Ecken weg schleifen (Softkey zum laufen bringen) und ich bin wunschlos glücklich.

Bei der Oberfläche überlebte ich einige Überraschungen. Ich war mit der Einstellung „ran gegangen“ Ubuntu zu installieren (da es noch kein Xubuntu Netbook-Remix gibt) und das enthaltene Gnome schnellstmögliche runter zuschmeißen und gegen Xfce zu tauschen. Da dies ja ressourcensparender ist und mehr „KDE-like“. „Gnome ist halt hässlich“. Naja es kam alles ein wenig anders. Beim Zwangsboot von Windows merkte ich das erste mal, dass eine Standard Desktopoberfläche auf einen 10“-Display alles andere als optimal ist. Die Fensterleiste zu breit, dass „Windowing“ zu platz verschwendend. Von 600 Pixeln (vertikal) gehen alleine schon knapp 100 Pixel für „Startleiste“ und „Fensterrahmen“ drauf. Nach der Installation von Ubuntu war ich erstmal schockiert von der Farbgebung. Ich mochte dieses grau in braun noch nie… Durch das Fehlen der Netzwerkfunktionalität war ich gezwungen erstmal mit dieser Oberfläche zu arbeiten, wenn auch nur in der Konsole. Nach den ersten Stunden (2-3) hatte ich Netzwerk und machte meine Drohung war. Einmal den Befehl ausgeführt, der mir GNOME runter schmeißt und XFCE draufhaut. Ohne Seil und doppelten Boden. Weg mit dem braunen Brei, her mit der … Desktopoberfläche… Nachdem ich die erste Stunde mit XFCE gearbeitet hatte (Einrichten, gestalten und auf Energiesparen trimmen) stellte ich fest, dass sich mein erster Eindruck bestätigte. Irgendwie fühlte sich das alles unrund an. Das ständige überlagern von Fenstern, das schieben und anordnen war ein Krampf. Ich verwarf das alles und installierte Ubuntu nochmal neu. Nachdem ich mich mit den Braun angefreundet hatte (mittlerweile empfinde ich es sogar als angenehm) stellten sich die Vorteile des Oberflächendesign noch stärker heraus. Bis auf ein paar nicht angepasste Dialoge (oder die Möglichkeit zu große Dialoge zu scrollen) wirkt alles aus einem Guss und aufeinander angepasst. Sogar mein Lieblingsbrowser lässt sich mit Skin wunderbar in die Oberfläche integrieren. Als Zentrale Anlaufstelle habe ich den Gnome-Netbook-Launcher wirklich ins Herz geschlossen. Anfangs wirkte das Ding überflüssig wie ein Kropf, mittlerweile findee ich das „OnScreen“Menüunervig.. Bei der kleinen Auflösung hat man oft Überblendungen oder „aufploppen“ an stellen wo man das Menü nicht erwartet. Wenn ich raus gefunden hab wie ich den Launcher auf Tastendruck einblende verschwindet das Menü endgültig…

Seashell – Kernel optimieren und LAN

Adam McDaniel bietet einen speziell an den EeePC (oder andere Netbooks) angepassten Kernel für Ubuntu an. Der ist zwar aktuell hinter dem Ubuntu-Kernel hinterher (2.6.28-13 gegen 2.6.28-12) dafür ist er aber um einiges schlanker und „schneller“. Wobei der Leistungszuwachs unter den „alten“ EeePC wohl größer ist. Ich betreibe meine SeaShell dennoch mit dem neuen Kernel, da der Kernel ungefähr 0.5 bis 1 Watt weniger Strom verbraucht (laut Powertop) und damit gut 30 min längere Akkulaufzeit bietet.

Um den Kernel zu installieren muss man erstmal die neuen quellen über die /etc/apt/source.list einbinden.

deb http://www.array.org/ubuntu jaunty main
deb-src http://www.array.org/ubuntu jaunty main

Anschließend den zugeörigen PublicKey herunterladen und ein Quellenupdate durchführen.

wget http://www.array.org/ubuntu/array-apt-key.asc
sudo apt-key add array-apt-key.asc
sudo apt-get update

Ist das erledigt, installiert man sich den optimierten Kernel

sudo apt-get install linux-netbook-eeepc
sudo apt-get install linux-backports-modules-jaunty-netbook-eeepc
sudo apt-get install linux-headers-2.6.28-12-netbook-eeepc

Die letzte Zeile kann man sich sparen, wenn man „nur“ den gleichen zustand herstellen will wie bei der „normalen“ Ubuntu installation. WIll man hingegen noch den LAN Treiber installieren braucht man die Header Files.

Den Treiber für die Gigabit-Ethernet-Karte gibt es bei Atheros oder direkt bei mir. Einmal entpackt beginnt der berühmte aber leicht abgewandelte Linux-Dreisatzt.

make
sudo make install
sudo insmod atl1e.ko

Danach funktionierts auch mit der Lan-Karte.

1008HA – Sound zu leise

Nach der Standartinstallation des NetBook-Remix auf der SeaShell wird man schnell feststellen, dass der Sound extrem leise daher kommt, obwohl unter windows der „Sound“ während der Einrichtung nerfig laut war, das muss man leider über sich ergehen lassen.

Leider lässt sich dem problem mit GUI-Boardmitteln nicht wirklich bei kommen. Da man aber die Console bei der Seashell durchaus gewöhnt ist/sein muss reicht ein aufruf des Alsamixers in der Console…

alsamixer

dort den zweiten Kanal hochdrehen (Anschlag) und anschließend die Einstellungen speichern

sudo alsactl store

und schon klappt es mit dem Sound 🙂

WLAN unter Ubuntu NetBook Remix auf der SeaShell zum laufen bringen

Unter der aktuellen Version des NetBook-Remixes ist die Seashell nicht sinnvol zum Einsatzt zu bringen, weder LAN noch WLan sind nutzbar. Um diesen Umstand zu lösen bedarf es eines Updates. Die kann man über folgenden Befehl bewerkstelligen.

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install linux-backports-modules-jaunty

wohl dem der eine externe USB LAN/WLAN-Karte hat, wie zb bei „where’s the [any] key“.

Leider dürften die meisten käufer wie ich erstmal etwas verduzt drein schauen. Das die WLAN Karte nicht nutzbar war, damit rechnet man, das eine einfache LAN-Karte nicht nutzbar ist, das hat man unter Linux schon lange nicht mehr erlebt.

Nach einer kleinen Suche im Debian-Handbuch war die Lösung aber „schnell“ parat. Zu finden hier: Debian Handbuch

Hier der Ablauf:

Als erstes ein Medium der Wahl, am besten USB-Stick oder SD-Karte, formatieren und mit der folgenden Ordnerstruktur vorbereiten (ich hab das Medium dabei unter /media/Disk eingebunden):

/media/Disk/
  archives/
     partial/
  lists/
     partial/

danach inter /media/Disk/ eine Datei mit dem namen apt.conf anlegen (kann auch anders heißen) und mit folgendem inhalt füllen:

APT
      {
        Architecture "i386";
        Get::Download-Only "true";
      };

      Dir
      {
        State "/media/Disk/";
        State::status "status";
        Cache::archives "/media/Disk/archives/";
        Etc "/media/Disk/";
      };

Nun (auf dem EeePC) das medium mounten (wenn nicht schon geschehen) und die Datei /var/lib/dpkg/status kopieren

cp /var/lib/dpkg/status /media/Disk/

Nun das Medium auf den Rechner mit Internet Mounten und die /etc/apt/sources.list kopieren.

cp /etc/apt/sources.list /media/Disk/

nun „apt“ temporär „umbiegen“ und „updaten“:

#auf dem "download"-Rechner braucht es keine root rechte
export APT_CONFIG="/media/Disk/apt.conf"
apt-get update
apt-get dist-upgrade
apt-get install linux-backports-modules-jaunty

Nun warten bis die dateien auf das Trägermedium geschrieben wurden, dann am EeePC wieder mounten und dort updaten.

#kurzeitig eine root umgebung besorgen, erleichtert das ganze...
sudo -s
export APT_CONFIG="/media/Disk/apt.conf"
apt-get check
apt-get --no-d -o dir::etc::status=/var/lib/dpkg/status dist-upgrade
apt-get --no-d -o dir::etc::status=/var/lib/dpkg/status install linux-backports-modules-jaunty

anschließend neu starten und das WLan in Betrieb nehmen.

Mein neues Spielzeug: ASUS EeePC 1008HA

Ich hab mir ein neues Spielzeug gegönnt. Einen EeePC 1008HA. Das neuste Modell und „Königsklasse“ von ASUS unter den (billig) Netbooks. Ich hab mich für dieses Modell entschieden weil der Hersteller mit seiner bisherigen Politik bewiesen hat, dass man auch auch Linux erfolgreich unterstützen kann. Ob mit den Ultra-Schlanken QuickBoot-Linux für ihre Motherboards oder dem ersten EeePC selber, eine Linux-Only Maschine.

Der 1008HA, Codename Seeshell basiert auf einer stromsparenden Intel Atom Plattform, wie alle anderen Modelle in der (Preis)Kategorie auch. Nur in der Ausstattung unterscheiden sich die Geräte geringfügig.

Außer einem GSM/HSDPA Modem ist bei diesem Modell alles mit an Bord was man für moderne Kommunikation so braucht. Bluetooth, 208.11 (B G) N(Draft) und (überraschenderweise) 10/100 LAN. Bestückt ist das Board mit einem 1GB RAM (kann auf maximal 2GB ausgebaut werden). Die Festplatte ist leider eine 160GB Platte „alter“ Bauart, keine SSD. Mit SSDs lassen sich noch keine Größen erreichen die eine „Windows“ Plakette ermöglichen (zu mindestens nicht bezahlbar). Leider bleibt das nicht das einzige Ärgernis mit der Ergebenheit an Redmond.

Positiv hinzu kommt das Design der „Muschel“. Flach wie selbige. Der LAN-Port ist breiter als das Gehäuse, was über eine findige Klappe realisiert wird.. Der Anschluss für einen externen Monitor ist an der Unterseite versteckt und alle weiteren Anschlüsse über Blenden unsichtbar gemacht. Sehr schick das ganze. Besonders in schwarz (mit blauen LEDs) sieht das ganze Edel aus… Bis auf diese scheiß Logos… Alle Aufkleber lassen sich rückstandslos entfernen, nur bei dem Atom und Windowslogo muss man mit Alkohol loslegen. Minuspunkts.

Gengretypisch aber dennoch beschissen ist das verspiegelte 10“ Display, in praller Sonne wird arbeiten so unmöglich. Die 10“ machen sich jedoch positiv bemerkbar. Man hat wesentlich mehr Übersicht als bei den Vorgängermodellen. Positiv wirkt sich das auch auf die Größe der Tastatur aus. Hier hat sich ASUS nicht lumpen lassen, Die Tastatur ist das eigendliche Highlight des 1008HA. Guter Anschlagpunkt und Haptik und auch die Größe der „Sondertasten“ (TAB, Enter, Shift) ist so, dass man sich als Vielschreiber nicht die Finger bricht. Damit kann man auch mal „geschwind“ ein paar Zeilen Sourcecode hacken…

Trotz der „Größe“ fällt das Gewicht mit 1.1KG angenehm gering aus. Das ist ein eindeutiger „immer dabei“ Faktor.

Wie sich das Teil in der Praxis schlägt folgt in den nächsten Artikeln.