LineageOS mit einem HTC One M8 (Teil 2)

Ein ganz neues LineageOS auf dem HTC One M8 ist installiert. Das Smartphone liegt vor mir. Es geht nun um die erste Einrichtung des Systems und um die Installation von weiteren Apps und zum Teil um deren Einstellungen.

LineageOS erste Einstellungen

Zuerst werden die Spracheinstellungen gesetzt. Bei diesem Gerät wird Deutsch eingestellt. Danach kommt die Zeitzone. Die Verbindung mit dem WLAN richte ich noch nicht ein. Zu Mühsam wäre mir das Abtippen des langen Passworts, also Überspringen. Noch habe ich auch keine SIM Karte für das Gerät, deswegen ebenso Überspringen.

Für die Standortdienste erlaube ich die Verwendung nach der Erlaubnis für einzelne Apps und schränke die Aktualisierungsrate wegen des Akkuverbrauchs ein wenig ein.

LineageOS
LineageOS Details

Bei den LineageOS-Funktionen werden die Diagnoseinformationen an die Entwickler weitergegeben und der Datenschutz aktiviert. Datenschutz heißt, dass Apps erst nach expliziter Genehmigung auf die persönlichen Daten im Telefon zugreifen dürfen. Schließlich wird noch eine PIN für den Gerätezugriff hinterlegt und LineageOS gestartet.

Im Blog zuvor hatten wir als Ausgangssituation ein Android 6.0 mit Sicherheitspatch vom 01. Dezember 2015. Jetzt ist es Android 7.1.2 mit Stand der Sicherheitsupdates vom 05. Mai 2017.

LineageOS weitere Einstellungen

Nun mache ich die weiteren grundlegenden Einstellungen im OS. Im Display schalte ich die adaptive Helligkeit ein. Aufwecken beim Einstecken und Aktivieren des Bildschirms mit doppeltem Tippen werden deaktiviert. Für Benachrichtigungen können Einstellungen gesetzt werden. Vertrauliche Nachrichten werden auf dem Bildschirmschoner ausgeblendet, Benachrichtigungslicht und Akku-LED sind Stromfresser, welche auch ich ebenso ausschalte. Bei die Toneinstellungen mache ich im Moment nichts.

Ich lasse die Installation von Apps aus unbekannter Herkunft vorläufig zu und verschlüssele das Smartphone. Die Statusleiste erlaubt schnelles Öffnen auf der rechten Seite, die Uhr ist links positioniert. Der Akkustand wird innerhalb des Kreissymbols ausgegeben und die Helligkeitssteuerung in der Statusleiste ermöglicht.

Schließlich aktiviere ich nochmals die Entwickleroptionen wie im vorgien Blog beschrieben. Also in den Einstellung → Über das Telefon → acht Mal auf die Build-Nummer tippen. Einstellungen setze ich oben mit dem erweiterten Neustartmenü für Warmstart und Neustart ins Recovery. Den Rootzugriff erlaube ich für Apps und vorläufig auch für ADB, welches ich auch gleich zulasse. Ganz unten in den Entwickleroptionen bei den Apps setze ich Aktionen nicht speichern und App beenden mit Zurück-Taste.

F-Droid installieren und einstellen

F-Droid ist ein installierbarer Katalog von FOSS-Anwendungen (Free and Open Source Software) für die Android-Plattform. Der Client macht es einfach, Anwendungen und Updates auf Ihrem Gerät zu suchen, zu installieren und zu verfolgen.“ steht auf der Hauptseite von F-Droid. Die F-Droid App apk von dieser Seite und die apk für den Barcode Scanner kopiere ich mit dem Dateimanager auf das M8. ADB wurde ja gerade ermöglicht. Dann installiere ich F-Droid und den Barcode Scanner durch tippen auf die akp-Dateien im Dateibrowser des Smartphones.

Bisher ist das M8 noch nicht mit dem Internet verbunden. Mit Hilfe des Barcode Scanners und einem Zugangs-Barcode für WLAN sind auch lange WLAN Passworte nicht so unangenehm einzugeben. Als nächstes öffne ich F-Droid. Die Paketliste wird gelesen und die App kann aktualisiert werden. Die ganz neue Oberfläche ab F-Droid Version 103 ist großartig, besonders wenn sie richtig eingestellt ist.

F-Droid auf LineageOS
F-Droid neue Version – Zuletzt

