PostmarketOS

postmarketOS
DeveloperpostmarketOS open-source community
OS familyLinux (Unix-like)
Working stateActive
Source modelOpen source
Initial release26 May 2017; 7 years ago (2017-05-26)
Latest release24.06 (The One With Over 250 Devices)[1] / 16 June 2024; 4 months ago (2024-06-16)
Repository
Marketing targetOperating system replacement for Android and other mobile devices
Available inEnglish, Czech, German, French, Italian, Spanish, etc.
Update methodapk-tools (package manager)
Package managerapk-tools (from Alpine Linux)
PlatformsARM, ARM64, x86, x86-64
Kernel typeMonolithic (Linux)
Default
user interface
Phosh, Sxmo, Plasma Mobile
Official websitepostmarketos.org

postmarketOS (abbreviated as pmOS) is an operating system primarily for smartphones, based on the Alpine Linux distribution.[2][3][4][5]

postmarketOS was launched on 26 May 2017[3][6] with the source code available on GitHub before migrating to GitLab in 2018.[7] It is capable of running different X and Wayland based user interfaces, such as Plasma Mobile,[8][9] MATE, GNOME 3, and XFCE;[10] later updates added support for Unity8 and Phosh.[11] It is also capable of running Docker, if the device specific kernel has cgroups and relevant configs enabled.[12] The project aims to provide a ten-year lifecycle for smartphones.[13]

Architecture

Unlike many other projects porting conventional Linux distributions to Android phones, postmarketOS does not use the Android build system or userspace.[14] Each phone has only one unique package, and flashable installation images are generated using the pmbootstrap tool.[3] The project intends to support the mainline Linux kernel on all phones in the future, instead of the often outdated Android-specific fork, to reduce the potential for security exploits.[3] A few devices can boot into the mainline kernel already.[15][16] The project aims to support Android apps, originally through the use of Anbox, which was replaced by Waydroid since postmarketOS v21.12.[17][18]

Alpine Linux was chosen as the base distribution due to its low storage requirements, making it more suitable for older devices. Excluding the kernel, a base installation takes up approximately 6 MB.[19][3][20] In March 2024, the maintainers announced that postmarketOS would migrate from OpenRC to systemd as its init system for select user interfaces.[21]

State of development

As of 2024, it is work-in-progress software intended for power users.[22]

Features

Different tools have been published by the project, including:

  • pmbootstrap,[23][24] a utility to help the process of development with cross compilation;
  • osk-sdl,[25][26] a virtual keyboard to allow decryption of a password during startup (on a device with full disk encryption);
  • charging-sdl,[27] an application contained in the initramfs to display an animation when the phone is charging while off.

Device support

As of May 2020, over two hundred devices are able to boot the operating system, including 92 with WiFi support.[28][29] This includes many smartphones and tablets that originally ran Android,[30][31] as well as some Linux-based Nokia smartphones, such as the N900[32] and N9.[33][15] After Corellium's Project Sandcastle ported the Linux kernel to some iPhone versions, postmarketOS was also seen to boot on it, although no persistent flashing is supported at the moment.[34] As of May 2021, support for wearable devices (including Google Glass and smartwatches like the LG G Watch) has been improved through integration with the AsteroidOS user interface and work on mainline kernel for the LG G Watch R.[35]

In 2018, no devices were yet able to make phone calls with postmarketOS,[36] although significant efforts were being made in this regard. By 2020, a number of devices were fully or mostly supported, including for phone calls, SMS messages and mobile data. These included the BQ Aquaris X5, Librem 5, Nokia N900, Motorola Moto G4 Play, Samsung Galaxy A3 (2015), Samsung Galaxy A5 (2015), and Wileyfox Swift.[37]

Furthermore, the PinePhone launched in 2020, with postmarketOS Community Edition as a first-party operating system.[38]

Porting to a new device

The development process to make a new device compatible with the operating system consists of creating a phone-specific package using the pmbootstrap tool. For that, the use of the Linux kernel from the device's original manufacturer is often necessary. The source code of the original kernel is often made available by compliance with the requirements of the GPLv2 license, but some drivers necessary for the operation of the device may not be available, and must, therefore, be recreated.[39][23] Examples include GPU drivers such as Lima, which has a proprietary equivalent in userspace on Android that is not subject to the GPLv2 requirements.

Camera support

Only the PinePhone[40] and few others devices seems to have the camera working. It's in WIP for the Fairphone.

Voice Over LTE (VoLTE) and Voice over Wifi (Vowifi) support

OnePlus6 is WIP for Volte support.[41]

See also

