[Oneplus X] – Sailfish OS Installieren
_____________________________________________________________________________________________
Update 3
Text in folgenden punkten geändert:
- Link zum aktuellen SFOS Version: 2.0.5.6 angepasst
- Updates auf die Aktuellste SFOS Versionen noch mal Aktualisiert mit neuste Repos!
- Info hinzugefügt: [Release notes was ist neu und welche Bugs gibt es] unter SFOS 2.0.5.6
_____________________________________________________________________________________________
_____________________________________________________________________________________________
Update 2
Text in folgenden punkten geändert:
- Jolla Store: ist nun auch für Portierte Geräte zugänglich!
- Firmware Updates: So Aktualisiert ihr euer Gerät nun richtig!
- Download Link zu FW 2.0.2.51 Aktualisiert und korrigiert
_____________________________________________________________________________________________
_____________________________________________________________________________________________
Update 1
Falls ihr beim Recovery Flashen die Fehlermeldung erhält: FAILED (remote: dtb not found)
liegt es daran, dass ihr die aktuellste OSS 3.0 Version Installiert habt. Ihr müsst erst auf OSS 2.0 Downgraden!
_____________________________________________________________________________________________
Ihr seid Gelangweilt vom Jolla Phone 1 oder habt ein Oneplus X und möchtest das geniale SailfishOS ausprobieren? Dann befolgt einfach diese Anleitung.
WICHTIG:
Bitte beachtet, dass wir keine Haftung für jeglichen Schäden übernehmen. Man muss den Bootloader Entsperren, Das Gerät Rootet und mit passenden Dateien geflasht werden. Ihr verliert dabei alle Dateien. Sichert diese ab bevor ihr los legt 🙂
Da ich Linux als OS nutze, erkläre ich euch hier wie man darunter den Bootloader Entsperrt. Windows/MacOS User sollten mal bei XDA Developer vorbei schauen.
Die Anleitung habe ich währenddessen geschrieben. Solltet ihr dennoch Fehler finden so bitte ich euch eine Info in den Kommentar Bereich.
Downloads
Wir besorgen uns mal alle Dateien die wir benötigen.
- twrp-3.0.2-0-onyx.img
- UPDATE-SuperSU-v2.46.zip
- MA-12.1-20160201-onyx.zip
- sailfishos-onyx-release-2.0.5.6-beta-4.zip
Vorbereitung
Des Weiteren brauchen wir ein paar Tools um mit unser Smartphone zu Kommunizieren.
Die Kommandozeilen gibt ihr im Terminal (PC/Notebook) ein.
sudo add-apt-repository ppa:phablet-team/tools && sudo apt-get update
sudo apt-get install android-tools-adb android-tools-fastboot
Smartphone Vorbereitung
Um den Bootloader zu Entsperren müssen wir zuvor am Smartphone zwei Einstellungen vornehmen. Geht in die „Einstellungen > Über das Telefon > und Tippen mehrfach auf „Build-Number„. Es erscheint die Meldung, dass die Entwickler Option freigeschaltet wurde.
Nun begeben wir uns wieder in die „Einstellung > Entwickleroption“ und aktivieren die OEM-Entsperrung. Die darauf folgende Meldung bestätigen wir in dem wir auf Aktivieren tippen.
Bootloader Entsperren
Wir versetzen das Oneplus X (opx) in den Bootloader-Modus. Dazu gehen wir wieder in die „Einstellungen > Entwickleroption > Erweitertes Neustartmenü > Aktivieren“
Nun drücken und halten wir 2-3 Sekunden die EIN/AUS Knopf und tippen daraufhin auf Neustarten / Bootloader.
Sollte das nicht Funktioniert so halten wir den EIN/AUS & Vol. + Button solange bis das Smartphone neu startet und ihr in den Bootloader-Modus gelangt.
Weiter geht es am Rechner. Öffnet euren Terminal und gibt folgende Kommandozeilen ein.
sudo fastboot devices
Ihr erhält folgende Rückmeldung: 4cb1d1a6 fastboot
nun tippen wir folgendes ein:
sudo fastboot oem unlock
und erhalten folgende Info zurück:
…
OKAY [ 0.011s]
finished. total time: 0.011s
Das Gerät sollte nun normal Hochfahren.
Nun überprüfen wir ob unser Endsperrvorgang erfolgreich war. Dazu müssen ihr erst mal das Smartphone noch mal schnell Konfigurieren. Natürlich nur das nötigste um ins Menü zu gelangen. Wiederholt noch mal den Schritt oben „Smartphone Vorbereiten“ und „Bootloader Entsperren“ jedoch nur bis dahin bis euer Gerät im Bootloader Modus landet.
Um nun den Endsperrvorgang zu überprüfen tippen wir folgendes ein:
sudo fastboot oem device-info
wir erhalten folgende Rückmeldung:
…
(bootloader) Device tampered: false
(bootloader) Device unlocked: true
(bootloader) Charger screen enabled: false
(bootloader) Display panel:
(bootloader) console_enabled: 0
(bootloader) exec_console_unconsole: 0
OKAY [ 0.007s]
finished. total time: 0.007s
steht true bei Device unlocked hat es soweit geklappt.
Lässt das Smartphone weiterhin am PC verbunden und bleibt in den Bootloader Modus…
Custom Recovery Flashen
… denn jetzt Flashen wir eine Custom Recovery.
wechselt im Terminal in den Pfad wo ihr alle oben aufgelistete Dateien heruntergeladen habt
cd /pfad/zu/den/Dateien
und gibt folgende Kommandozeile ein
sudo fastboot flash recovery twrp-3.0.2-0-onyx.img
Die Rückmeldung sollte dann so aussehen:
target reported max download size of 1073741824 bytes
sending ‚recovery‘ (14758 KB)…
OKAY [ 0.464s]
writing ‚recovery’…
OKAY [ 0.284s]
finished. total time: 0.748s
nun Booten wir twrp recovery
sudo fastboot boot twrp-3.0.2-0-onyx.img
downloading ‚boot.img’…
OKAY [ 0.464s]
booting…
OKAY [ 0.015s]
finished. total time: 0.480s
Wir gelangen in den TWRP Recovery Modus. Bevor wir weiter machen bringen wir unser Smartphone auf Werkseinstellung.
„Wipe > unten den Schieber Swipe to Factory Reset“
wir bleiben weiterhin in dem TWRP Recovery Modus, den….
SuperSU Installieren
… wir kopieren die Datei „UPDATE-SuperSU-v2.46.zip“ auf das Smartphone. Das Gerät wird auch im TWRP Recovery Modus am PC erkannt. Kopiert die Datei einfach ins Root Verzeichnis. Tippt auf „Install“ und wählt die Datei „UPDATE-SuperSU-v2.46.zip“ aus und Flasht es in dem ihr unten auf „Swipe to Confirm Flash“ wischt.
Danach Wipen wir unser Gerät wieder „Wipe > unten den Schieber Swipe to Factory Reset“ und Starten unser Smartphone in dem wir auf „Reboot“ tippen.
Nach dem ihr alles schnell eingerichtet habt, solltet ihr die App SuperSu in der App Liste finden. Mit einem Root Checker aus dem Play Store könnt ihr prüfen ob ihr Root zugriff habt.
Nun habt ihr euren Bootloader Entsperrt sowie Root Rechte erteilt. Ab in den TWRP Recovery Modus und Wipe noch mal euer Gerät.
SailfishOS Flashen
Wir kopieren nun zwei weitere Dateien auf das Smartphone:
- MA-12.1-20160201-onyx.zip
- sailfishos-onyx-release-2.0.5.6-beta-4.zip
Bevor wir aber die SailfishOS (SFOS) Flashen, muss Android als Basis Installiert werden. Dazu nutzen wir die Firmware von CyanogenMod (CM)
INFO: ich habe die CM „MA-12.1-20160308-onyx.zip“ getestet, aber irgendwie schien diese bei mir samt SFOS nicht zu Funktionieren bzw. zu Booten. Daher nahm ich die Version: „MA-12.1-20160201-onyx.zip“ . Damit klappt es soweit.
Tippt auf „Install“ und wählt die „MA-12.1-20160201-onyx.zip“ Datei aus und wischt unten um CM zu Installieren.
Sobald CM installiert wurde wählt ihr direkt die „sailfishos-onyx-release-2.0.1.11-beta-1.zip“ Datei und Flasht es einfach drüber. Die Installation dauert etwas länger. Sobald auch das erledigt ist, könnt ihr euer Smartphone Booten.
Wichtig! Kein Wipen mehr!
Geschafft!
Das war es auch schon. Nun habt ihr SailfishOS v 2.0.5.6 auf euer Smartphone Installiert! ABER NICHT GLEICH ALLES EINRICHTEN, DENN….
WICHTIG!!!
Die letzte Firmware Version haben kleine Bugs. Ein zu den gehört das beim ersten Start die MAC Adresse des WLAN Moduls nicht richtig ist. Also bevor ihr das Gerät schon von Anfang an einstellt geschweige das WLAN bei der erst Konfiguration Einschaltet, müsst ihr unbedingt das Gräte einmal Neustarten!
[Release notes was ist neu und welche Bugs gibt es] unter 2.0.5.6
Fixes:
- Aufladeanimation bei Entladung wurde korrigiert
- Bluetooth MAC-Adresse wird nun richtig angezeigt
- Bluetooth Status bleibt nach einem Neustart
- LED Blinkt nun ein wenig schneller als zuvor
- Lautstärke während des Telefonierens kann nun angepasst werden
Verbesserungen:
- Display Pixel-Verhältnis wurde auf 1.75 geändert (kann aber auf dem wert 2.0 geändert werden, falls die Icons zu klein wirken
- Treiber wurden in den Kernel hinzugefügt für externe USB WiFi Adapter (RaLink)
- Jolla Store ist nun verfügbar
Bekannte Bugs:
- Ein Neustart nach einem komplett neu Installation ist nötig! Man darf zuvor das WLAN nicht Anschalten, ansonsten wird die MAC Adresse immer falsch dargestellt.
- Lautstärke während des Telefonierens beim Freisprechmodus kann nicht geändert werden
- Kompass: Die Orientierung funktioniert nicht richtig.
[Extras]
Höhere Kamera Foto/Videoauflösung
das OPX schafft Technisch Foto und Video Aufnahmen mit höhere Pixeln anzahlen. Lädt dazu folgende zwei Dateien herunter:
Die .zip Datei Flasht ihr genau wie die Firmware über das vorhandene Betriebssystem. Die rpm mittels einem Datei Explorer wie FileCase (erhältlich über openrepos.net). Nach der der Installation habt ihr unter in den Einstellungen den Eintrag „Kamera Einstellungen„. Dort könnt ihr die Bild und Video Einstellungen für die Front und Hauptkamera anpassen sowie wie die Bitrare für Video Aufzeichnungen. Standardmäßig ist 12 Mbps voreingestellt.
Jolla Store und andere Apps
Normalerweise dient das Jolla Store für zusätzlichen Apps. Leider Funktioniert das noch nicht für das OPX, somit sind die Offiziellen Standard Apps nicht vorinstalliert. Das Problem ist jedoch über dem Terminal lösbar.
________________________________________________________________________________
Update 10.12.2016
Der Jolla Store ist nun auch für Oneplux X bzw. auf allen Portierten Geräten zugänglich!
Ich belasse dennoch die Anleitung wie man die Pakete über das Terminal Installiert.
________________________________________________________________________________
- Öffne das ‘Terminal‘ am Smartphone oder ssh Verbindung
Wir melden uns als Root an:
devel-su
und geben das Passwort ein.- nun führen wir tippt folgendes:
zypper rr adaptation0
- danach:
pkcon refresh
- Nun Installieren wir uns die Fehlende Apps. Die Codezeile sieht so aus:
pkcon install package-name - wobei "package-name" mit dem folgenden ersetzt wird:
jolla-calculator
jolla-calendar
jolla-email
sailfish-weather
jolla-mediaplayer
jolla-notes
sailfish-office
Weitere Apps könnt ihr auch z.b. über das Warehouse Installieren. Warhouse für SailfishOS bekommt ihr HIER
Es kann hin und wieder vorkommen, dass die Warehouse App die Meldung „Warehoue reagiert nicht mehr“ Anzeigt und Ihr könnt mit „Warten“ oder „Schließen“ bestätigen. Bitte Schließt die App nicht!! Im Hintergrund läuft die Installation weiter. Wartet einfach ein wenig ab.
Android-Support
leider eine schlechte Nachricht (Ansichtssache :)). Es gibt offiziell kein Android Support für Portierte Geräte. Dieses Feature gibt es nur für die Jolla Geräte bzw. Hersteller, die SFOS Lizenzierten. Ein Projekt namens SFDroid existiert zwar, funktioniert jedoch nur unter CM11.1 und soweit ich gelesen habe auch nur angepasst für die Nexus Geräte. Für das OPX gibt es jedoch „nur“ CM12.1. Man Arbeitet zwar dran SFDroid unter CM12.1 Lauffähig zu bekommen, aber das kann noch eine weile dauern. Sollte etwas neues geben, werde ich diesen Beitrag noch mal Bearbeiten.
Updaten von alten SFOS 2.0.2.51 auf die aktuelle 2.0.5.6 mit neuen Repos
Diese Anleitung nutzt ihr nur das eine mal, wenn ihr eine ältere SFOS Version z.b. 2.0.2.51 auf eine aktuellen Updaten wollt. Bei der SFOS Version 2.0.5.6 für das Oneplus X werden neue repositories benutzt. Die Anleitung wie ihr zukünftig die Updates macht folgt in den nächsten Tagen.
Wie sonst auch nutzten wir den Terminal dafür.
zuerst fügen wir die neuen repositories hinzu:
ssu ar adaptation-temp http://repo.merproject.org/obs/nemo:/testing:/hw:/oneplus:/onyx/sailfishos_2.0.5.6/
ssu ar adaptation-temp-common http://repo.merproject.org/obs/nemo:/testing:/hw:/common/sailfishos_2.0.5.6/
ssu re 2.0.5.6
nun prüfen wir unsere repos-liste
ssu lr
und sollte es bei uns aussehen:
Enabled repositories (global): - apps ... https://releases.jolla.com/jolla-apps/2.0.5.6/armv7hl/ - hotfixes ... https://releases.jolla.com/releases/2.0.5.6/hotfixes/armv7hl/ - jolla ... https://releases.jolla.com/releases/2.0.5.6/jolla/armv7hl/ Enabled repositories (user): - adaptation-temp ... http://repo.merproject.org/obs/nemo:/testing:/hw:/oneplus:/onyx/sailfishos_2.0.5.6/ - adaptation-temp-common ... http://repo.merproject.org/obs/nemo:/testing:/hw:/common/sailfishos_2.0.5.6/ Falls ihr noch andere repos in dier Liste habt, müsst ihr diese deaktivieren. Ein beispiel, wenn die repo "home" aufgelistet ist: ssu dr home nachdem ihr die repos angepasst habt, fahren wir mit der Bereinigung und dem Update fort: devel-su zypper ref -f version --dup sync reboot
Nach dem Neustart sind zwei weitere repos im Bereich (global) eingetragen:
- adaptation-community ... http://repo.merproject.org/obs/nemo:/testing:/hw:/oneplus:/onyx/sailfishos_2.0.5.6/
- adaptation-community-common ... http://repo.merproject.org/obs/nemo:/testing:/hw:/common/sailfishos_2.0.5.6/
nun deaktivieren wir noch beide repos aus dem (user) Bereich sowie löschen alte repos die wir nicht mehr benötigen und prüfen unsere liste noch mal: ssu dr adaptation-community ssu dr adaptation-community-common ssu er adaptation0 ssu rr adaptation0 ssu er dhd ssu rr dhd ssu er mw ssu rr mw ssu lr
So sollte es nun bei euch aussehen: Enabled repositories (global): - adaptation-community ... http://repo.merproject.org/obs/nemo:/testing:/hw:/oneplus:/onyx/sailfishos_2.0.5.6/ - adaptation-community-common ... http://repo.merproject.org/obs/nemo:/testing:/hw:/common/sailfishos_2.0.5.6/ - apps ... https://releases.jolla.com/jolla-apps/2.0.5.6/armv7hl/ - hotfixes ... https://releases.jolla.com/releases/2.0.5.6/hotfixes/armv7hl/ - jolla ... https://releases.jolla.com/releases/2.0.5.6/jolla/armv7hl/ Enabled repositories (user): Disabled repositories (global, might be overridden by user config): Das Updaten hat funktioniert. Es kann sein, dass ihr jedoch diese Meldung erhält: [D] QOfonoNetworkRegistrationInterface::getProperties:238 - "Method "GetProperties" with signature "" on interface "org.ofono.NetworkRegistration" doesn't exist
das könnt ihr ruhig Ignorieren laut dem Dev Kimmoli. Wie man nun von jetzt an auf eine neuere Sailfish OS Version Updaten kann erkläre ich im nächsten Abschnitt!
Updaten auf eine Aktuellste SFOS Versionen
ZUR ZEIT IN BEARBEITUNG! BITTE DIESEN ABSCHNITT NICHT DURCHFÜHREN DA DIE REPOS SICH GEÄNDERT HABEN. DEMNÄCHST AKTUALISIERE ICH DIESEN PART!!!
Zur Zeit ist SF 2.0.5.6 die Aktuellste Version. Sollte ein neues Update Erscheinen könnt ihr Theoretisch diese gleich auf dem OPX Installieren. Seit aber gewarnt! Die SF@OPX Porter geben kein Support für andere bzw. neuere Versionen die nicht von den Devs selbst kommen. Auch solltet ihr immer ein Backup erstellen bevor ihr ein Updatet durchführt!
Nun bevor wir das Gerät Aktualisieren können, müssen wir die repositories bereinigen:
Öffnet dazu das Terminalmeldet euch als root an: devel-suNun listen wir unsere Liste auf: ssu lr
Enabled repositories (global): - apps ... https://releases.jolla.com/jolla-apps/2.0.1.11/armv7hl/ - hotfixes ... https://releases.jolla.com/releases/2.0.1.11/hotfixes/armv7hl/ - jolla ... https://releases.jolla.com/releases/2.0.1.11/jolla/armv7hl/ Enabled repositories (user):
so in etwa sollte es bei euch aussehen. Höchstwahrscheinlich habt ihr noch einen weiteren Eintrag namens
adaptation0eventuell auch home, store und auch Sachen von openrepos (über Warehouse Installierte Apps)
Unser Ziel ist, dass wir unsere Liste, wie oben zu sehen, anpassen. Daher deaktiviert alle repositories die wir für das Update nicht brauchen. Das macht ihr mit folgenden Codezeile:
ssu dr package-name
„package-name“ ersetzen wir natürlich mit dem richtigen Eintrag. z.b.
ssu dr adaptations0
Das macht ihr mit allen Paketen bis auf die die oben zu sehen sind (apps, hotfixes, jolla, dhd, mw).
Nach dem ihr die Liste korrigiert habt, können wir mit dem Update fortfahren.
Als nächstes müssen wir wissen welche Software Version überhaupt Existiert. Das könnt ihr hier auf dieser Seite herausfinden oder im Forum talk.maemoorg oder aber auch bei together.jolla.com.
Wir nehmen jetzt als Beispiel die Aktuelle Firmware. Natürlich ändert ihr die Versionsnummer dann mit der richtigen ab.
Die Kommandos geben wir nacheinander im Terminal (als root/devel-su!) ein:
RELEASE=2.0.5.6
devel-su sed -i -e 's#^adaptation=.*$#adaptation=http://repo.merproject.org/obs/nemo:/testing:/hw:/oneplus:/onyx/sailfish_latest_armv7hl/#' \
/usr/share/ssu/repos.ini
ssu dr adaptation0
ssu release $RELEASE
ssu lr
***Prüft hier bitte noch mal, ob wirklich nur die repos Aktiviert sind die auch oben aufgelistet wurden!! Alles andere müsst ihr mit „dr [name] deaktivieren!!! ***
devel-su zypper clean -a
devel-su zypper ref -f
version --dup
sync
reboot
voilà , ihr seit nun auf der aktuellen Software Version.
Ich hoffe die Anleitung war soweit Verständlich. Habt viel Spaß mit Saiflish OS 🙂
Vielen dank an folgende Devs:
taaeem, kimmoli, sledges, Nokius, mal-, dr_gogeta86 und alle anderen devs von #sailfishos-porters