23.06.2017

LineageOS 14.1 auf dem LG G4 (H815)

Die beste Ehefrau von allen wollte ein anderes Handy haben. Also hab ich mich auf die Suche gemacht mit den üblichen Auswahlkritieren, die ein paranoider Mensch halt so hat: es muss ein Custom-ROM unterstützen, das absehbar länger noch Updates bekommt. Die Alternative wäre ein aktuelles Google-Modell gewesen, also die letzte Generation Nexus oder eben ein Pixel. Nexus 5X oder 6 wären ok gewesen, das 6P und die Pixel-Varianten sind (noch) zu teuer.

In die engere Wahl kamen Motorola G4 Plus (ich bin mit meinem Moto G "falcon" der 1. Generation als Handy für die Firmen-SIM-Karte immer noch sehr zufrieden), Nexus 5X, Nexus 6 und in letzter Minute LG G4.

Wie man aus der Überschrift erkennen kann, ist es das LG G4 geworden. Das Motorola ist in der gewünschten Farbe und Speicherausstattung nur sehr schwer zu bekommen (32 GB weiß), das Nexus 6 wurde in der Hosentasche getestet und für zu groß befunden, und dann war es eigentlich eher Zufall, dass es nicht das Nexus 5X geworden ist.

Die Ausstattung ist ziemlich gut: 32 GB Speicher, 16 MP-Kamera und ein Bildschirm mit 2560x1440. Dazu 3 GB Arbeitsspeicher, eine Snapdragon 808-CPU mit 2 schnellen Kernen mit 1.8 GHz, 4 etwas langsameren mit 1.4 GHz und dazu ein Adreno-Grafikchip 418. Ich machte zuerst einen halbherzigen Versuch, das Original-Android von LG auszuprobieren. Aber nach der Grundeinrichtung stellte ich fest: die Icons sehen hässlich aus und Version 6.0 mit dem Security-Level Juli 2016 sind nicht akzeptabel. Also zack! Entsperren und LineageOS drauf. Etwas gewöhnungsbedürftig ist beim ersten Mal, dass der Einschaltknopf und die Lautstärketasten auf der Rückseite unter der Kameralinse liegen. Aber das ist gar nicht mal so unpraktisch, wie es sich zuerst anhört.

Installation von Custom-ROMs ist ähnlich umständlich wie beim Moto G: man muss auf einer Website die IMEI-Nummer und einen Gerätecode eingeben, den man im fastboot-Menü des Geräts abfragen muss, sich mit einer Emailadresse registrieren und dann bekommt man eine Binärdatei zugeschickt, die mit dem fastboot-Programm in einen speziellen Speicherbereich "unlock" des Geräts geflasht werden muss. Das Flashen ist aber auch erst möglich, wenn man den Entwicklermodus freigeschaltet hat und dann im dortigen Menü das Entsperren erlaubt hat. Dabei muss man mehrfach abnicken, dass man auf die Garantie verzichtet. Nicht weiter schlimm, das Gerät war sowieso schon knapp 'raus aus der Herstellergarantie.

Achtung: beim Unlock wird das Gerät komplett gelöscht, genau wie bei den Nexus-Geräten. Man sollte diesen Schritt also entweder sofort nach dem Kauf durchführen oder nach einem Backup aller Lieblingsdaten.

Ziemlich cool gelöst: wenn der Windows-PC, an dem man das G4 zum Entsperren anschließt, die USB-Treiber noch nicht installiert hat, mutiert das G4 für kurze Zeit zu einem CD-Laufwerk am USB-Port und Windows kann sich die MSI-Datei direkt vom Gerät holen. Nach der Installation verwandelt sich das G4 wieder zurück in das übliche MTP-Gerät. Auf dem einen verbliebenen Windows-PC in unserem Haushalt (mit Windows 7) ging das problemlos.

Die Installation von TWRP geht problemlos, die Anleitung auf twrp.me ist eine einfach geschriebene Schritt-für-Schritt-Anleitung. In einem ersten Schritt wird das Image von TWRP verwendet, um in das Recovery zu booten. Danach muss man dasselbe Image nochmals mit "adb push" auf das Gerät schieben und mit der Option "Image" ins Recovery flashen. TWRP empfiehlt, an dieser Stelle, nochmals das alte Android zu booten, um zu testen, dass das Recovery korrekt installiert wurde.

