Hardware und Software
neuere Einträge ...Jolla: Überraschung am 19.11.
Jolla hat heute einen recht unauffälligen Tweet abgesetzt:
The countdown to something big begins now. Sign up at http://jolla.com #jolla #unlike
Gleichzeitig ging auf jolla.com ein Counter online, der die Tage und Stunden bis zum 19.11. runterzählt. Auf dem dazugehörigen Bild ist nicht viel zu erkennen. Es soll wohl ein flaches Stück Technik darstellen … Aha.
Da erinnert man sich doch an den Tweet vom 30. September, kurz nach der Jolla Sommerpause:
Jolla people gathered together to create something new. #jolla #community
Das Foto damals war eine Weitwinkel-Aufnahme eines großen Raums voller eifrig hackender Segler. Ich bin mir 100%ig sicher, daß dieser Eintrag vom September und der von heute den gleichen Hintergrund haben. Ich kann mich auch noch erinnern, daß Marc Dillon in einem Interview von „großen Plänen für den Herbst“ gesprochen hat. (Leider finde ich die Quelle dafür grad nicht mehr.)
Was heißt das jetzt alles? Nur eins ist sicher: Jolla nimmt auch heuer wieder an der genau zu diesem Zeitpunkt stattfindenden Slush-Konferenz teil, einem Treffpunkt für junge Unternehmen und Investoren. Die Verbindung zwischen Slush und Jolla ist eng: 2012 hat Jolla sein Sailfish-Betriebssystem auf einer Slush-Bühne zum ersten mal der Öffentlichkeit vorgestellt. Bei Slush 2013 haben DNA und Jolla gemeinsam den Verkaufsstart des Telefons bekanntgegeben. Für heuer kündigt die Slush-Homepage eine Rede von Marc Dillon am - Trommelwirbel - 19.11. um 10:35 (das ist 9:35 unserer Zeit) an. Das paßt von Datum und Uhrzeit her exakt zum Countdown auf der Jolla-Seite. Marc wird uns also etwas Neues zu berichten haben. Aber was?
Natürlich wird im Netz derzeit heftigst spekuliert. Ich wär auf diese Dinge gar nicht alle gekommen. Also, eine Liste von Gerüchten, die ich bisher gefunden habe, ohne Anspruch auf Vollständigkeit:
- Jolla stellt eine „Other Half“ mit einer grenzgenialen Funktion vor, an die bisher keiner gedacht hat.
- Es gibt bereits jetzt ein Nachfolgemodell für das Jolla Phone. (Dafür würde die Gutscheinaktion der letzten Tage sprechen, die viele als „das Lager für die neue Ware räumen“ verstanden haben.)
- Die Ankündigung
something big
ist wörtlich zu nehmen und es wird ein Tablet. (Diese Vermutung wird von einem Blog-Eintrag gestützt, den Jollas Chefdesigner Jaakko Roppola vor einem Monat über die Anpassung der Sailfish-Benutzeroberfläche auf größere Bildschirme geschrieben hat.) - Jolla wird von einem deutlich größeren Unternehmen aufgekauft, das in Zukunft Sailfish-Produkte verkaufen wird. (Der Name Nokia ist gefallen, offenbar in Zusammenhang mit den Gerüchten, daß Nokia wieder auf den Handy-Markt zurück will.)
- Jolla kauft Nokia.
- Etwas aus der im Moment so modernen Kategorie „wearable Computing“, eine Smartwatch also oder etwas in der Art. Carsten Munk von Jolla hat das Thema bereits im April auf together.jolla.com aufgebracht.
- Ein Hardware-Partner ist eingestiegen und wird parallel zu Jolla eigene Sailfish-Telefone vermarkten. (Dazu würde passen, daß die Portierung von Sailfish auf diverse Android Geräte sowie die Entwicklung des Jolla-Launchers für Android seit Beginn des Sommers mehrfach Zeitplan und Fokus geändert haben - mit der Begründung „geänderte Prioritäten und Rahmenbedingungen in diesem Bereich“.)
- Es gibt nochmals eine große Überarbeitung des Betriebssystems. (Tatsächlich ist ja ein Update für Ende November bereits angekündigt.)
Wünschen würd ich mir ein Tablet. Nach dem vorzeitigen Ende des Vivaldi-Projekts fehlt so etwas auf dem Markt. Ich versuche auch, weitere Puzzlesteine zu finden, die zur Tablet-Variante passen. So wurde im Rahmen der Ankündigung fürs nächste Betriebssystem-Update nebenbei erwähnt, daß Entwickler ihre bisher pixelbasierenden Icons in Zukunft auf ein auflösungsunabhängiges Vektor-Format umstellen müssen. Das ist nur sinnvoll, wenn neue Hardware mit einem anderen Bildschirm kommt … was aber natürlich genauso ein zukünftiges Telefon mit höherer Auflösung sein kann. Gegen das Tablet spricht, daß sich Jolla damit wirklich sehr, sehr weit aus dem Fenster lehnen würde. Ein Smartphone (inlusive Betriebssystem und SDK) mit 80 Mann aus dem Boden zu stampfen und zu verkaufen war schon eine unglaubliche Leistung. Das gleiche nochmal auf einem völlig neuen Markt zu versuchen … ich weiß nicht.
So sitz ich also bis Mittwoch vor dem PC, starre auf den Countdown und laß mich überraschen. Marc Dillon wird eine Rede halten, das allein ist schon ein Grund, sich zu freuen. Der kann das nämlich. :)
PS: Auch Dirk van Leersum ist mit seinem Unternehmen („Funky Other Half“) bei Slush 2014 vertreten - und ich nehme mal an nicht als Investor. Auf der Slush-Website hat er eine Zeile, um sich vorzustellen. Sie lautet: Improving funkiness of Jolla phones
. *LOL*
Mitakuuluu oder: Warum WhatsApp böse ist
Im letzten Jahrtausend wurde das Internet erfolgreich als „Netz der Netze“. Erstmals gab es mit TCP/IP eine Technologie, auf die jeder aufsetzen konnte und die alle Anwender und Services gleichberechtigt miteinander verband. Ob der Benutzer dabei an einem IBM PC, einem Apple oder einem UNIX-Terminal saß, war dabei ebenso bedeutungslos wie seine Software: Die Standards waren offen und konnten auf jedem Computer implementiert werden.
Diese Zeiten sind vorbei. Die Börse hat die Kontrolle übernommen und bestimmt, wer wem was sagen darf im Internet. Noch schlimmer: Millionen Lemminge machen mit und lassen sich kontrollieren. Jüngstes Beispiel für diese Gängelung und die Unfähigkeit des Konsumenten, sich daraus zu befreien: Der Umgang des US-amerikanische Instant-Messaging-Dienstes WhatsApp (der zu Facebook gehört) mit Jolla-Besitzern. WhatsApp zerreißt das Netz und läßt diese Benutzergruppe isoliert zurück.
Zur Vorgeschichte: WhatsApp macht im Prinzip, was auch SMS und MMS machen. Es verschickt Textnachrichten und Medieninhalte. Aus irgendeinem Grund wurde es irgendwann „cooler“ als der bewährte SMS-Dienst der Telefongesellschaften. (Daß früher SMS-Nachrichten einzeln abgerechnet und um Gegensatz zu heute nicht in –zigtausender-Paketen verschenkt wurden, mag eine Rolle gespielt haben.) Nicht bei WhatsApp zu sein wurde zum sozialen Problem auf den Schulhöfen und bei Admiral Sportwetten. Jeder stieg ein. Dabei hat der Dienst gegenüber SMS/MMS durchaus gravierende Nachteile: Wenn die WhatsApp-Server wieder einmal stehen, geht weltweit gar nichts mehr. Eine dringende SMS dagegen kann man auch über das geliehene Telefon des Arbeitskollegen absetzen, wenn die SMS-Zentrale der eigenen Telefongesellschaft nicht funktioniert. Außerdem saugt WhatsApp alle Kontaktdaten aus den Handys seiner Kunden ab, um sie mit bereits registrierten Benutzerkonten abzugleichen. Mein Name und meine Telefonnummer liegen also auf deren Server in Amerika, nur weil für Menschen in meinem Umfeld Datenschutz ein Fremdwort ist. Sehr fein. :(
Warum aber macht WhatsApp das Internet kaputt? Der Mißbrauch persönlicher Daten und der single point of failure sinds gar nicht in erster Linie. Wirklich gefährlich ist, daß WhatsApp sich die Kontrolle darüber vorbehält, welche Programme auf den Endgeräten der Benutzer zum Einsatz kommen. Es gibt keine dokumentierte Schnittstelle, an der ein gelangweilter Programmierer offiziell andocken darf. WhatsApp baut seine Software allein bzw. bestimmt, welches Partnerunternehmen die für die Entwicklung notwendigen Informationen erhält. Damit schränkt der Dienstanbieter nicht nur die Software-Auswahl erheblich ein, er bestimmt indirekt auch mit, welches Betriebssystem seine Kunden verwenden dürfen. Wer dem sozialen Druck folgen und über WhatsApp chatten möchte, bleibt in der Welt der großen Hersteller und Mainstream-Betriebssysteme gefangen. Das ist auch ganz unverblümt in den AGB festgelegt: Die Nutzung eines nicht autorisierten Programms von Drittanbietern ist untersagt.
Hier sind wir nun am Ende der Kette angelangt, an dem Benutzer von Nischenprodukten wie dem Jolla Phone auf unerfreuliche Art und Weise betroffen sind: Natürlich entwickelt WhatsApp noch keinen eigenen Client für diesen Markt. Natürlich hat sich auch schnell ein schlauer Programmierer gefunden, der alle inoffiziell verfügbaren Informationen zusammengesammelt und ein WhatsApp-Programm für das Jolla-Phone geschrieben hat. Andrey Kozhevnikov war das, und sein beliebtes „Mitakuuluu“ war bereits kurz nach dem Marktstart von Jolla eines der am häufigsten genutzten Programme im kleinen Ökosystem. Was ist jetzt passiert? WhatsApp vor einigen Tagen begonnen, die Konten der Jolla-Besitzer zu deaktivieren, die mit ihrem Telefon auf WhatsApp aktiv waren. (Manche Betroffene schreiben, daß die Deaktivierung tatsächlich endgültig ist und auch nach mehrmaligen Interventionen beim Kundenservice nicht rückgängig gemacht wird.) Der US-Konzern nutzt seine Marktmacht und bestraft seine Kunden für die Nutzung eines nicht genehmen europäischen Telefons mit sozialer Isolation.
In letzter Konsequenz bedeutet das: Das Internet ist nicht mehr das „Netz der Netze“. Es verbindet nicht mehr alle Anwender und Services gleichberechtigt miteinander. WhatsApp hat die Kabel durchtrennt, so wie andere Dienste (Facebook, Twitter,…) das in ihren jeweiligen Märkten auch tun. Wirklich schlimm dabei ist: Es gibt technisch gesehen absolut keinen Grund, WhatsApp zu verwenden. Sowohl auf IP-Basis als auch im guten alten Telefonnetz gibt es genügend teils bessere Alternativen: SMS und MMS sowieso, dazu XMPP als standardisiertes und offenes Protokoll, mit dem ich auch jederzeit den Anbieter wechseln kann. Es gibt eine einzige Rechtfertigung, die Menschen für die Nutzung von WhatsApp angeben: „Aber alle meine Freunde verwenden es!“ Ja, eh. Und alle Deine Freunde werden es weiter verwenden, solange sie Dich damit problemlos erreichen. Es ist nicht genug, nur im Prinzip dagegen zu sein, in der Praxis dann aber aus Opportunismus mit dem Strom zu schwimmen. Jeder einzelne Kontakt, den neue WhatsApp-User in diesem Service finden, ist ein Argument für WhatsApp. Ich möchte kein Argument für etwas sein, das mir mein Internet kaputt macht. Bei allen Services, die mit steigender Nutzerzahl immer attraktiver werden, ist man als Kunde auch mitverantwortlich für das, was sie anrichten. Aus dieser Verantwortung kann man sich nicht stehlen.
Meine Freunde erreiche ich immer noch auch SMS oder XMPP, selbst wenn sie meine Nachrichten dann für uncool halten. Damit kann ich leben. Mit einem kaputten Internet kann ich nicht leben. Dafür möchte ich keinesfalls mitverantwortlich sein.
TOHKBD: € 55.000,- für die Jolla-Tastatur
Die Kickstarter-Seite für die Tastatur mit dem schnittigen Namen „TOHKBD“ (The Other Half Keyboard) bietet jede Menge Infos über das geplante Produkt, vom exakten technischen Aufbau über den Produktionsablauf bis hin zu den verfügbaren Farben und Sprachvarianten. Das Team hat sogar die noch bis 10.11. verlängerte Gutschein-Aktion von Jolla für seine PR genutzt: Wer jetzt spendet, selbst aber noch kein Jolla Telefon besitzt, bekommt einen gültigen Gutscheincode und das Handy damit um volle € 100,- billiger.
Im besten Fall ist die Tastatur dann im April (!) 2015 lieferbar: So lange dauert es, bis die Zulieferer die Kleinserien abgewickelt haben und die Stücke zusammengebaut sind.
Ob sich unter diesen Umständen genügend Fans finden, die sich den seit Ewigkeiten geäußerten Wunsch nach einer Hardware-Tastatur auch etwas kosten lassen? Ich mein: € 55.000,- sind kein Pappenstiel, das muß erst mal zusammenkommen … und die Piraten haben nur bis zum 4. Dezember Zeit. Wenn bis dahin nicht alles beisammen ist, stirbt das Projekt.
Wollen wir nachsehen, wie's aussieht? Wollen wir uns den Zwischenstand ansehen? 4. November, 17:25 Uhr, erst gute vier Stunden nach dem Start der Sammlung, steht der Spendenzähler bei € 42.783,-! Bist. Du. Deppat. In Scheveningen (Dirk), Espoo (Kimmo) und Moskau (Andrew) knallen jetzt wohl schon die Sektkorken. Und ich bin ein kleines bißchen stolz auf die Segler in der Jolla-Community: Herumjammern und in Internet-Foren eine Hardware-Tatstatur vom Hersteller fordern kann jeder iBobo. Sie aber selbst zu entwerfen und mal so nebenbei an einem Nachmittag die Finanzierung in Höhe von -zigtausend Euro so gut wie sicherzustellen, dazu gehört schon was. Da wächst man nochmal um ein paar Zentimeter, wenn man stolz sagen kann: Ich ghör dazu. Ich bin einer von denen. Und ja, freilich hab ich auch eine Spendenzusage abgegeben. :)
Dirk, Andrew, Kimmo, ihr seiz coole Hund. Wir hören im April wieder voneinander! :)
Update: Um kurz vor 20:00 Uhr war das Ziel erreicht. Drei junge Jolla-Fans haben innerhalb von nicht einmal sieben Stunden € 55.000,- Startkapital aufgestellt. Ich sag nur: Wow!
Jolla: Mein erstes selbstgebackenes Programm
- Mann steigt per SSH ein und erledigt alles auf der Kommandozeile
- Mann schreibt Programme für das Ding
Auf der Kommandozeile arbeite ich längst, seit gestern hab ich auch den zweiten Punkt abgehakt. Ich bin stolzer Autor eines Programms für das Sailfish-Betriebssystem von Jolla!
Daß es so lange gedauert hat, lag an mangelnden Ideen. Ich wollt nicht schon wieder das Primzahlen-Programm bemühen, das ich vor Jahren für Symbian und das N900 geschrieben habe. Andererseits sollte es auch nicht gleich etwas Komplexes sein. Der rettende Einfall kam mir dann vor einigen Wochen beim Frühstück, als ich via Webcam nachgesehen habe, wie's denn wettertechnisch in Trassenheide aussieht. Zuerst hab ich alle vier Webcams durchgeklickt. Ja, es war sonnig - aber auch warm? Um das festzustellen, mußte ich den Browser verlassen und das Wetter-Programm aufruf-… Mooooment! Wie wärs, wenn man das alles auf einen Blick sieht? Alle vier Kamerabilder und die aktuellen Wetterdaten? Die Idee für das Programm war geboren.
Ein paar Wochen hab ich gebraucht, um mit mir selbst abzuklären, wie das Ding nun wirklich aussehen soll. Vor etwa einer Woche wars dann soweit: Ich hatte am Laptop von früher her noch den Qt-Creator (also die normale Version ohne die Jolla-Erweiterungen) installiert und hab mich mit ein paar Fingerübungen eingearbeitet. Wie funktioniert QML? Wie funktioniert das Zusammenspiel mit Javascript? Wie hole ich am besten Einzelteile aus einer Webseite, ohne daß das User Interface währenddessen einfriert?
Obwohl ich den Qt Creator als Entwicklungsumgebung noch gekannt habe (eben von den Primzahlen her), war QML mir neu - und meine letzte praktische Erfahrung mit Javascript ist 10 Jahre her. Da gabs also einiges zu lernen, allerdings sind die Dinge wirklich so simpel gestrickt, daß mir keine gröberen Probleme im Weg standen.
Während der Arbeitswoche war Pause, am vergangenen Wochenende wars dann soweit. Zuerst hab ich aus den einzelnen Fingerübungen ein halbwegs funktionsfähiges Programm in QML/Javascript gebaut, das noch ohne Jolla-Spezifika auskam. Danach (und das war überraschenderweise der einfachste Teil) hab ich die Jolla-Version des Qt-Creators runtergeladen, ein paar der für die Jolla-Oberfläche typischen Elemente hinzugefügt und - voilà! - es läuft, auch auf meinem Telefon.
Zusätzlich zu den vier Webcam-Bildern holt das Programm das Regenradar für die Region und Wetterdaten über die Yahoo!-API. Da ist also wirklich alles hübsch brav übersichtlich zusammengepackt.
Noch fehlen Kleinigkeiten: Ich muß noch ein Programmpaket erstellen, das man verteilen kann. (Derzeit kopiert der Qt-Creator die einzelnen Dateien aufs Telefon.) Ich möchte noch zwei, drei Funktionen hinzufügen. Dann aber, dann wärs endgültig fertig (sofern Software das jemals ist).
Und dann landets irgendwo in einem Ordner auf meiner Festplatte und wird nicht mehr angeschaut. Nicht nur, daß die Schnittmenge zwischen „Menschen mit Jolla Phone“ und „Menschen, die sich für das Wetter in Trassenheide interessieren“ eher klein sein dürfte … Der offiziellen Verteilung über den Jolla Store stehen auch rechtliche Gründe entgegen: Man darf ja heutzutag nichts mehr aus dem Netz fischen und verwenden. Die Bilder des Regenradars sind ausdrücklich geschützt, auch bei den Webcams müßte man nachfragen, ob man sie einfach so verwurschten darf. Ob sich der Aufwand dafür lohnt? :)
Ich segle auf Uitukka
Während der ZiB2 war die Installation dann beendet, und siehe da: Es läuft tatsächlich. Fast hickupfrei. :)
Mein einziger Stolperer war, daß das Karten-Programm nicht ebenfalls aktualisiert wurde. (Das sollte, soweit ich mitbekommen habe, über den Jolla Store passieren. Tats aber nicht.) Mit diesem Problem bin ich nicht allein, das geht einigen so. (Den meisten ist das wohl gar nicht bewußt.) Ich hab die Aktualisierung in diesem Fall über die Kommandozeile mit pkcon durchgeführt. Wo ein SSH-Client, da auch ein Weg. ;)
Der Browser ist flotter, die neuen Kartenansichten machen sich gut, die Suchfunktion in der Musikwiedergabe ist wunderbar gelöst, einige Vereinfachungen in der Accountverwaltung machen das Leben leichter und eine Reihe zusätzlicher Funktionen in der Systemsteuerung sind auch nicht zu verachten.
Alle Warnung bleiben gültig, vor allem sind es einzelne Drittprogramme, die mit den Neuerungen unter Qt 5.2 nicht immer zurecht kommen. (Tidings zum Beispiel verweigert die Ansicht von Webseiten direkt im Programm.) Unterm Strich find ich Uittukka aber durchaus gelungen. Es ist aus meiner Sicht mehr als nur ein Spielzeug bis zur nächsten stabilen Version.
€100,- billiger: Jolla Phone direkt vom Hersteller um €249,-
Jolla hat an seine Kunden Promotion-Gutscheine im Wert von € 100,- verschickt, die sie an Freunde und Bekannte weitergeben können. Bei mir bleibt dieser Gutschein ungenutzt liegen: Ich kenne niemanden, der nicht entweder schon mit einem (mehr oder weniger) smarten Phone versorgt ist oder sich bewußt für die „Ich will nur telefonieren!“-Variante entschieden hat. Erst recht bin ich der einzige in meinem Rudel, der sich in irgendeiner Weise für freie Software interessiert und Offenheit als Wert an sich begreift.
Deshalb hier an die anonyme Weltöffentlichkeit: Ich hab einen Gutschein, der auf shop.jolla.com einzulösen ist und mit dem man das € 349,- teure Telefon um € 249,- bekommt. Wer daran interessiert ist, möge sich über die im Impressum angegebene Mail-Adresse an mich wenden. :)
(Achtung: Der Gutschein gilt nur bis 2.11.2014 10.11.2014 (verlängert) und nur für Kunden in der EU, der Schweiz und Norwegen. Er kann nur für den Kauf eines Telefons verwendet werden, nicht für Zubehör.)
Jolla: Uitukka nur auf Bestellung
Uitukka ist auch eine Betriebssystem-Version von Jolla, die als „Update 9“ (Version 1.1.0.38) schon im September veröffentlicht werden sollte. „Update 9“ ist das anspruchsvollste seit der Markteinführung des Jolla-Phone: Der gesamte technische Unterbau wurde auf die neue Qt-Version 5.2 gehoben, das Schema für Versionsnummern entsprechend von 1.0.x auf 1.1.x geändert. (Wenn man den nebenbei im Netz gestreuten Informationen glauben darf, wird Qt 5.2 damit zum ersten Mal überhaupt auf einem kommerziellen Produkt eingesetzt.)
Gut einen Monat und 13 interne „Release Candidates“ später steht nun fest: Das wird nix mehr. Uitukka fällt aus, zum Download freigegeben wird erst wieder die nächste Version.
Im Prinzip.
Tatsächlich ist Uitukka seit heute verfügbar: Man kann sich bei Jolla anmelden, wenn man die aktuelle Arbeitsversion mit dem Stand 22.10.2014 tatsächlich unbedingt haben möchte. Rund 20-30 Minuten später soll man sie dann herunterladen können, heißt es. Risiko: Man kommt nicht mehr auf die Vorgängerversion zurück. Vor allem aber gibt es lästige Fehler im Speichermanagement der grundlegenden Qt-Komponenten, die der eigentliche Grund für die Nichtveröffentlichung sind. Sie führen dazu, daß das Telefon bei vollem Arbeitsspeicher deutlich zu ruckeln beginnt - unter Umständen bis zum nächsten Neustart, auch wenn Programme geschlossen werden.
Jolla rät normalen Kunden vom Update ab, empfiehlt es aber für Entwickler und risikofreudige Testuser. Entwickler sowieso: Die müssen ihre Programme „Qt-5.2-fit“ bekommen. Die Erfahrungen risikofreudige Benutzer können ins nächste reguläre Update einfließen.
Jetzt frag ich mich: Wer bin ich? Entwickler wohl kaum. Risikofreudiger Testuser? Eher neugieriger Testuser. ;) Rund 60 sichtbare neue Features warten im Update, außerdem etwa 260 Fehlerbehebungen. Auch wenn mich die Behebung eines Problems, das nur mit der russischen Spracheinstellung aufgetreten ist, nicht so wahnsinnig berührt, macht das alles in Summe schon neugierig. Soll ich? Soll ich nicht?
Für heute hab ichs mal bleiben lassen. Aber ich werde sehr genau verfolgen, welche Erfahrungen mutigere Sailors so machen. Wenn das in ein bis zwei Tagen gut aussieht, überleg ichs mir nochmal. Ruckeln darfs ruhig ein bißchen. Abstürzen sollts halt nicht. :)
Jolla: Die meistgenutzten Programme
Meine Top 10 Sailfish Anwendungen
- File Browser: gut gelöste Dateiverwaltung
- YTPlayer: YouTube-Client
- Screenshot: Artikel zum Jolla-Phone brauchen Screenshots :)
- Heebo: einfaches „drei Symbole pro Reihe“-Spiel mit Suchtpotential
- CodeReader: QR-Codes scannen
- Tidings: ein praktischer RSS-Reader
- IP Address: zeigt die IP-Adresse des Telefons; zwingend notwendig für den Zugriff per WLAN in dynamisch konfigurierten Netzen
- Memory: schneller Überblick über die Speicherbelegung (intern und SD-Karte)
- the Weather: hübsche Wetter-Applikation
- CitySailor: Abfahrtsmonitor für die Haltestellen der Wiener Linien
Meine Top 10 Android Anwendungen
- A1 TV: aktuelles TV-Programm und Inhalt der Videothek
- Flickr: einfacher Zugriff auf mein Flickr-Konto
- BAWAG-PSK: Telebanking
- Babbel: Sprachkurse für zwischendurch
- xkcdViewer: ein Leben ohne xkcd ist möglich, aber sinnlos
- Tumblr: abwechslungsreiche Bilder für die Taxifahrt
- Thalia: am Handy weiterlesen, wo man am Tolino eBook-Reader aufgehört hat
- Shazam: weil man sonst den Überblick verliert, was junge Menschen so hören
- Codecheck: was ist drin in den gekauften Produkten?
- Sandmann: weil der Sandmann einfach Kult ist
Sind das Empfehlungen? Nein. Nicht jeder nutzt A1 TV oder hat sich das Lesen im Web per RSS-Feeds angewöhnt. Aber es zeigt ein Muster. Würd mich interessieren, was die meistgenutzten Programme auf anderen (nicht notwendigerweise Jolla-) Handys sind.
SDXC-Karten am Jolla Phone
[Ich werde] mir eine SD-Karte fürs Telefon zulegen und Dateien in Zukunft dort statt im home-Verzeichnis speichern.
Gesagt, getan, ein Mann, ein Wort (widedidewitt bum bum). Auf der Mariahilfer Straße flanieren, SD-Karte kaufen … und ab ins Abenteuer. :)
SD-Karten, die Grundlagen
Zunächst muß man wissen: SD-Karte ist nicht SD-Karte. Abgesehen von den offensichtlichen Unterschieden im Format (SD, mini-SD und micro-SD) gibt es noch drei technische Spezifikationen:
- SD-Karten mit maximal 2GB Speicherkapazität
- SDHC-Karten mit maximal 32GB Speicherkapazität
- SDXC-Karten mit maximal 2TB Speicherkapazität (in der Praxis derzeit 128GB)
Die Unterschiede betreffen nicht nur die Speichergröße, sondern auch andere Teile der Spezifikation. Sie können zu unangenehmen Überraschungen führen, wenn man ein Karte eines Typs in einem Gerät nutzen möchte, das dafür nicht ausgelegt ist. Eine Grafik auf dieser Seite der SD Association stellt die Kompatibilitätsanforderungen dar:
SDXC am Jolla
Was bedeutet das konkret fürs Jolla-Phone? Von Jolla wissen wir, daß SD- und SDHC-Karten problemlos funktionieren, SDXC-Karten jedoch nicht. Was Arbeitsauftrag genug ist, ausgerechnet eine SDXC-Karte zu kaufen und herauszufinden, was da dahintersteckt. :)
Ich habe mich für eine Sandisk Ultra SDXC mit 64GB entschieden. Damit sollte ich auskommen, wenn ich bisher mit 16GB zufrieden war. Warum aber mag Jolla die SDXC-Karte nicht? Wenn man sie einlegt, passiert nichts. Sie wird nicht erkannt.
Die Lösung ist gottseidank ausschließlich im Bereich der Software zu finden: Laut Standard müssen SDXC-Karten das Dateisystem exFAT von Microsoft verwenden. Microsoft hat die Spezifikation dafür nie offengelegt, hat es durch Patente vermint und verlangt heftige Lizenzgebühren von Firmen, die es in ihren Produkten verwenden wollen. Heißt für Jolla: Die legale Verwendung von exFAT ist zu teuer, die Verbreitung der existierenden exFAT-Treiber für Linux am Jolla-Handy illegal.
Was aber heißt es für einen Jolla-Benutzer? Zunächst wäre es möglich, exFAT einfach nachzuinstallieren. Ich habe auf den Seiten des Mer-Projekts die Pakete exfat-utils und fuse-exfat für Sailfish OS gefunden, die auch auf meinen anderen GNU/Linux-Systemen für den Zugriff auf exFAT-Partitionen sorgen. Was mich davon abgehalten hat: Es gibt keine Erfahrungsberichte. Zwar gilt fuse-exfat an sich als stabil, aber wer weiß, ob gerade dieses Paket am Jolla Phone ausreichend getestet ist. Ich möchte bei einem Dateisystem möglichst nicht der erste sein, der durch Bugreports zur Weiterentwicklung beiträgt.
Möglichkeit zwei ist, die SDXC-Karte auf ein Dateisystemzu bringen, das der von Jolla verwendete Kernel von Haus aus versteht. Zur Auswahl stehen FAT32, ext4 und btrfs. Btrfs hat mich gerade erst in die Situation gebracht, daß ich eine SD-Karte brauche, also schließe ich es aus. (Obwohl es ziemlich geil wäre: Ich könnte damit Karte und eingebauten Speicher als ein gemeinsames Dateisystem verwalten.) Ext4 ist ein erprobter Standard im GNU/Linux-Umfeld - allerdings nur dort. Für Windows-Systeme, Kameras, MP3-Player und die meisten anderen Geräte wird die Karte mit ext4 unlesbar. Bleibt das gute alte FAT32: steinzeitlich, simpel gestrickt, zu allem kompatibel und gut dokumentiert. Nachteile: Die Dateien dürfen nicht größer als 4GB sein (das werde ich verkraften) und nehmen nicht am Spiel mit den unter GNU/Linux üblichen Benutzerrechten teil (was noch nie gestört hat, seit es FAT-formatierte SD-Karten gibt).
Die Entscheidung ist also gefallen: Ich formatiere die SDXC-Karte neu mit FAT32. Was könnte dabei schon schief gehen?
SD-Karten formatieren ist eine Wissenschaft
Es gibt einen guten Grund, warum in der Regel davon abgeraten wird, Flash-Medien wie SD-Karten von Hand neu zu formatieren. Die Speicherzellen sind in Einheiten mit seltsamen Namen wie „Pages“, „Erase Blocks“ und „Allocation Units“ oder „Erase Block Groups“ zusammengefaßt, die für verschiedene Lese- und Schreiboperationen immer nur gemeinsam angesprochen bzw. verändert werden können. Die Gemeinheit dabei: Auch jedes Dateisystem verwaltet die Daten in größeren Blöcken. Wenn die Blockgrößen nicht zueinander passen, muß der Controller auf der SD-Karte im Extremfall mehrere GB an Daten lesen und zurückschreiben, um eine Textdatei von nur einigen Zeilen zu verändern. Das drückt einerseits auf die Geschwindigkeit, andererseits auf die Lebensdauer des Mediums. Absolutes Ziel: Die Blockgrenzen des Dateisystems sollen auf den von der Hardware vorgegebenen Blockgrenzen liegen und sie keinesfalls überlappen.
Wenn das nur so einfach wäre.
Eine SD-Karte sagt nämlich nicht, wie sie intern organisiert ist. Theoretisch sollte sie dem Standard entsprechend zumindest die Erase Block Size unter /sys/block/mmcblk1/device/preferred_erase_size bekannt geben (mmcblk1 ist hier der Name der Karte, wie er im Verzeichnis /dev aufscheint). Viele Karten tun das entweder gar nicht oder sie lügen dabei und geben fix 4GB an. Eine andere Größe wie die Allocation Unit kann man sich auf Basis der vom Hersteller vorgenommenen Formatierung zusammenreimen. Mit dumpexfat
entlocke ich meiner Karte, daß Sandisk das Dateisystem in 128kB-Clusters aufgeteilt hat, was wahrscheinlich ein Hinweis auf die Allocation-Units ist. Ein nutzloser Hinweis allerdings, FAT32 kann so große Einheiten nicht abbilden.
Was also hab ich getan? Zunächst mal hab ich versucht, eine ganz grobe Fehlerquelle auszuschalten: Statt die Karte komplett neu zu partitionieren, hab ich nur den Typ der vorhandenen exFAT-Partition auf „W95 FAT32 (LBA)“ geändert. fdisk -l
verrät, daß die Partition irgendwo mitten auf der Karte anfängt und nicht mit dem ersten Sektor. Es wäre also verführerisch, diese Platzverschwendung mit einer Neupartitionierung zu korrigieren. Ich habs bleiben lassen - Sandisk wird sich schon was gedacht haben dabei. (Außerdem hab ich irgendwo gelesen, daß es am Anfang jeder SD-Karte einen „geschützten Bereich“ gibt, wofür auch immer. Das wird er sein.)
Dann hab ich versucht, die Erase Block Size herauszufinden, einen wesentlichen Faktor. Weil die Karte sicherheitshalber gleich gar keine Info ausspuckt, hab ich mich auf das Tool flashbench verlassen, dessen Verwendung eher fortgeschrittener Kaffeesudleserei gleicht und unter anderem hier beschrieben wird. Das Ergebnis war - so hab ich es interpretiert - eine Erase Block Size von stolzen 8GB. Das kann hinkommen: Der leere Bereich am Beginn der Karte umfaßt genau 16GB, endet also an der Grenze eines Erase Blocks. Für alles Folgende gilt also: Niemals mit irgendeiner Einheit des Dateisystems eine 8GB-Grenze kreuzen. Klingt simpel.
War dann auch simpel. Die einzige Einheit, die ich beim Formatieren mit FAT32 noch beeinflussen konnte, war die Clustergröße. Ideal wärs gewesen, hätte ich die 128kB-Cluster der Originalformatierung beibehalten können. Die sind von Sandisk sicher bewußt so gewählt. Leider kann FAT32 aber nur mit Clustergrößen umgehen, die unter 64kB liegen. Egal: Der wesentliche Punkt ist meinem Verständnis nach ja, daß die logischen Einheiten des Dateisystems und die physischen der Karte einander nicht überlappen. Wenn mehrere kleine Blöcke des Dateisystems punktgenau in eine der Verwaltungseinheiten der SD-Karte passen, sollte das zumindest OK sein. Ich hab also einfach ein Viertel der ursprünglichen 128kB-Cluster genommen und FAT32 mit 32kB-Clustern formatiert. Wenn die ursprünglichen 128kB irgendeine Bedeutung hatten, bin ich mit den 32kB zumindest nicht ganz daneben. Und auch die 8GB Erase Blocks lassen sich durch 32kB sauber teilen.
War damit alles erledigt? Nein. Ein FAT32-Dateisystem besteht nicht nur aus Dateiblöcken, sondern auch aus einem Bereich für den File Allocation Table „FAT“, der so etwas wie das Inhaltsverzeichnis darstellt. Dieser FAT steht ganz am Anfang der Partition und schiebt daher alles andere nach hinten. Das würde alles zunichte machen, wenn die Größe des FAT eben gerade nicht ins Schema der Blockgrößen paßt. Um dieses Problem zu lösen, bin ich sehr frei nach diesem Artikel vorgegangen. Der Trick ist, das Dateisystem zweimal zu formatieren. Beim ersten Mal wirft mkfs.vfat
die Größe der beiden File Allocation Tables aus, die es angelegt hat. In meinem Fall waren es, soweit ich mich erinnern kann, etwas über 14GB - knapp genug an der nächsten Erase Block Grenze bei 16GB. Ich habe den Parameter -R von mkfs.vfat
verwendet, um die FATs genau so weit zu verschieben, daß sie exakt bei 16GB enden und die nachfolgenden Datenblöcke wieder perfekt ausgerichtet sind.
Danke, Android!
Obs das zu 100% richtige Ergebnis ist? Ob ich mich nicht doch irgendwo um 1 Byte verkalkuliert habe? Niemand weiß es. Ich habe kein Tool gefunden, mit dem man die hier geschilderten Zusammenhänge einfach auslesen und visualisieren kann. Die Karte ist nach wie vor schnell (eine minimale Geschwindigkeitseinbuße läßt sich erklären, weil FAT32 einfach nicht so effizient arbeitet wie exFAT). Überraschend für mich war doch, wie viele Leute sich im Internet über genau dieses Problem mit den SDXC-Karten unterhalten. Das können doch nicht alles Jolla-User sein? Bzw.: Wer verwendet denn schon SD-Karten am GNU/Linux Desktop? Des Rätsels Lösung heißt Android: Eine ganze Reihe von Android-Geräten war (und ist?) mit SDXC-Karten genauso überfordert wie mein Jolla-Handy, und die wesentlich größere Nutzerschar hat sich drüben auf der anderen Seite des Zauns bereits um Lösungen umgesehen, die ich nur mehr abschreiben mußte. Gut gemacht! :)
Jolla: Btrfs-Fehler eingetreten
Da war doch was? Da hab ich doch mal was gelesen?
Genau, da war mal was. Dieser Artikel auf together.jolla.com erklärt ausgesprochen abschreckend und hochtechnisch, warum das Dateisystem btrfs vielleicht doch nicht die ideale Wahl für ein endkundentaugliches Produkt ist. (Die Entscheidung für btrfs hat Jolla übrigens aus MeeGo-Tagen übernommen - nicht ganz unberechtigt. Btrfs gilt als das Dateisystem der Zukunft und verfügt über Eigenschaften, die es besonders für die Flash-Speicher von Smartphones interessant machen. Es gilt nur leider auf der anderen Seite noch nicht als 100%ig stabil.)
Der Hintergrund, stark vereinfacht ausgedrückt: Einerseits lügt btrfs, was den noch verfügbaren Speicherplatz betrifft. Es wiegt den Benutzer mit angeblich freiem Speicher in Sicherheit, den es in Wahrheit gar nicht mehr nutzen kann. Andererseits müssen zur optimalen Auslastung der Speichermedien gelegentlich Aufräumarbeiten durchgeführt werden, die btrfs aber nicht automatisiert.
Unterm Strich passiert (abhängig davon, ob eher große oder kleine Dateien am Telefon liegen und wie viele Schreibvorgänge stattgefunden haben) offenbar Folgendes: Ab einer angegebenen Auslastung von ca. ⅔ wirds eng. Da kann es passieren, daß das Dateisystem schon an der Erschöpfungsgrenze arbeitet, obwohl es noch 30% freien Speicher angibt.
Ob das der Fall ist, kann man als root mit dem Befehl
btrfs fi show
feststellen. Die Ausgabe sollte in etwa so aussehen:
Label: 'sailfish' uuid: 0f8a2490-53ed-4ff6-bb34-b81dfe430397 Total devices 1 FS bytes used 6.42GB devid 1 size 13.75GB used 13.75GB path /dev/mmcblk0p28 Btrfs v0.20-rc1
Wenn da wirklich size 13.75GB
und used 13.75GB
steht, also beide Male 13.75GB, dann gibts ein Problem.
Lösen kann man es im Prinzip recht einfach, die Schritte sind auf dem oben verlinkten TJC-Eintrag beschrieben: Zuerst ordentlich Platz freischaufeln, indem man Fotos, Videos und Musik auf einen Laptop oder auf die Speicherkarte befördert. (Ich hab mich auf ca. 50% freien Speicher runtergearbeitet - wobei 50% der „gelogene“ Wert ist.) Danach gibt man, wieder als root, folgenden (leider durchaus gefährlichen) Befehl ein:
btrfs balance start /
Gefährlich ist der Befehl deswegen, weil er ziemlich tief ins Dateisystem eingreift. Er veranlaßt genau die Aufräumarbeiten, die btrfs derzeit noch nicht automatisch durchführt. Das kann, je nach Zustand des Dateisystems, 15 Minuten oder mehrere Stunden dauern. Während dieser Zeit läuft die CPU auf Hochtouren, es wird daher dringend empfohlen, das Ladekabel anzustecken. Außerdem sollte man die Aktion ausschließlich per SSH starten, damit man gegebenenfalls in einem weiteren Fenster Logfiles überwachen oder die ganze Operation elegant beenden kann.
Erfahrungsbericht von mir: Es hat etwa 20 Minuten gedauert und war durchaus spannend. Ich hatte nämlich gleich mehrmals das Jolla-Bootlogo am Schirm, und ein Neustart während einer Operation am Dateisystem verheißt nichts Gutes. Laut TJC handelt es sich aber gar nicht um „echte“ Neustarts, sondern um das wiederholte Starten essentieller Systemservices, die mit der hohen CPU-Last nicht zurecht kommen. Auch nicht besser … :)
Apropos: Einen echten Neustart sollte man tunlichst vermeiden, auch wenn das Telefon während der Daten-Reorganisation gelegentlich mal tot wirkt. Keine gute Idee.
Was lerne ich daraus? Mein Plan, das hochmoderne btrfs auch für die SSD am großen PC einzusetzen, ist vorerst mal vom Tisch. (Aaron Seigo hat auf seinem Blog beschrieben, wie es ihm damit ergangen ist.) Stattdessen werde ich mir eine SD-Karte fürs Telefon zulegen und Dateien in Zukunft dort statt im home-Verzeichnis speichern. Angeblich (obwohl die Informationen widersprüchlich sind) benimmt sich btrfs brav, solange es nicht zu voll wird.