Comment by sillystuff

1 year ago

Apparently Sailfish is using libhybris.

I looked at the libhybris page and a few other sources, but am unsure how much of Android is implied when using libhybris. Random person on Internet claimed it is a minimal, but complete, Android user space install, but my reading of the libhybris page doesn't seem to imply that. The libhybris page does imply some of Android user space. A (probably out of date) Android kernel with all the OOT binary blob drivers Android is famous for, seems like it would also be a requirement.

Am I misunderstanding how bad this is? Or, is Sailfish rather than being a real alternative to Android just helping to entrench the terrible situation with Android Linux kernels?

The Sailfish guys are actually the creators of libhybris.

If you run SailfishOS you have to first have Android flashed onto the phone. They use the same kernel, camera drivers, GPU drivers, etc as the original OEM including the prorprietary wireless BLOBs and the Android Radio-Interface-Layer ("RIL").

I've spoken to the Sailfish guys awhile back and I get why they did this -- 10+ years ago there was basically no choice but to use the Android port of drivers + the Linux kernel the vendor shipped because there was no other way to make these hardware pieces work, thanks to the silicon vendors.

The story of not needing BLOBs and things like a libhybris-shim has slowly improved, but not 100% . We can run Debian linux on the Qualcomm Snapdragon laptop devices (Thinkpad X13s, etc) but bits and pieces are still not there (audio, full power management, Bluetooth, etc).

To current Qualcomm's credit there are people inside who are pushing for everything mainline Linux, and minimizing proprietary pieces.

Ubuntu Touch relies on libhybris as well.

  • Libhybris is great for making a tech demo. I wouldn't base a product on such hack, anymore than sell Linux laptops with ndiswrapper...

    If something doesn't work in the binary android drivers, the vendor won't help you (we support only android, sir). Nor can you fix the drivers yourself, because you don't have the sources or the knowledge how drivers work.

    • All the phones sold with Sailfish OS & all the officially supported Xperias used libhybris - same with most unofficial ports. While not ideal, it works reasonably well - saying that as someone who has been using a Sailfish OS device as primary phone since 2013.

    • "and yet, it works". To this day my Jolla is the best phone I had, always fluid and reactive compared to much more recent and powerful Android phones. I don't remember any driver issue with it.

Android apps on Sailfish were rarely usable, if they worked at all. One issue I remember, because it caused us a lot of grief was GPS.

The android app would not get an accurate fix unless a Sailfish app first woke up the GPS and obtained an accurate lock.

  • Well, again, while not covering all aspects of mobile apps, it could run Android apps at a time no other mobile Linux (or any other non-Android device could do it).