LineageOS
LineageOS is an operating system for smartphones, tablet computers, and set-top boxes, based on Android with mostly free and open-source software. It is the successor to the custom ROM CyanogenMod, from which it was forked in December 2016 when Cyanogen Inc. announced it was discontinuing development and shut down the infrastructure behind the project. Since Cyanogen Inc. retained the rights to the Cyanogen name, the project rebranded its fork as LineageOS.
LineageOS was officially launched on 24 December 2016, with the source code available on both GitHub and GitLab. As with all versions of Android, operating system releases are specific to a single model. Since its launch, LineageOS development builds are available for 109 phone models with over 1.7 million active installs, having doubled its user base in the months February–March 2017.
Background
was a popular open-source operating system for smartphones and tablet computers, based on the Android mobile platform. Although only a subset of total CyanogenMod users elected to report their use of the firmware, as of 23 March 2015, some reports indicated over 50 million people running CyanogenMod on their phones. It was also frequently used as a starting point by developers of other ROMs.In 2013, the founder, Steve Kondik, obtained venture funding under the name Cyanogen Inc. to allow commercialization of the project. In his view, the company did not capitalize on the project's success and in 2016 he either left or was forced out as part of a corporate restructure which involved a change of CEO, closure of offices and projects, and cessation of services. The code itself, being both open source and popular, was quickly forked under the new name LineageOS and efforts began to resume development as a community project.
CyanogenMod offered a number of features and options not available in the official firmware distributed by most mobile device vendors. Features supported by CyanogenMod included native theme support, FLAC audio codec support, a large Access Point Name list, Privacy Guard, support for tethering over common interfaces, CPU overclocking and other performance enhancements, root access, soft buttons and other "tablet tweaks," toggles in the notification pull-down, and other interface enhancements. Many of the features from CyanogenMod were later integrated into the official Android code base. CyanogenMod's developers said that it did not contain spyware or bloatware. CyanogenMod was also said to perform better and be more reliable than official firmware releases.
Development
Like CyanogenMod, the LineageOS project is developed by many device-specific maintainers and uses Gerrit for its code review process. It also retained the old versioning format.Prior to the official launch of LineageOS, many developers from XDA had already developed unofficial versions of LineageOS from the source code.
- On 22 January 2017, the first 14.1 and 13.0 official builds started to be made available, following the official announcement in a blog post.
- On 11 February 2018, the 13.0 builds were stopped, while the source code remains available and security fixes are still accepted on Gerrit.
- On 26 February 2018, the first 15.1 official builds started to be available on certain devices, following official announcement in a blog post. The 14.1 versions of Lineage OS were to remain in active development, but without feature advancements.
- On 24 February 2019, the 14.1 builds were stopped and 15.1 builds moved to a weekly cadence
- On 1 March 2019, the first 16.0 official builds started to be available, following official announcement. The 15.1 branch remains in active development, but without feature advancements.
- On 28 February 2020, the 15.1 builds were stopped in preparation for the 17.1 release.
- On 1 April 2020, the first 17.1 builds started to be available, following official announcement. The 16.0 builds are moved to a weekly cadence while the branch remains in active development, but without feature advancements.
Builds were released on a weekly basis until 12 November 2018, when the release cycle for devices has changed: the latest LineageOS branch is built daily, with devices receiving a "nightly" OTA update, while devices on the older branch are were moved to a weekly release cycle.
Community
LineageOS allows the community to get involved with the development in various ways. Gerrit is used for the code review process of both the operating system and the infrastructure.The wiki, containing information regarding installation, support, and development of LineageOS, is also open to contributions through Gerrit. Other Lineage platforms include Crowdin for managing translations, Gitlab Issues for bug tracking, and a stats page, which displays the number of active installations from users which opt-in to report this statistic. There is also an official subreddit, r/lineageos, and two IRC channels hosted on Freenode.
The XDA Developers forums have been used by members of the Lineage community since the first inception of the software, many devices are left unsupported by official releases so community members develop their own Unofficial-ROMs that allow older phones to use Lineage. These unofficial releases are often bundled with software intended to aid the user's experience that would otherwise be unseen in an official release. They also come with known bugs and security issues that may not be seen in official releases.
During August 2017 the LineageOS team held a Summer Survey in which they asked users for feedback to improve the development of the operating system. The results were published in October and, according to the team, they used the gathered data to improve the upcoming LineageOS 15 release. The second Summer Survey was conducted in August 2018.
As a response to one of the main suggestions received during their first public survey, LineageOS launched a section on their blog titled "LineageOS Engineering Blog" where Lineage maintainers and developers can contribute articles discussing advanced technical information pertaining to Android development.
LineageOS is also known for posting a "regularly irregular review" on its blog in which the active development of the work is discussed.
Version history
Preinstalled apps
LineageOS includes many essential and useful apps, but like its predecessor, CyanogenMod, it is free from unnecessary software often pre-installed by a phone's manufacturer or carrier that is considered to be bloatware.Current
- AudioFX – Audio optimizer with presets to alter the listening experience.
- Browser – A lightweight browser that relies on the System Webview, for low-end devices, also known as Jelly.
- Calculator – which resembles a four-function calculator and offers some more advanced functions.
- Calendar – Calendar functionality with Day, Week, Month, Year or Agenda views.
- Camera – Dependent on device specification will take video or photos, including panoramic. It can also be used to read QR codes. This app is also known as Snap.
- Clock – World clock, countdown timer, stopwatch and alarms.
- Contacts – Phonebook for numbers and email addresses.
- cLock - A weather widget.
- Email – Email client that handles POP3, IMAP and Exchange.
- Files – A simple file manager to move, copy and rename files on internal storage or SD card.
- FlipFlap – An app for smart flip covers, only included on select devices.
- FM Radio - An app for listening to FM radio broadcasts, included on devices with an FM tuner.
- Gallery – Organize photos and videos into a timeline or albums for easy viewing.
- Messaging –An MMS/SMS messaging app.
- Music – A simple music player, also known as Eleven.
- Phone – for making calls: includes speed dial, phone number lookups and call blocking.
- Recorder – A screen and/or sound recorder.
- Trebuchet – A customizable launcher.
- Terminal - A simple and standard terminal app.
- Gello - A browser based on Chromium and developed by CyanogenMod. This app is now replaced by Jelly.
- Yahoo Weather Provider - A weather provider
- WeatherUnderground Weather Provider - A weather provider
- Themes - Originally an app by itself, now integrated into the settings app.
Unique features
LineageOS offers several features that Android Open Source Project does not include. Some of these features are:Customization features
- Button customization – Set custom location for buttons on the navigation bar, or enable on-screen buttons for devices with hardware buttons.
- Custom Quick-Setting tiles – Quick Setting Tiles such as "Caffeine" preventing the device from sleeping, enabling/disabling Heads Up notifications, "Ambient Display" and "ADB over network" are present to easily toggle frequently accessed settings.
- LiveDisplay – Adjust color temperature for the time of day.
- Lock screen customization – The lock screen allows all sorts of customizations, including media cover art, a music visualizer, and double-tap to sleep.
- Styles – Set a global dark or light theme mode and customize accent colors. This functionality can also be managed automatically by the system based on wallpaper or time of day.
- System Profiles – Enable or disable common settings based on the selected profile. The profile can be selected either manually or through the use of a "trigger", such as upon connecting to a specific WiFi access point, connecting to a Bluetooth device, or tapping an NFC tag.
- Custom pattern sizes – In addition to Android's 3x3 pattern size, a 4x4, 5x5 or 6x6 size can be used.
Security & privacy features
- PIN scramble – For users securing their device with a PIN, the layout can be scrambled each time the device locks to make it difficult for people to figure out your lock by looking over your shoulder.
- Privacy guard – Allow the user to fine-tune what permissions are granted to each application. For some permissions, it's possible to set a manual approval each time the permission is requested. It's also possible to find out how often apps use a specific permission. This feature was removed in the 17.1 branch in favor of an equivalent "permission controller" based on an hidden AOSP feature.
- Protected Apps – Hide specific apps behind a secure lock. This works hand-in-hand with Trebuchet; the app's icon is removed from the launcher, and "secure folders" can be created to easily access these applications. A pattern is used to lock these apps.
- Some "sensitive numbers", such as abuse support numbers, are not included in the call log for privacy.
- Trust - helps to keep the device secure and protects privacy.
Developers & power user features
- LineageSDK – a set of APIs for app developers to integrate their apps with LineageOS specific features such as System Profiles, Styles and Weather.
- Lineage Recovery - an AOSP-based recovery for devices with an A/B type system.
- Root – Permit apps to function with root access to perform advanced tasks. This requires flashing from Recovery either LineageOS's root add-on or a third-party implementation such as Magisk or SuperSU.
- Telephone call recorder, not available in all countries, due to legal restrictions.
- Weather providers – Display the weather in widgets or apps using a weather provider. This functionality is not included by default; a weather provider must be downloaded from the LineageOS Downloads website. App developers can create both providers and consumers of weather data.
Trust interface
Additionally, while carrying out any action on the device, the trust icon is displayed, notifying the user that the action is safe.
Supported devices
The number of devices supported by LineageOS increases with time, being 127 for v16 and v17.1 as of 2020. Official builds on currently supported development branches are labeled as either "nightly", "weekly", or "monthly". For the first two months of the project, parallel experimental builds were also produced, allowing in-place upgrades from previous CyanogenMod installations and easing migration to LineageOS.Criticism and reception
2018 April Fools' prank
LineageOS was criticized for a deceptive April Fool's prank included with some April 2018 builds.During the first week of April 2018 LineageOS released new builds with the "LOSGenuine" prank that informed unaware users of the software possibly being counterfeit via a persistent notification :
setprop persist.lineage.nofool true
When the notification was tapped, the software claimed that the device was "uncertified" and needed to mine "LOSCoins", which were a virtual currency and could not actually be spent. Affected builds also had a preinstalled "Wallet" app that showed the current balance of LOSCoins.
Many users mistook the prank for actual malware, and others reportedly found it to be in "poor taste". It was especially criticized for being too "late" for an April Fool's joke, since many users didn't receive the update until days later, making the jest less obvious. On 10 April 2018, LineageOS team director ciwrl issued an official apology for the deceptive prank.
Forks
is a completely free software variant of LineageOS, with all kernel blobs and non-free drivers removed.As a response to the refusal for several reasons of support for signature spoofing in official builds, a LineageOS fork with microG services included, known as "LineageOS for microG", was created. The project ships custom builds of LineageOS with the required patch and native F-Droid support, bundled with the MicroG project's free re-implementation of proprietary Gapps. In other respects it follows upstream, shipping OTA updates every seven days.
/e/ is a fork of LineageOS created by Gaël Duval that is intended to be "free from Google". It replaces Google Play Services with MicroG, a free and open-source implementation of Google APIs.