[beta] [SFOS] SailfishOS 2.1.3.7 for cancro

Search This thread

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
Introduction

Sailfish OS is a mobile operating system combining the Linux kernel for a particular hardware platform use, the open-source Mer core middleware, a proprietary UI contributed by Jolla, and other third-party components.

This is a port of Sailfish OS to cancro (Xiaomi Mi3/Mi4), based on CyanogenMod 12.1.

What Works: https://wiki.merproject.org/wiki/Adaptations/libhybris#Smartphones (Check Xiaomi Mi3)

Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/

Whats new:
Updated to Sailfish 2.1.3.7

Known issues:
1) Wifi mac address not detected properly

Current TODOs: Sailfish OS on cancro's Trello Board

Download links:
Cyanogenmod 12.1 base: https://www.androidfilehost.com/?fid=529152257862691291 (Mirroring this, as CM servers are shutting down)
Sailfish OS rootfs: https://www.androidfilehost.com/?fid=817906626617953262

Installation Instructions:
NOTE: This release is also available as an OTA to existing users.
1) Make sure your device has the new partition layout needed for Android M and a custom recovery. Boot to Recovery, wipe cache, dalvik-cache, system and data. ( https://jrizzoli.github.io/dotfiles/ )
2) First install cm-12.1-20151117-SNAPSHOT-YOG7DAO1K6-cancro.zip As your base ROM, and make sure it works well.
3) Then Install sailfishos-cancro-release-2.1.3.7-beta.zip on top of it. This will replace your boot image with sailfish boot image, and installs sailfish os to /data/.stowaways/sailfishos . The installation can take a little while, so be patient.
If you are already running, CM12.1 YOG7D/already have SailfishOS installed, you can simply flash the Sailfish OS without wiping flash/partition.

Big kudos to @mixmoto and Nokius, for patiently testing this release over and over.

P.S Thank you all for your support. I really really appreciate it - and it's what motivated me to make some time in my busy days to create this release. Wish you all Happy Holidays!

XDA:DevDB Information
Sailfish OS for cancro, ROM for the Xiaomi Mi 3

Contributors
saidinesh5, Ar4er, Folks at #sailfishos-porters, especially @mal-
Source Code: https://github.com/CancroSailors

ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.4.x
ROM Firmware Required: Must have CM12.1-YOG7D
Based On: CyanogenMod 12.1-YOG7D

Version Information
Status: Alpha

Created 2016-09-15
Last Updated 2018-01-07
 

Attachments

  • Screenshot-16-09-18-06-44-58.jpg
    Screenshot-16-09-18-06-44-58.jpg
    203.3 KB · Views: 16,618
  • Screenshot-16-09-18-06-46-07.jpg
    Screenshot-16-09-18-06-46-07.jpg
    134.2 KB · Views: 15,744
  • Screenshot-16-09-18-06-47-58.jpg
    Screenshot-16-09-18-06-47-58.jpg
    145 KB · Views: 15,330
  • Screenshot-16-09-18-06-48-12.jpg
    Screenshot-16-09-18-06-48-12.jpg
    132.2 KB · Views: 15,574
  • Screenshot-16-09-18-06-48-25.jpg
    Screenshot-16-09-18-06-48-25.jpg
    245.4 KB · Views: 15,079
  • Screenshot-16-09-18-06-49-50.jpg
    Screenshot-16-09-18-06-49-50.jpg
    230.7 KB · Views: 14,915
  • Screenshot-16-09-18-06-52-27.jpg
    Screenshot-16-09-18-06-52-27.jpg
    220.7 KB · Views: 14,360
Last edited:

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
Hey Dinesh,

Thanks for your work,

does this have sfdroid support?

Hey, Nope. SFDroid support is on my TODO list for now.

It may take a while though. I need a Multirom working with CM13.0(which is my primary ROM), so I can safely port all the needed changes for SFDroid to my CM12.1 base without losing all my data. Any help welcome here!

Cheers
 

Rocketval

Senior Member
Sep 26, 2013
603
139
Hey, Nope. SFDroid support is on my TODO list for now.