Dazu gehe ich in die Einstellungen der F-Droid App und stelle tägliche, automatische Aktualisierung nur über WLAN ein. Dann lade ich die zip-Datei für die Priviledged Extension auf das Smartphone und setze dieses über die Aus-Taste → Neu starten → Recovery in den Recovery Modus. Die vorher angelegte PIN ist

F-Droid auf LineageOS
F-Droid neue Version – Kategorien

das Passwort für die Verschlüsselung. Die zip-Datei wird so wie im vorherigen Blog beschrieben, mit Hilfe von TWRP installiert und LineageOS neu gestartet. Zurück in den F-Droid Einstellungen aktiviere ich den Expertenmodus und die Privilegierte Erweiterung. Nun wird in den LineageOS Einstellungen → Sicherheit die Installation von Apps unbekannter Herkunft wieder deaktiviert. Auch kann der Rootzugriff für ADB in den Entwickleroptionen wieder entfernt werden. Ergebnis: F-Droid ist als Systemanwendung bereit für die Installation von Apps.

F-Droid Apps

AdAway
F-Droid auf LineageOS
AdAway

Zuerst wird in der Kategorie Sicherheit AdAway installiert. Der Ad Blocker benötigt Rootzugriff. In den Einstellung verstecke ich den Neustartdialog, aktiviere IPv6, Lasse täglich, automatische und nur über WLAN die Updates der Hostdateien einfließen und aktiviere den Webserver auch bei jedem Gerätestart. Dann werden die Hostdateien heruntergeladen und der Werbeblocker aktiviert. Die Frage, warum diese App bei Sicherheit gelistet ist, beantworte ich hier nicht. In diesem Bereich weiter erwähnenswert wären der Google Authenticator, KeePassDroid und GnuPG.

AnySoftKeyboard
F-Droid auf LineageOS
AnySoftKeyboard

Es spricht einiges dafür, ein freies Keyboard zu verwenden. Im Bereich schreiben findet man neben dem Hacker‘s Keyboard auch AnySoftKeyboard, welches ich samt Deutschem Sprachpaket installiere. In den LineageOS Einstellungen –> Sprachen & Eingabe → Bildschirmtastaur → Tastaturen verwalten kann man AnySoftKeyboard für das M8 einstellen und durch Neutstart (Warmstart ist ausreichend) aktivieren. In der Anwendungsübersicht wählt man nun AnySoftKeyboard und mach noch die feineren Einstellungen.

Document Viewer & KDE Connect

In der Kategorie Lesen findet sich der Document Viewer wieder, welcher später pdf-Dateien anzeigen soll. Es gibt dazu noch weitere Schriftarten im Font Pack. In der Kategorie System gibt es für KDE Nutzer die App KDE Connect, mein bevorzugtes Tool für den Dateitransfer und tägliches Arbeiten auf KDE Rechnern.

Sky Map, K-9 Mail & New Pipe
F-Droid auf LineageOS
New Pipe

Weiter wähle ich noch Sky Map aus. Manche Google Play Store Apps sind Freie Software und dann bei F-Droid zu finden. K-9 Mail sichert später den Zugriff auf E-Mails. Mit New Pipe lassen sich You Tube Videos browsen.

BusyBox
F-Droid auf LineageOS
BusyBox

Viele Anwendungen verwenden die BusyBox, welche sich ebenso in F-Droid installieren lässt. Dies mache ich hier gleich vorsorglich. In den Einstellungen setze ich noch den Knopf für alle existierenden BusyBox Anwendungen ersetzen und gehe dann auf den Install Knopf.

Google Play Store mit OpenGapps

F-Droid auf LineageOS
OpenGapps Downloader

Schließlich soll das Telefon auch mit Google Apps laufen. Deswegen möchte ich eine Play Store installieren. Dazu wähle ich in F-Droid die OpenGapps Downloader. Dies hat später bei der Aktualisierung der OpenGapps entscheidende Vorteile. Die Updates lassen sich automatisch herunterladen und zudem halbautomatisch aus der App in TWRP installieren. In den Einstellungen wähle ich die ARM Architektur, Android 7.1 und die Variante Mini aus. Das Telefon soll nämlich auch Google Maps und YouTube können. Dann wähle ich die heute aktuelle Datei für den Download und starte den Neustart ins Recovery. In TWRP installiere ich dann die OpenGapps zip-Datei. Dann gibt es von Google auf dem M8: den Rechner, die Uhr, Faceunlock, Gmail, GoogleNow, Hangouts, Hotword („OK Google“), Maps, Photos, YouTube und noch mehr. Das Einrichten des Google Accounts selbst beschreibe ich hier allerdings nicht mehr.