Allerdings dauert dieser Schritt recht lang, denn - wie oben bereits erwähnt - wird das Gerät komplett gelöscht und durchläuft damit erneut die Grundeinrichtung. Man muss erneut die Debugoptionen freischalten, den Key des PCs für den adb-Zugang erlauben und dann kann man erneut mit "adb reboot recovery" ins TWRP booten.

Nun ist es soweit: ein aktuelles LineageOS-zip und die (arm64!) OpenGApps mit "adb push datei /sdcard" auf das Gerät verfrachten, "Wipe" und danach "Install" aufrufen und die beiden zip-Dateien in einem Rutsch flashen. Wer möchte, kann auch gleich die root-Freischaltung durchführen und das entsprechende Extrapaket von LineageOS flashen, aber das muss jeder für sich selbst entscheiden. Pokémon z.B. droht immer mal wieder, gerootete Geräte vom Spiel auszuschließen. Auf jeden Fall ist es wichtig, Android und Google Apps direkt hintereinander zu flashen. Nur beim allerersten Systemstart bekommen die System-Apps alle Berechtigungen, die sie benötigen. Wenn man Android bootet und die Google Apps erst später in einem zweiten Durchlauf im Recovery flashen will, geht das schief.

Kleiner Fallstrick: die Open GApps werden als 64-Bit-Paket benötigt, also beim Download aufpassen, "ARM64" und die gewünschte Variante auszuwählen. Ich bevorzuge immer die "pico"-Variante, die nur den Play Store enthält. Alles weitere will ich mir einzeln aussuchen, auch wenn es dann den allgemeinen Speicher belastet und nicht in die Systempartition gespeichert wird. Natürlich kann man ein Handy auch komplett ohne Google betreiben, wie z.B. die c't beschreibt. Dann muss man sich halt einen alternativen App Store und Apps aussuchen, aber es gibt außerhalb von Google genügend Auswahl.

16.06.2017

Nerviges beim Autofahren - 3

Vielen Dank, dass Sie wieder eingeschaltet haben! Dann haben Teil 1 und Teil 2 meines Gemeckers Sie also nicht abschrecken können.

Auch im dritten Teil schreibe ich über Beobachtungen auf der Autobahn, dann gibt es einen Wechsel zum Thema Beschleunigungsrennen an Ampeln, und zum Schluss noch ganz zwangslos ein bißchen Gemecker über schlechtes Parken.

Am Bad Homburger Kreuz abends auf der Heimfahrt von Frankfurt sehr schön zu beobachten ist eine weitere schlechte Angewohnheit: auf der äußersten linken Spur fahren und erst im allerletzten Moment nach ganz rechts auf die Spur zur Ausfahrt wechseln. Das bringt natürlich extreme Unruhe in sämtliche anderen Fahrspuren und die Stockungen pflanzen sich kilometerweit nach hinten fort. Dieses Verhalten passiert gefühlt am Häufigsten bei großen Limousinen, die generell denken, dass sie die linke Spur für sich gepachtet haben.

Generell fällt mir auf, dass der Verkehr rund um Zubringer, Auf- und Abfahrten ganz schlecht läuft. Die meisten Staus sind kurz davor bis einiges danach. Ich denke, das liegt an den vielen Spurwechslern, die sich einbilden, dass sie schneller vorankommen, wenn sie dauernd hin- und her wechseln, und an den Fahrern, die meinen, sie müssten nach links wechseln, um Platz zu machen und die von rechts "reinzulassen". Dabei ist wissenschaftlich nachgewiesen, dass der Verkehr wesentlich flüssiger läuft, wenn man so weit wie möglich auf der eigenen Spur bleibt. Ganz besonders brutal ist es, wenn die LKWs alle eine Spur nach links rutschen, damit die LKWs vom Beschleunigungsstreifen auf die Autobahn wechseln können. Genauso vollautomatisch wechseln dann alle PKW ebenfalls eine Spur nach links, um die LKWs zu überholen, und schon haben wir die gesamte Autobahn effektiv ausgebremst auf ein Tempo von ca. 90-110 km/h. Sinnvoll wäre eigentlich, im Reißverschlussverfahren etwas mehr Sicherheitsabstand zu lassen und die Zufahrenden einfädeln zu lassen.

