HALIUM, LIBHYBRIS AND FRIENDS
Several OSes, including non-legacy UBports images, are based on a remarkable bit of software called Halium. Halium provides a unified hardware abstraction layer (HAL, geddit?) on top of the vendorprovided Android kernel. Coupled with some Systemd gymnastics and Libhybris, which communicates directly with binary blob bits of Android, this allows developers to build new flavours of mobile Linux from a common base. Halium thus aims to reduce the oft-decried fragmentation in the mobile Linux ecosystem. It works its magic via an LXC container running a minimal version of Android. Libhybris then marshals communication with the Android libraries (built with Google’s Bionic) and Glibc libraries on the underlying Linux system.
Early Nokia smartphones (notably the classic N900 from 2009, see over there on the right) shipped with a Linux-based OS called Maemo. Maemo was largely based on open source projects, but included some proprietary code. The community was key to developing it, under Nokia’s stewardship, and it fuelled the vision that one day our phones could run free software without compromise. That may not have fructified yet, but there is hope. Today, long after Nokia largely abandoned Maemo (being forced by Microsoft to sell Windows Phones in 2011), there is still a community dedicated to Maemo. Namely Maemo Leste, which runs an upstream kernel and is based on Devuan (the distro that most has it in for Systemd).