(click above image for higher resolution and quality images!)
#include <std_disclaimer.h> /* * I am NOT responsible for data loss, you getting fired because the alarm app failed or if you brick * your device. Please do some research if you have any concerns about features included in this OS * port before flashing! YOU are choosing to do these modifications, and if you point the finger at me * for messing up your device, I will laugh at you. * BOOM goes the dynamite! */
Hello, fellow XDA developers & users alike!
I think it's been long enough that we've not had alternative non-Android operating systems in a usable state for the popular OnePlus 5* devices, so here is a Sailfish OS port after over 6 months in development!
I'd really appreciate it if you give feedback and report bugs so I can attempt to fix them as best I can
- Slick and clean Sailfish OS UI/UX
- Fully gesture driven navigation of the OS (physical back buttons may or may not work depending on the app)
- Ambiences: a combination of system background, primary UI colors, sounds & volume levels
- Sleep mode gestures e.g. double-tap to wake, music controls, 'V' for toggling flashlight etc
- Ability to control configurable ambiences with the notification slider
- Independent & alternative OS not based on Android (droid base is only used for drivers & HAL in SFOS)
- Run regular GNU/Linux (armhf) tools and utilities natively out of the box from Jolla, OpenRepos, other custom repositories or direct binary format
- Privacy-first OS with no spyware or bloatware pre-installed
- Dual-booting between LineageOS & Sailfish OS with a simple zip flash in recovery (boot-switcher, linked below)
- OS version OTAs, look at the merproject wiki page (see 'OTA updates' below)
- A stable hardware adaptation (port) with basically everything working, but please also read about the problems right below
- And more to explore...
- No Android apps (APK) will run inside Sailfish OS as is the norm with community ports; you can just dual-boot with LineageOS (see FAQ below)
- There is no VoLTE / VoWiFi support in SFOS (see FAQ below)
- Even though NFC works, it's implementation is quite basic in Sailfish OS currently
- The fingerprint sensor doesn't do anything (see FAQ below)
- Produced video recordings from the camera are unusable right now due to corruption of the beginning in recordings & artifacts when moving even slightly
- Flashlight misbehaves for picture taking by taking too long to activate and causing nearly pitch black images (it also turns on/off rapidly a few times when disabling)
- Some audio (including calls) does not get routed properly to/from (Bluetooth) headsets
- Sailfish OS Developer mode (via USB cable) doesn't work
- During initial setup you may get stuck at the lockscreen; simply restart your device if this happens
- Rarely waking up from sleep mode can take a long time (up to about 15 seconds)
- The very first boot and initial loading takes a pretty long time for whatever reason
How to install
- Backup all your data from the device to a computer
- Download Oreo Firmware 5.1.7, TWRP 3.2.3 image, the LineageOS 15.1 base ROM (AFH | MEGA) & a Sailfish OS release
- Install device firmware version 5.1.7 (not the ROM!)
- Flash TWRP 3.2.3 as your recovery
- Reformat /data to ext4 and check it for issues
- Reboot to recovery
- Wipe cache & dalvik
- Flash LineageOS 15.1
- Flash anything else you normally flash for Android e.g. GApps, Magisk, no dm_verity etc
- Flash Sailfish OS (the zip that contains rootfs.tar.bz2) from inside CI artifacts archive
- Reboot and enjoy!
Links & source
sailfishos-oneplus5: All project repos & source
important: Info and detailed guides about flashing, self-building etc
android_kernel_oneplus_msm8998: The used kernel source
sailfishos.org: General info about the OS as well as contributing, translation, app development etc
wiki.merproject.org: Place with general info about the port status, OTAs etc
droid-config commits: Stuff modified on the Sailfish OS side
See "OTA (Over-the-Air) update" section under the libhybris adaptation wiki page.
Special thanks to
@kimmoli for gesture-daemon & triambience
@nathanchance for maintaining the OP5 linux-stable merged kernel tree
@Mister_Magister, mal, r0kk3rz, @rinigus, @PiggZ, spiiroin, jusa, vknecht, NotKit and everyone else at #sailfishos-porters
The port was made possible thanks to you all!
What does "SFOS" mean?
Sailfish OS; it's simply a common abbreviation.
Can I run [insert name here] Android app in Sailfish OS?
If there is no currently maintained client or similar app in the Jolla Store or (my preference) OpenRepos, then probably not. I may look into bringing Android app support via Anbox or similar project much later on; no ETAs.
Does VoLTE or VoWiFi work in Sailfish OS?
As of SFOS 3.2.1, these are still not implemented, but should be coming later in perhaps Sailfish OS 4.
How can I skip the SFOS beginner tutorial?
Tap each corner of the screen once starting from top-left going clockwise.
When will the fingerprint sensor start working?
Whenever the Sailfish OS middleware used on the Sony Xperia XA2 gets prepared to be deployed on a wide variety of hardware & becomes OSS (open-source software).
How can I use ROMs on version greater than Oreo again?
Backup all data, flash latest firmware zip for your device, flash a recent TWRP image to recovery partition, reboot to recovery and 'Format Data'; after this you should be back to normal.
I found a bug, what can I do?
See "Report bugs" section under the libhybris adaptation wiki page.
[ROM][GNU/Linux][OTA][22.214.171.124] Sailfish OS for OnePlus 5, ROM for the OnePlus 5
Source Code: https://github.com/sailfishos-oneplus5
ROM OS Version: 8.x Oreo
ROM Kernel: Linux 4.x
ROM Firmware Required: 5.1.7 (Oreo)
Based On: LineageOS 15.1
Current Stable Version: 126.96.36.199 (Nuuksio)
Last Updated 2020-02-14