Reißverschlussverfahren funktioniert generell sehr schlecht. Es hat sich auch nach 50 Jahren und mehreren Gesetzesänderungen nicht herumgesprochen, dass es Pflicht ist, jede Spur bis zu ihrem Ende möglichst lange zu befahren und dann kurz vor dem Hindernis einzufädeln. Wenn jeder den Sicherheitsabstand einhält, flutscht das ganz wunderbar. Die meisten Autofahrer haben aber ein Ego-Problem und, anstatt das Einfädeln zu ermöglichen, fahren ganz besonders dicht auf ihren Vordermann auf, damit sie ihre Position in der Schlange beibehalten können. Das wird verschärft dadurch, dass viele Fahrer schon sehr früh die Spur wechseln und dann das Gefühl bekommen, dass jeder andere, der dann noch überholt, sie übervorteilt.

Gelegentlich gibt es auch Leute, die ein Wettrennen veranstalten wollen, das ist eine ganz blöde Idee. Autofahren ist kein Wettbewerb. Manchmal erlebe ich Fahrer, die zum Überholen ansetzen, in ihrem eigenen Tempo überholen, wieder nach rechts fahren, und wenn sie dann merken, dass man nicht hinter ihnen einschert, Gas geben, um bloß nicht überholt zu werden. Ist das das heutige Äquivalent der Imponiergebärden aus unserer Primatenvergangenheit? Dahinter steckt wohl dieselbe Mentalität wie beim (nicht-)Einfädeln-lassen.

Wettrennen beobachte ich auch öfters mal an Kreuzungen, wenn dort für ein paar hundert Meter zweispurig ausgebaut ist, und hinter der Kreuzung die beiden Fahrspuren dann wieder vereinigt werden. Gedacht ist das eigentlich zum Überholen von LKWs, landwirtschaftlichen Fahrzeugen usw., wird aber oft auch zum Aufpolieren des Egos genutzt, was dann hinter der Kreuzung auch mal zu gefährlichen Situationen führt, wenn der Überholende sein Auto überschätzt hat (oder das andere unterschätzt, oder beides) und das Einscheren knapper ausfällt als geplant.

Weg von der Autobahn und dem Fahren, hin zum stehenden Verkehr: Parkplätze sind ja generell immer zu wenige da und wenn, dann extrem klein. Autofahrer, die dann rücksichtslos parken, schräg, oder zu nah an der Linie, oder die auf dem Gehweg parken, auch wenn es nicht eingezeichnet ist, liebe ich auch ganz besonders.

Eigentlich gibt es beim Parken eine ganz schlichte Regel: man darf nur auf dem Gehweg parken, wenn es mit weißen Linien gekennzeichnet ist. Die meisten Autofahrer (und auch -innen) sind aber beim Parken immer noch gedanklich Autofahrer und nicht Fußgänger. Sie parken also so, dass sie nach ihrer Meinung den Autoverkehr nicht behindern. Dabei sollten sie eigentlich so parken, dass die Fußgänger nicht behindert werden!

Lustige Anekdote zwischendrin: ich habe mal für meine Firma längere Zeit in der Schweiz gearbeitet (in Zürich, also fast deutschsprachig) und war fasziniert davon, dass die Schweizer ein etwas anderes Vokabular verwenden. Dort wird ein Auto "parkiert" und nicht "geparkt". Übrigens dasselbe beim Grillen: die Schweizer "grillieren", und ein Arbeitskollege war ganz stolz darauf, dass er beim Kurs des örtlichen Metzgermeisters ein "Grillier-Diplom" bekam. Und wenn in der Schweiz jemand umzieht, dann braucht er einen Möbelwagen zum "Zügeln" (umziehen), der auch irgendwo parkieren muss ;-).

Die (fehlende) Rücksichtnahme auf Fußgänger sehe ich auch sehr häufig vor der Praxis meiner Frau: wir liegen an einem abgerundeten Eckgrundstück, und direkt auf der Ecke ist ein Stromverteilerkasten, der den Gehweg schon ein Stück enger macht, und dann gibt es ganz bequeme Menschen, die genau dort in der Kurve auf dem Gehweg genau vor dem Stromkasten parken. Da kann sich dann ein normaler Mensch durchquetschen, aber kein Kinderwagen oder ein Fußgänger mit Rollator. Manchmal gehe ich dann in die Praxis und frage, wem das Auto auf dem Gehweg gehört und nicht selten bekomme ich entweder eine patzige Antwort oder die üblichen Ausflüchte wie "nur ganz schnell ein Medikament abholen" oder "sonst war kein Parkplatz mehr frei". Dabei ist immer die Hofeinfahrt offen und im Hof steht sogar ein blaues "P"-Schild.