It may take a while though. I need a Multirom working with CM13.0(which is my primary ROM), so I can safely port all the needed changes for SFDroid to my CM12.1 base without losing all my data. Any help welcome here!

Cheers


Thank you!!! this is awesome!! :D :D :D
Almost everything it seems to be working :good:
Is it stable for daily use? :)
 

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
Thank you!!! this is awesome!! :D :D :D
Almost everything it seems to be working :good:
Is it stable for daily use? :)

Great!
Right now i don't think it's ready for daily use yet, as sometimes my device's sensors and audio stop working randomly. Not sure if it is just my device though (because of some weird hacks I've been using).

I suspect this maybe because the CM 12.1 zip i was using to boot differs from the sources I've used to compile this rom. Once that issue is fixed, i think this will be usable for daily use. Camera works, Browser works, basic apps work.. And compiling that cm 12.1 means even sfdroid will work ...
 
  • Like
Reactions: z3ki

Rocketval

Senior Member
Sep 26, 2013
603
139
Great!
Right now i don't think it's ready for daily use yet, as sometimes my device's sensors and audio stop working randomly. Not sure if it is just my device though (because of some weird hacks I've been using).

I suspect this maybe because the CM 12.1 zip i was using to boot differs from the sources I've used to compile this rom. Once that issue is fixed, i think this will be usable for daily use. Camera works, Browser works, basic apps work.. And compiling that cm 12.1 means even sfdroid will work ...

For what I know only few cm12 builds worked fine when flashed before sfos.. :confused:
Maybe you need another build.. I don't know..
 

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
For what I know only few cm12 builds worked fine when flashed before sfos.. :confused:
Maybe you need another build.. I don't know..

Could be. Most bugs i had to fix last week were because of differing versions too. That's why I'm trying to compile a cm12.1 right now.

Also right now as I'm on CM13.0, i was just using a system.img from the CM12.1.zip.. And making sailfish loop Mount that as the actual /system/ . not sure if that's causing any issues.

Right now my options are port multirom to CM13.0 (having some weird errors there) or wipe my device clean and downgrade to CM12.1 (have been trying to avoid this for months now!).
 
  • Like
Reactions: z3ki and Rocketval

Rocketval

Senior Member
Sep 26, 2013
603
139
Could be. Most bugs i had to fix last week were because of differing versions too. That's why I'm trying to compile a cm12.1 right now.

Also right now as I'm on CM13.0, i was just using a system.img from the CM12.1.zip.. And making sailfish loop Mount that as the actual /system/ . not sure if that's causing any issues.

Right now my options are port multirom to CM13.0 (having some weird errors there) or wipe my device clean and downgrade to CM12.1 (have been trying to avoid this for months now!).

Yeah, we definetely need multirom, with 64gb mi4w I have more than 32+ free and a lot of will to try :D
 
  • Like
Reactions: ar4er

adeen-s

Senior Member
Jul 5, 2013
89
118
As a temporary fix for radio, pulseaudio could be restarted, NOT as root.
Code:
 systemctl restart pulseaudio --user
 
Last edited:

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
As a temporary fix for radio, pulseaudio could be restarted, NOT as root.
Code:
 systemctl restart pulseaudio --user

I currently use this command everytime i wanted the FM radio to work. I will have to look into why this is failing by default though
Code:
$pactl set-source-port source.primary input-fm_rx
 

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
i cant undersatand for what need to flash cm-12.1? I cant flash clean sailfish.zip?
UPD can i flash gapps and supersu?

Due to legal reasons, Sailfish OS doesn't bundle the proprietary blobs(device drivers, system libraries etc..) provided by the phone vendors in it's zip.
As I have compiled Sailfish OS using sources from CM-12.1, it tries to access these proprietary files on your device via. CM-12.1 libraries. That's why you have to flash a CM-12.1 zip first, before flashing Sailfish OS. (i.e just clean flashing sailfish.zip won't work)