Custom ROM für Mobiltelefone

Es gibt viele gute Gründe, ein Mobiltelefon mit anderer Software (Custom ROM) zu bespielen. Hier eine einfacher, theoretischer Überblick zur Vorgehensweise.

Warnung

Die hier aufgeführten Aktionen führen zum Verlust der Herstellergarantie. Ich bin nicht verantwortlich für defekte Geräte, tote SD-Karten oder den Verlust des Arbeitsplatzes, weil die Wecker-App nicht mehr funktioniert. Bitte forschen Sie selbst ein wenig nach, bevor Sie ihr Geräte mit der hier beschriebenen Software bespielt werden. Es ist Ihre Entscheidung!

Aufbau

Der Aufbau eines Android Systems ist einem Linux / Unix System sehr ähnlich. Kein Wunder, der Android Kernel ist ein Derivat des Linux Kernels. Der Unterschied liegt darin, dass Speicher und Prozessoren von Mobiltelefonen meist viel kleiner und weniger Leistungsfähig sind als bei Desktops, Notebooks oder Servern. Der Umfang der Software für Smartphones ist kleiner als z.B. beim Desktop und speziell auf die Telefonie ausgerichtet.

Prinzipiell besteht ein Android-System aus mehreren Schichten:

  • Der Bootloader ist vergleichbar mit einem BIOS im Desktop Computer. Dort werden grundsätzliche Funktionen wie Speicherzugriffe oder Telefonie Verbindungen bereitgestellt.
  • Optional gibt es eine Recovery Partition, welche neben der Sicherung des Gerätes auch die Einspielung von System, Google Apps, Root Zugriff und weiterem garantieren kann.
  • Das System selbst, die ROM, ist zunächst seitens des Herstellers vorhanden. Dies enthält seitens der Hersteller auch den
  • App Store. Sehr verbreitet ist hier der Google Play Store. Es gibt jedoch auch weitere. Besonders möchte ich hier F-Droid nennen.

Flashen

Das Flashen (Neu bespielen des Speichers) selbst will gut vorbereitet sein und passiert bei allen Geräten mit ähnlichen/gleichen Vorgehensweisen.

  • Datensicherung (Backup) des bestehenden Geräts
  • Entsperren des Bootloaders
  • Aufspielen der Recovery-Partition
  • Aufspielen des neuen Systems (Custom ROM)
  • evtl. Aufspielen von OpenGApps
  • Einrichten und Einstellen des Systems (evtl. mit Hilfe des Backups)

Resultat

Als Ergebnis haben gibt es normaler Weise ein schnelles System ohne zusätzliche Apps des Herstellers oder Anbieters. Es kann zudem viele Einstellungen ermöglichen, die vorher Originalsystem nicht vorhanden waren.

openSUSE

Auf einer SAP Teched war ich an einem SUSE Linux Stand vorbei gegangen. Die Unterhaltung mit den Ausstellern hat mich dazu gebracht,  ein openSUSE Linux zu installieren.

Auswahl der Version

Die Wahl fiel auf opensuse LEAP. Für die Installation selbst wählte ich einen KDE Desktop aus. Die Installation selbst läuft problemlos mit dem grafischen Installer und YaST.

Später war ich auf von der Version LEAP auf die Rolling Release Version Tumbleweed umgestiegen. Der Vorteil sind neuere (aktuellere) Softwarepakete und eine ausreichende Stabilität.

Man bekommt bei openSUSE ein SUSE Linux Enterprise Linux ohne den normalerweise für produktive SAP-Systeme notwendigen Enterprise Support. Das System ist sehr stabil. Selbst im Rolling Release Tumbleweed gab es bei mir bisher keine Ausfälle. Die von SUSE herausgegebenen Sicherheitsupdates waren alle problemlos.

Linux System

Herausragend sind die Möglichkeiten von YaST (Yet another Setup Tool). Die Einrichtung von (Netzwerk-) Druckern ist einfach. Aufgefallen waren mir fertige installierbare Unterstützungspakete, z.B. Zusatzsoftware für die Installation von SAP Servern. Systemeinstellungen – wie Softwareinstallation, Server- und Firewall-Konfiguration und noch viel mehr – lassen sich von einer Anwendung aus machen. Selbst ein RAID Laufwerk lässt sich grafisch herstellen. Dies können andere Distributionen nicht so einfach.