References

  1. ^ "v24.06: The One With Over 250 Devices". postmarketOS. 16 June 2024. Retrieved 18 June 2023.
  2. ^ Staff, OSNews. "100 days of postmarketOS". www.osnews.com.
  3. ^ a b c d e "Aiming for a 10 year life-cycle for smartphones". postmarketos.org.
  4. ^ "PostMarketOS Saves Old Smartphones". Hackaday. 2018-01-09. Retrieved 2018-01-29.
  5. ^ DistroWatch. "DistroWatch.com: Put the fun back into computing. Use Linux, BSD". distrowatch.com.
  6. ^ Ward, Craig (3 January 2018). "PostmarketOS team makes progress towards goal of 10 year smartphone lifecycle - NotebookCheck.net News". Notebookcheck.net. Retrieved 2018-01-29.
  7. ^ "postmarketOS is #movingtogitlab". postmarketos.org.
  8. ^ "Get Plasma Mobile". plasma-mobile.org.
  9. ^ Shah, Bhushan (20 November 2017). "14:00 Plasma Mobile". Akademy 2017.
  10. ^ Verma, Adarsh (2 January 2018). "postmarketOS--A Linux Distro For Smartphones--Now runs Plasma/Lune UI/Xfce On Real Devices".
  11. ^ "600 days of postmarketOS".
  12. ^ "User talk:Docker - postmarketOS". wiki.postmarketos.org. Retrieved 2020-11-18.
  13. ^ "Linux-based postmarketOS project aims to give smartphones a 10-year lifecycle". Linux Today. 2017-08-17. Archived from the original on 2019-04-04. Retrieved 2018-01-29.
  14. ^ "PostmarketOS: Linux for phones and more [LWN.net]". lwn.net. Retrieved 2024-07-13.
  15. ^ a b "219 days of postmarketOS". postmarketos.org.
  16. ^ Brown, Eric (29 September 2017). "New mobile Linux contenders keep the dream alive".
  17. ^ "postmarketOS // in 2020-02". postmarketos.org. Retrieved 2020-04-07.
  18. ^ "Anbox - postmarketOS".
  19. ^ "Librem 5 Leads New Wave of Open Source Mobile Linux Contenders | Linux.com | The source for Linux information". Linux.com. 2017-09-29. Retrieved 2018-01-29.
  20. ^ "postmarketOS is a Touch-Optimized Linux Distro for Portable Devices". Xda-developers.com. 2017-09-05. Retrieved 2018-01-29.
  21. ^ Proven, Liam (11 March 2024). "Linux for older phones postmarketOS changes its init system". The Register. Retrieved 24 June 2024.
  22. ^ "postmarketOS // State of postmarketOS". postmarketOS. Retrieved 9 February 2024.
  23. ^ a b Chapman, Christian (2017-08-17). "Porting PostmarketOS to the Motorola Photon Q". Public.asu.edu. Archived from the original on 2017-10-28. Retrieved 2018-01-29.
  24. ^ "pmbootstrap: Sophisticated chroot/build/flash tool to develop and install postmarketOS". postmarketOS. 2018-01-27. Retrieved 2018-01-27.
  25. ^ "Mobile - Debian Wiki". Wiki.debian.org. 2017-12-31. Retrieved 2018-01-29.
  26. ^ "SDL2 On-screen Keyboard". postmarketOS. 2017-12-31. Retrieved 2018-01-27.
  27. ^ "SDL2 charging application for the initramfs". postmarketOS. 2017-12-23. Retrieved 2018-01-27.
  28. ^ "Supported devices". 16 May 2020.
  29. ^ "postmarketOS now boots on over 200 phones and tablets". 16 May 2020.
  30. ^ "Why Mobile Linux Fails - Datamation". www.datamation.com. 11 September 2017.
  31. ^ "Weekly Linux News – January 2, 2018 Lunduke.com". Archived from the original on April 20, 2018. Retrieved January 29, 2018.
  32. ^ "Telefonni revoluce se blizi | OpenAlt 2017 - video zц║znamy a slajdy". Superlectures.com. 2017-11-05. Retrieved 2018-01-29.
  33. ^ "Devices - postmarketOS". wiki.postmarketos.org.
  34. ^ "Running postmarketOS on iPhone 7 – project-insanity.org". 16 April 2020. Retrieved 2020-04-18.
  35. ^ "postmarketOS is finally coming to wearables". TuxPhones. 3 May 2021. Retrieved 7 May 2021.
  36. ^ "PostmarketOS can run on older gadgets but with limited features". 5 January 2018.
  37. ^ "Devices - postmarketOS".
  38. ^ "Linux PinePhone 'Community Edition' with postmarketOS: All You Need to Know". 16 June 2020.
  39. ^ "Porting to a new device - postmarketOS". wiki.postmarketos.org. Retrieved 2018-01-27.
  40. ^ "PINE64 PinePhone (pine64-pinephone) - postmarketOS Wiki". wiki.postmarketos.org. Retrieved 2024-07-13.
  41. ^ "VoLTE support for the OnePlus 6 (#1878) · Issues · postmarketOS / pmaports · GitLab". GitLab. Retrieved 2024-07-13.