As of now, you don't have to flash gapps, as there is no way to use them from Sailfish OS. Once we get sfdroid running, we can run Android apps from within Sailfish OS, then you can flash gapps if you want.

Sailfish OS already comes with an su binary (accessed via. devel-su command) and full root access. So, you won't need Super SU.
 

Dr. Ramm

Senior Member
Jun 20, 2015
223
751
28
Moscow
vk.com
As I have compiled Sailfish OS using sources from CM-12.1, it tries to access these proprietary files on your device via. CM-12.1 libraries. That's why you have to flash a CM-12.1 zip first, before flashing Sailfish OS. (i.e just clean flashing sailfish.zip won't work)
got it
As of now, you don't have to flash gapps, as there is no way to use them from Sailfish OS. Once we get sfdroid running, we can run Android apps from within Sailfish OS, then you can flash gapps if you want.
Stock market not working (as u say in 1st post) but how i can install some apps?
Sailfish OS already comes with an su binary (accessed via. devel-su command) and full root access. So, you won't need Super SU.
nice
 

saidinesh5

Senior Member
Jul 13, 2016
93
227
saidinesh5.wordpress.com
  • Like
Reactions: z3ki and Dr. Ramm

Dr. Ramm

Senior Member
Jun 20, 2015
223
751
28
Moscow
vk.com
Last edited:
  • Like
Reactions: saidinesh5