Geht es allerdings tiefer in die Konfiguration, sind die Möglichkeiten der grafischen Tools natürlich irgendwann erschöpft. Dann bleibt immer noch die manuelle Anpassung der Einstellungen wie bei anderen Systemen. Die Online-Dokumentation für SUSE ist ebenfalls nicht schlecht.

Zusammenfassend lässt sich sagen, dass openSUSE eine stabile Distribution ist. Sie ist mit YaST einfach konfigurierbar. Die KDE Oberfläche mit Tumbleweed läuft bei mir auf dem Desktop Rechner.

CyanogenMod

Auch bei Mobiltelefonen war ich zuerst wegen nicht installierbarer Sprachpakete darauf gekommen, die Software mit einem freien Betriebssystem zu flashen. CyanogenMod ist das am weitesten verbreitete CustomMod (freies Betriebssystem). Es eröffnet viele Möglichkeiten …

Bitte beachten: Die hier aufgeführten Aktionen führen zum Verlust der Herstellergarantie. Ich bin nicht verantwortlich für defekte Geräte, tote SD-Karten oder den Verlust Ihres Arbeitsplatzes, weil die Wecker-App nicht mehr funktioniert. Bitte forschen Sie selbst ein wenig nach, bevor Sie Ihr Gerät mit der hier beschriebenen Software bespielen. Es ist Ihre Entscheidung!

Zuerst sollte man sich versichern, ob das jeweilige Gerät offiziell von CyanogenMod unterstützt wird. Es gibt zwar inoffiziell unterstützte Gräte, solche würde ich jedoch nur aus zwingenden Gründen flashen. Aus Erfahrung kann ich sagen, dass die Software am besten mit den Google Geräten funktioniert.

Wie bereits beschrieben, sollte man zuerst ein Backup des Gerätes machen. Dazu gibt es Apps im Google Play Store welche auch ohne Root Zugriff funktionieren. Alternativ liesen sich später bei Google gesicherte Daten und installierte Google Play Store Apps bei Verwendung von Open GApps wieder herstellen.

Die Bootloader Sperre ist eine Limitierung des jeweiligen Geräteherstellers. Das Entsperren des Bootloaders je nach Gerät einfacher oder schwieriger (z.B. bei HTC). Generell benötigt man dazu einen Rechner mit funktionierendem fastboot und adb. Durch das Einschalten der Entwickleroptionen im Gerät (-→ Einstellungen → Über das Telefon → 7 mal auf Build-Nummer drücken ) kann man dort das USB-Debugging aktivieren. Spätestens jetzt sollte man die bestehenden Daten auf dem Gerät gesichert haben oder noch sichern.

Mit dem Befehl
$ adb reboot bootloader

lädt das Gerät in einen speziellen Modus: fastboot. Dort spielt man eine neue Recovery auf das Gerät. Dieses Minibetriebssystem dient als Basis zum Einspielen der CyanogenMod Software und eventuell zur Wiederherstellung von späteren Backups. Android Geräte verfügen bereits seitens des Herstellers über ein Recovery. Ich empfehle TWRP. Mit dem Befehl
$ fastboot devices

lässt sich feststellen, ob das am Rechner angeschlossene Android erkannt wird. Mit
$ fastboot flash recovery recovery_image.img

wird die neue Recovery geflasht. Das Gerät ist bereit zum Einspielen von CyanogenMod.

Dazu lädt man das CyangenMod Paket für das jeweilige Gerät und überprüft die Integrität des Downloads, z.B. mit openssh:
$ sha1sum ./filename.zip

Mit
$ adb push filename.zip /sdcard/

wird dasPaket auf das Android Gerät übertragen und dort mit der Recovery aufgespielt. Ergebnis: ein freies Gerät ohne Daten.

Damit man weiter Google Apps benutzen kann muss noch das OpenGApps Paket auf das Gerät gespielt werden. Je nach Bedarf lassen sich dort Pakete vom „absolutem Minimum“ (pico) bis zu allen Google Apps (super) auswählen. Zu Beginn könnte man das micro Paket wählen und weitere Anwendungen manuell nachinstallieren. Die zip Datei wird auf das Gerät geladen und dann mit der Recovery geflasht.

Ein weiterer App Store ist F-Droid. Der App Store enthält freie Software Pakete. Es sind dort auch Apps erhältlich, die ebenso im Google Play Store angeboten werden, oft mit weniger Berechtigungsanfragen und ohne Kosten.