ThinkPad Yoga 260 – Teil 2: Ubuntu 15.10 – Installation & Treiber

Wer Ubuntu 15.10 auf dem Lenovo ThinkPad YOGA 260 installieren möchte, stößt bereits beim Versuch, ein Linux-Live-Medium zu booten, auf das erste Problem: einen schwarzen Bildschirm nach der Auswahl im Grub Bootmenü. Verursacher ist der verbaute 6th Gen Intel-Prozessor der Skylake-Generation, dessen neuer Stromsparmechanismus (noch) nicht unterstützt wird. Um dennoch Ubuntu 15.10 booten und installieren zu können, muss im Auswahlmenü mittels der Taste „e“ ein Bootparameter (z.B. nach dem Parameter „quiet“) ergänzt werden:

 intel_pstate=no_hwp

Mit Strg+x booten wir die veränderte Konfiguration. Jetzt funktioniert zwar der neue Stromsparmechanismus nicht, aber immerhin läuft GNU/Linux. Damit das Parameter nicht bei jedem Boot von Hand eingegeben werden muss, trägt man den Parameter entsprechend in „/etc/default/grub“ ein und lässt das Grub-Menü neu erstellen:

sudo grub-mkconfig -o /boot/efi/grub/grub.cfg

Mit der Standardinstallation von Ubuntu 15.10 wir die Intel WLan-Karte 8260 leider nicht erkannt. Abhilfe schafft das Nachinstallieren von Kernel 4.4. Dafür einfach die Pakete linux-image-4.4-generic, linux-headers-4.4-generic und linux-headers-4.4-all herunterladen und installieren

sudo dpkg -i *.deb

Nach einem Neustart läuft die WLan-Karte dann problemlos. Allerdings zeigt uns journalctl immer noch Firmware Fehlermeldungen: es fehlen die ucode Dateien von iwlwifi-8000C-14 bis iwlwifi-8000C-19. Um an die Dateien zu kommen, einfach mehrmals den folgenden Downloadlink benutzen und die Nummer vor „.ucode“ jeweils anpassen: https://git.kernel.org/cgit/linux/kernel/git/iwlwifi/linux-firmware.git/plain/iwlwifi-8000C-19.ucode. Dann alle ucode-Dateien nach „/lib/firmware/“ verschieben.

Das Journal zeigt auch für die Grafikkarte eine noch fehlende Firmware-Datei: „i915/skl_guc_ver4.bin“. Zwar kann man auch diese einfach downloaden und nach „/lib/firmware/i915“ verschieben. Die Fehlermeldung bleibt bei mir aber sowohl mit „*ver4.bin“ als auch einer als ver4.bin mit Symlink verknüpften „*ver4_3.bin“ bestehen.

Das Ende von Linux auf dem Desktop

… zumindest für mich. Nach den letzten Versuchen mit dem XPS 13 9350 gebe ich meine Unternehmung, auf dem Notebook komplett von OS X nach Fedora zu wechseln, auf. Nachdem ich in den letzten zwei Jahren etwa zehn Notebooks mit GNU/Linux ausprobiert und dabei auch diverse Distributionen getestet habe (von denen mir nach wie vor Fedora mit Abstand am Besten gefällt), ist für mich jetzt Schluss.

Nicht weil GNU/Linux per se schlecht auf aktuellen Notebooks laufen würde. Irgendwie bekommt man es immer hin, dass die wichtigsten Funktionalitäten des mobilen Rechners ihren Dienst verrichten. Oft sind es dabei immer die selben Dinge, die auf dem Weg dorthin Probleme bereiten: stabiles WLAN (das auch im eduroam problemlos funktionierte) oder Suspend zum Beispiel.

Ich gebe meine Umstiegsversuche auch nicht auf, weil ich auf irgendwelche Programme angewiesen wäre, für die es unter GNU/Linux keinen Ersatz gibt. Eclipse ist ohnehin überall verfügbar und GIMP oder OpenOffice sind ziemlich mächtige Programme – offenbaren aber auch eines der meiner Meinung nach großen Probleme: der enorme Einarbeitungsaufwand. In Microsoft Office oder Photoshop erlernte Workflows muss man sich mühsam ab und neu angewöhnen (wenn man mehr als nur Bilder verkleinern oder fette Schrift nutzt). Kosten und Nutzen stehen für mich dabei in einem fraglichen Verhältnis. Es hilft auch nicht, dass unter GNU/Linux zwar vom Funktionsumfang her vergleichbare Programme verfügbar sind, Design und Aufbau aber eher in die Kategorie hässlich, uneinheitlich, umständlich und technikorientiert fallen. Wobei das natürlich auch Geschmacksache ist.

Selbstverständlich mag die Anpassbarkeit von Programmen oder die breite Distributions- und Desktopauswahl sowie deren Individualisierbarkeit viele Möglichkeiten mit sich bringen. Letzten Endes will ich aber mit dem und nicht am Betriebssystem oder Programm arbeiten. Das macht zwar oft Spaß, ist aber (auf Dauer) enorm unproduktiv (wenn man eigentlich was anderes machen will/soll). Für eine gute Zugänglichkeit würde ich sogar auf gewisse Funktionalität verzichten. Bei anderem tue ich mich dagegen schwer, Abstriche zu machen: etwa bei der Grammatikprüfung, bei der OpenOffice ebenso meilenweit von Word auf dem Mac entfernt ist, wie bei der automatischen Silbentrennung. Beides stört natürlich nicht, wenn man längere Texte ohnehin mit Latex schreibt, aber für den kurzen Brief und andere Einseiter zwischendurch, soll es dann doch möglichst schnell und komfortabel sein.

