The Mer Wiki now uses your Mer user account and password (create account on

Adaptations/libhybris/Install SailfishOS for hammerhead

From Mer Wiki
< Adaptations | libhybris
Revision as of 14:41, 23 October 2017 by Vandys (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Vendor: Lg
Product name: Nexus 5
Sailfish OS version: 2.0.2
Last update: 03.10.2015


Hardware Support

Legend:  Y  - Working (y=hack),  Y  - HAL works, not hooked up to UI/MW/init yet,  N  - Not working,  ?  - Untested,  N/A  - N/A on device.
Device released Linux
Display Touch LED Audio NFC Bluetooth GSM WLAN GPS Camera Fingerprint Sensors Keys Vibra Haptics Power
USB FM Radio
SMS Voice Data Connect Hotspot ALS PS Accel. Gyro. Magne. Vol+/- Home Net. Charge
3.4.0 Y Y Y Y  ? Y Y Y Y Y N Y Y  ? Y Y Y Y Y Y N/A Y Y Y N Y Y N/A

Steps to install

  • Install adb and fastboot on your workstation :
    • Debian/Ubuntu: apt-get install android-tools-adb android-tools-fastboot
    • Fedora: yum install android-tools
    • Mageia: urpmi android-tools (included in upcoming relase of Mageia 5).
    • OpenSUSE: zypper in android-tools
    • Mac OS X: Install Homebrew from, then: brew install android-platform-tools
    • Windows: See for instructions
  • Reboot the device and it should boot to Sailfish OS. If the device shows Google logo for 4-5 minutes, do a reboot using power button.
  • See below for MultiROM instructions


  • This page's instructions will otherwise work fine with the newer beta5 install.
  • There is even newer work based on CM13, this link will take you to the thread on

WIP Over-the-Air updates (OTA)

  1. Open shell with normal nemo user
  2. You can be on any Sailfish OS version you have installed before
  3.  Ensure that sailfish_latest_(architecture) repo on OBS points to the version you'll OTA to for best results (ping us on IRC if not sure)

Currently available OTA versions:

  • for Nexus 4:
  • for Nexus 5:,
  • (we're also coding an OTA update checker, sync with mal- at IRC and help with that!)
RELEASE=<the version> # e.g. RELEASE=

devel-su sed -i -e 's#^adaptation=.*$#adaptation=' \

ssu dr adaptation0

ssu release $RELEASE
ssu dr extra
ssu dr mw
ssu ar mw
ssu er mw
ssu ar dhd
ssu lr
# ^ double-triple check that no -two- enabled repos point to the same URL

# You may have many of OpenRepos enabled. It's recommended to disable them, even
# though version --dup will do its best-effort to isolate repositories:
ssu lr | grep openrepos

devel-su zypper clean -a
devel-su zypper ref -f

version --dup
# if above fails, try again
version --dup


How to Build Image Yourself

Android-in-a-Window (sfdroid)

For project status, bugs, and changelog click here.


devel-su pkcon refresh
devel-su pkcon install SDL2
# hammerhead only:
devel-su usermod -G net_bt_stack -a nemo
# and enter recovery

Download appropriate .zip file:

It has been tested against SFOS, check for differences in init.rc for other versions before flashing (even though they should change rarely at this point).

  • Install this zip via TWRP (used as example here) or CWM:
    • MultiROM: via Advanced->Multirom->List Roms->your rom->Flash Zip
    • Non-MultiROM: choose to Flash Zip or adb sideload (WARNING! If you ever use fastboot boot boot.img to boot to underlying CM, sfdroid will break that! To fix, you need to put back the original
  • Reboot (might take longer than usual, screen might become unresponsive for a few seconds)
  • Launch sfdroid from the App Grid

Play Android OpenGL Classic Games

devel-su zypper in apkenv

Find a game's APK on the Internet that matches _exact version_ from this list:

Once downloaded, perform in Terminal as normal user, e.g.:

apkenv Angry_Birds_2_3_0.apk


You're welcome to help us by writing a small UI app that manages/launches those, or provides .desktop files.

Games tested on Nexus 5 successfully:

Amazing Alex
Angry Birds
Cut the Rope
Fruit Ninja
Petals Redux
Plants vs. Zombies (no sound, WIP)
Rabit Game 2
Super Hexagon
World of Goo

To join the effort (or request a game), join #apkenv IRC channel on Freenode

Android Dalvik/Art apps are _not_ supported by apkenv.


Here as example we'll use hammerhead (Nexus 5) instructions. They are similar for other devices.

Known Issues

Refer to bugzilla for list of known issues.


OTA to 2.0.2 (unstable, for devs only)

  • Enabled noise/echo cancellation during the call

Beta0 - 3 October 2015

  • Sailfish OS UX v2.0 - more info, release notes
  • OTA ready: see how
  • Jolla Camera is back!
  • Regression bug: video recording broken :( please help on bug here
  • New app to showcase: CodeReader

Alpha13 - 10 September 2015

  • Play classic Android OpenGL games from APK files (no apps only games)! Click here for instructions
  • [not working reliably?] Android's virtual SD Card is now mounted on bootup, so all photos, videos, music are now visible in Sailfish OS apps
  • MTP transfer mode works (not thoroughly tested), just choose "PC Connection" in Setting->System->USB
  • CameraPlus icons are now bigger \o/
  • New pre-installed apps: Books, Messwerk, Poor Maps, and SailorGram
  • Sailfish OS
  • WIP OTA only for those adventureous and who want to help polishing OTA: click here

Alpha12 - 19 June 2015

  • Support for 5GHz WLAN APs
  • Sailfish OS Update 15 (release notes)
  • BUG: Jolla Store broken (server side), apologies but that's the burden we all have to bear until the Jolla Tablet comes out, in the meantime pls use Warehouse from Openrepos for apps (subscribe to bug for updates)
  • FIXED in alpha13: Camera shows blackscreen when restoring the app. Can be worked around by restarting it (subscribe to bug for updates)
  • BUG: Videos still have no sound, and app crashes on stop recording, but video is saved (subscribe to bug for updates)

Alpha11 - 29 April 2015

  • Jolla Store hotfix
  • New libhybris from upstream
  • (tech bubbles:) Before Alpha10, porting underwent an important packaging reorg, which will make adaptation for future devices even easier and less cluttered

Alpha10 - 28 April 2015

  • BROKEN Jolla Store. This slipped through the cracks, sorry, fixing in the next hotfix soon out
  • Audio and video playback (MP3, MP4, H.264) works out-of-the-box using hardware accelerated codecs where applicable
  • Bigger hi-res icons (to match the font)
  • Sailfish OS early access Update 13 (release notes)
  • BUG: inverted wallpaper scrolling. Fix by creating a custom ambience (click here for inspiration)
  • BUG: WLAN may forget AP after first reboot. Please re-associate with your AP again, and then it will work normally thereafter

Alpha9 - 7 April 2015

  • Camera! (Use cameraplus from app grid, native jolla-camera still needs love)
  • Video playback including embedded HTML5 videos

Alpha8 - 28 February 2015

  • All sensors!
  • Sailfish OS public Update 11

Alpha7 - 27 February 2015

  • Sailfish OS early access Update 11

Alpha6 - 29 January 2015

Also available as OTA fix for alpha5 owners here.

Alpha5 - 14 January 2015

  • WLAN remembers last connected AP after reboot - bug fixed
  • Sailfish OS Update 10
  • Fingerterm app scaled to the screen size
  • Help us close this bug down - I could not reproduce it during 1st bootup

Alpha4 - 18 December

  • Jolla Store enabled
  • Sailfish OS Update 9
  • Magnetometer support
  • Improved BT HID support (US bt keyboard layout provided)
  • Generic BT improvements

Alpha3 - 18 August

  • Bluetooth
  • Allow untrusted software
  • Filemanager app
  • USB connection dialogue: Developer mode, USB tethering, charging, ...
  • Devicelock

Alpha2 - 10 August

  • MultiROM
  • LEDs

Alpha1 - 7 August

  • Initial release
Personal tools