Schön sind auch immer wieder die gedankenlosen Autofahrer, die denken, dass die Markierungen die Mitte des Autos anzeigen.

13.06.2017

Flash-Update auf Version 26

Mir fehlen langsam die Worte, wie die Versionsnummern inflationär in Höhen klettern. Google hat es mit Chrome vorgemacht, aus irgendwelchen Gründen macht es Mozilla mit Firefox und Thunderbird nach, und jetzt beschleunigt Adobe die Nummerierung des Flashplayers genauso.

Und weil mir die neuen Worte fehlen, nehme ich immer den alten Blogartikel, nur die Versionsnummern und die Links ändern sich ;)

Einen Hinweis muss ich aber nun doch noch einbauen: ab Ende Januar 2016 gibt  es keine freien Downloads der Installationsdateien mehr. Genaue Modalitäten sind noch nicht bekannt, Adobe hat nur bekannt gegeben, dass die Downloadlinks über die "distribution3.html"-Seite nicht mehr zur Verfügung stehen werden und man eine Adobe-ID und eine Business-Lizenz benötige.

Wir sind jetzt schon bei Flash-Version 26 (mittlerweile zählt wohl auch ein Major release nicht mehr zu den besonders erwähnenswerten Ereignissen bei Adobe?). Wer sich selbst auf dem Laufenden halten will, kann das Blog des Security-Teams bei Adobe lesen oder als RSS abonnieren.

Wie üblich in ihrem freundlichen Service-Blog die passende Automation zum Herunterladen und Installieren. Falls ein Proxy verwendet wird, das "rem" bzw. "#" entfernen und eigene Proxy-Adresse eintragen.

Das Tool wget wird bei Windows noch benötigt wie hier beschrieben. Bei Linux sollte es schon vorhanden sein, da es von vielen anderen Programmen intern verwendet wird.

Für Windows wie üblich beide Varianten, ActiveX und Netscape Plugin (Achtung übrigens, Firefox wird demnächst das NPAPI komplett abschaffen - mal sehen, was Adobe und Flash dann machen).

Die Download-URL hat sich übrigens im Vergleich zu Version 23 leicht geändert, sowohl bei Windows als auch bei Linux.
@echo off
rem set https_proxy=http://192.168.100.100:3128/
set VNP=26.0.0.151
set VAX=26.0.0.151
set V=26
set H=fpdownload.adobe.com
set P=/get/flashplayer/pdc
set AX=install_flash_player_ax.exe
set NP=install_flash_player.exe
wget https://%H%%P%/%VAX%/%AX% -O flash-%VAX%_ax.exe
.\flash-%VAX%_ax -install
wget https://%H%%P%/%VNP%/%NP% -O flash-%VNP%_np.exe
.\flash-%VNP%_np -install
Für Linux 64 bit rpm (als root ausführen oder "sudo rpm" schreiben) gibt es jetzt auch wieder offiziell dieselbe Version 25 wie für Windows. Eine Zeitlang war Flash für Linux bei Version 11.2 "eingefroren", Adobe hat es sich nun anders überlegt und liefert wieder, obwohl die Zeichen generell auf Untergang stehen - in Google Chrome ist Flash gar nicht mehr enthalten, und die anderen Browser-Hersteller wechseln auf Multimedia in HTML5 statt Flash. Es gäbe auch die Version "PPAPI" zum Herunterladen, das ist die Pluginvariante "Pepper" für das Google-API, ich gebe hier "NPAPI" für das Firefox-API im Skript an.
#!/bin/sh

# https_proxy=http://192.168.100.100:3128/

VL=
26.0.0.151
H=fpdownload.adobe.com
PL=/get/flashplayer/pdc/${VL}

DL() { wget -N "$1/$2" -O "$3"; }

echo Linux 64 bit rpm ...
DL https://${H}${PL} \
   flash-player-npapi-${VL}-release.x86_64.rpm \
   flash-${VL}.x86_64.rpm
rpm -F --force flash-${VL}.x86_64.rpm
Der Filename für die 32bit-Variante ist "flash-player-npapi-${VL}-release.i386.rpm".

[20170613: Security Bulletin von Adobe]
[20170711: Security Bulletin von Adobe]
[20170814: Security Bulletin von Adobe]