Top Liked Posts

  • There are no posts matching your filters.
  • 36
    Introduction

    Sailfish OS is a mobile operating system combining the Linux kernel for a particular hardware platform use, the open-source Mer core middleware, a proprietary UI contributed by Jolla, and other third-party components.

    This is a port of Sailfish OS to cancro (Xiaomi Mi3/Mi4), based on CyanogenMod 12.1.

    What Works: https://wiki.merproject.org/wiki/Adaptations/libhybris#Smartphones (Check Xiaomi Mi3)

    Code:
    #include <std_disclaimer.h>
    /*
    * Your warranty is now void.
    *
    * I am not responsible for bricked devices, dead SD cards,
    * thermonuclear war, or you getting fired because the alarm app failed. Please
    * do some research if you have any concerns about features included in this ROM
    * before flashing it! YOU are choosing to make these modifications, and if
    * you point the finger at me for messing up your device, I will laugh at you.
    */

    Whats new:
    Updated to Sailfish 2.1.3.7

    Known issues:
    1) Wifi mac address not detected properly

    Current TODOs: Sailfish OS on cancro's Trello Board

    Download links:
    Cyanogenmod 12.1 base: https://www.androidfilehost.com/?fid=529152257862691291 (Mirroring this, as CM servers are shutting down)
    Sailfish OS rootfs: https://www.androidfilehost.com/?fid=817906626617953262

    Installation Instructions:
    NOTE: This release is also available as an OTA to existing users.
    1) Make sure your device has the new partition layout needed for Android M and a custom recovery. Boot to Recovery, wipe cache, dalvik-cache, system and data. ( https://jrizzoli.github.io/dotfiles/ )
    2) First install cm-12.1-20151117-SNAPSHOT-YOG7DAO1K6-cancro.zip As your base ROM, and make sure it works well.
    3) Then Install sailfishos-cancro-release-2.1.3.7-beta.zip on top of it. This will replace your boot image with sailfish boot image, and installs sailfish os to /data/.stowaways/sailfishos . The installation can take a little while, so be patient.
    If you are already running, CM12.1 YOG7D/already have SailfishOS installed, you can simply flash the Sailfish OS without wiping flash/partition.

    Big kudos to @mixmoto and Nokius, for patiently testing this release over and over.

    P.S Thank you all for your support. I really really appreciate it - and it's what motivated me to make some time in my busy days to create this release. Wish you all Happy Holidays!

    XDA:DevDB Information
    Sailfish OS for cancro, ROM for the Xiaomi Mi 3

    Contributors
    saidinesh5, Ar4er, Folks at #sailfishos-porters, especially @mal-
    Source Code: https://github.com/CancroSailors

    ROM OS Version: 5.1.x Lollipop
    ROM Kernel: Linux 3.4.x
    ROM Firmware Required: Must have CM12.1-YOG7D
    Based On: CyanogenMod 12.1-YOG7D

    Version Information
    Status: Alpha

    Created 2016-09-15
    Last Updated 2018-01-07
    10
    Hi, first of all thank you fot this porting! I use it for some days now and work very well! There are any news about version 2.1.0 and android support?

    Hi,

    Yes. I have compiled a 2.1 version and have been testing it privately for a while now. I hope to release it soon - once I add the changes needed by Anbox ( https://twitter.com/krnlyng/status/858992240408109057 ) to it. Anbox is basically the future of SFDroid. https://anbox.io/ gives you a better idea of what it is.
    In case, I run into any unseen complications, I will release 2.1 without Anbox in 10-15 days and push out an OTA with the needed changes for Anbox.

    Cheers!
    10
    Great work! Any updates are expected in the near future? And is there any chance to add support for android apps?
    And will there be a version based on CM 13?

    Hey,

    I actually silently pushed out an OTA a couple of weeks ago, after i fixed the boot loop issue on Mi3. I may push out 1-2 more OTAs after fixing the lingering little issues (nothing major). Otherwise anytime Jolla makes an update available in the next 1 year, I plan to make it available to you.
    Version based on CM 13 is a no go though. CM 14.1 maybe possible - especially with the Halium work someone is doing.
    Android apps - will have to port Ar4er's 3.10 kernel. Let's see how that goes. No promises though.

    Are there any specific issues you want to get fixed? Anything especially from this list? https://trello.com/b/rV0H5txC/sailfish-os-on-cancro

    Cheers,
    D
    8
    Hi all,

    Yep. the 2.1 version is finally released. This is mostly an update to Sailfish 2.1. It still has a few bootloops on Mi3. Hence I'm retaining the alpha tag for this version.
    Anbox support will still take some time. Hence releasing this update without it. Once done, It will be available as an OTA soon.

    Not exactly sure what the issue is - if it is the 3.4 kernel or something else. Has anyone tried out 3.10 kernel for cancro (even on CyanogenMod etc..)? Any idea on how stable it is? The only device Anbox currently seems to be working has a 3.10 kernel, so I am beginning to think it may have to do something with our 3.4 kernel.

    If anyone reading this wants to help out with the development, we need someone to add support for the IR blaster on the Mi4. It would need some basic C++/Qt knowledge, and lots of patience to develop. I am on an Mi3 which doesn't have the IR blaster. So I cannot push it forward. If anyone is willing, contact me. I can share info on how to proceed.
    Other than that, we really can use more people packaging more software for Sailfish. Packaging QtWebEngine - so we can have a better webview/browser, QtVirtualKeyboard - so we can replace the Sailfish keyboard with it.

    Cheers,
    D
    8
    Hi @saidinesh5
    How proceed your good work on sailfish for cancel devices?
    Thanks for your good work!!!

    Hi,

    I have compiled a 2.1 Early Access version for cancro 2 days ago. Right now testing it out and fixing bugs - So if all goes well, the 2.1 version should be available to general public once Sailfish OS 2.1 is released for general public. (We are not allowed to make a release until Jolla releases 2.1 to general public).

    As for SFDroid, my packaging script ( https://gist.github.com/saidinesh5/3262c31c88776445544c8b2804ee02df ) for SFDroid was used to get a basic version up and running on Xiaomi Redmi 2. But I am working on a different approach - to get SFDroid working inside a chroot. I think it will take a little longer to get it up and running this way, but it should let us start/stop sfdroid on demand, and also let SFDroid not mess up your phone's data partition. (So far I have corrupted my phone's data a bunch of times when trying to get SFdroid up and running!).

    P.S Right now I would really appreciate if the Android devs in here to help me debug the issues with SFdroid - where zygote is crashing with: F/art ( 9925): art/runtime/jni_internal.cc:769] JNI FatalError called: Native registration unable to find class 'com/android/internal/os/RuntimeInit'; aborting...