raspiIn der Konsequenz bleibt GNU/Linux bei mir jetzt da, wo es als komfortable Lösung hingehört: mit OpenELEC als MediaPlayer auf einem RaspBerry Pi 2, mit Baikal als CalDAV/CardDAV-Server auf einem RaspBerry Pi 1 und zur schnellen Verfügbarkeit, wenn man doch mal etwas rumspielen will, mit Manjaro in der VirtualBox. Auf dem Desktop bleibt es dagegen weiterhin bei OS X. Das ist weder eine perfekte noch eine ideale Lösung (und aus Open Source Gesichtspunkten für mich eigentlich auch keine wirklich erwünschte), aber eine, die für mich (eigentlich schon seit einigen Jahren) gut (genug) funktioniert. Die Zeit und den Aufwand für die bisherigen GNU/Linux-Notebook-Experimente investiere ich zukünftig lieber in andere Projekte.

MacBook Tastaturlayout – Einfacher Programmieren mit Karabiner

Was mich beim Programmieren auf meinem MacBook wirklich nervt, ist das bescheidene deutsche Tastaturlayout. Insbesondere kann ich mir einfach die Position der eckigen Klammern und der Tilde nicht blind merken. Der Backslash ist nicht einfach zu erreichen und nach Pipe suche ich auch immer mal wieder an der falschen Stelle…

Auftritt Karabiner.

karabinerMit dem kleinen (aber nicht gerade übersichtlichen) Public Domain Programm kann fast beliebiges Remapping von Tasten betrieben werden. Ausgenommen ist das Umbelegen von Systemsondertasten (wie etwa Caps Lock/Feststelltaste – dafür müsste man Karabiner mit Seil kombinieren… zum Programmieren und störungsfreien Schreiben reicht es mir aber schon, über „Systemeinstellungen->Tastatur: Sondertasten“ die Feststelltaste einfach mit „Keine Aktion“ zu belegen). Darüber hinaus bietet das Tool noch jede Menge andere Einstellmöglichkeiten, wie etwa die Einstellung von Tastenanschlägen im ms Bereich oder eine Erweiterung für Multitouch-Events auf dem TouchPad.

Heruntergeladen und installiert, muss dem Programm zunächst über „Systemeinstellungen->Sicherheit->Privatsphäre: Bedienungshilfen“ noch erlaubt werden, das MacBook zu steuern. Wenn Karabiner läuft, sind einige Dinge schon voreingestellt. Dazu gehört etwa die Tastenkombination fn+Backspace für Forward Delete oder fn+Pfeiltasten für PageUp, PageDown, Home und End.

Um jetzt eigene Tastenkombinationen zu definieren, startet man Preferences über des Icon in der Menübar. Wenn man unter dem Reiter „Misc & Uninstall“ auf den Button „Open private.xml“ klickt, kann man anschließend die Datei in einem Editor seiner Wahl öffnen.

Die Syntax für eine eigene Tastenkombination sieht wie folgt aus:


 Name der Tastenkombination
 private.eideutiger_kurzname
 __KeyToKey__ KeyCode::ORIGINAL_TASTEN_CODE, ModifierFlag::ORIGINAL_TASTEN_CODE, KeyCode::GEMAPPTER_TASTEN_CODE

Dabei können mehrere „autogen“ (und damit Tastenzuweisungen) in einem „item“ stehen. Die verfügbaren TASTEN_CODES gibt es hier.

Nach dem Speichern muss die veränderte Datei noch unter dem Reiter „Change Key“ über den Button „Reload XML“ eingelesen werden. Wenn keine Syntaxfehler vorliegen, erscheinen die neuen Einträge in der Liste und können mit einem einfachen Klick auf ihre Checkbox aktiviert werden.

Für mich haben sich die folgenden Tastenkombinationen als hilfreich herausgestellt, die sich zum Teil am PC-Keyboard orientieren und fn-Kombinationen nutzen:


 Eckige Klammer links: fn+8
 private.bracket_left
 __KeyToKey__ KeyCode::8, ModifierFlag::FN, KeyCode::5, ModifierFlag::OPTION_L


 Eckige Klammer recht: fn+9
 private.bracket_right
 __KeyToKey__ KeyCode::9, ModifierFlag::FN, KeyCode::6, ModifierFlag::OPTION_L


 Pipe: fn+lt
 private.pipe_gt
 __KeyToKey__ KeyCode::GERMAN_LESS_THAN, ModifierFlag::FN, KeyCode::7, ModifierFlag::OPTION_L


 Tilde: fn++
 private.tilde_plus
 __KeyToKey__ KeyCode::BRACKET_RIGHT, ModifierFlag::FN, KeyCode::N, ModifierFlag::OPTION_L


 Backslash: fn+7
 private.backslash_seven
 __KeyToKey__ KeyCode::7, ModifierFlag::FN, KeyCode::7, ModifierFlag::OPTION_L, ModifierFlag::SHIFT_L

Eine weitere kleine Unterstützung bei der Programmierarbeit leistet eine vernünftige Schriftart. Ich habe mich für „Hack“ entschieden. Da ist gerade die zweite Version erschienen und die Schriftart ist Open Source. Einfach das Schriftartpaket herunterladen, die ttf-Dateien über die „Schriftsammlung“ installieren und in allen Editoren „Hack“ als Standardschriftart einstellen.