# Porting Mobian to New Devices

DevFeed: [Porting Mobian to New Devices](<https://devfeed.tech/articles/porting-mobian-to-new-devices-34232.md>)

Original publisher: [Read original article](<https://blog.mobian.org/posts/2023/03/07/porting-to-new-devices/>)

Author: Mobian team

Published: 2023-03-07T00:00:00Z

Content type: article

Language: en

Sources: [Mobian's Blog](<https://devfeed.tech/sources/mobian-s-blog.md>)

Topics: [Mobile](<https://devfeed.tech/topics/mobile.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [Android](<https://devfeed.tech/topics/android.md>), [Debian](<https://devfeed.tech/topics/debian.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [boot](<https://devfeed.tech/tags/boot.md>), [compatibility](<https://devfeed.tech/tags/compatibility.md>), [debian](<https://devfeed.tech/tags/debian.md>), [drivers](<https://devfeed.tech/tags/drivers.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [maintenance](<https://devfeed.tech/tags/maintenance.md>), [porting](<https://devfeed.tech/tags/porting.md>), [security](<https://devfeed.tech/tags/security.md>)

## AI overview

The article explains why porting Mobian to new phones is difficult. Android-based phone kernels often differ from Mobile Linux, may be old and device-specific, and can have security and maintenance problems. Mobian therefore prefers compatible kernels and devices with good mainline support instead of relying on compatibility layers such as libhybris.

## Source excerpt

As Mobian (and Mobile Linux in general) has gotten more popular, many folks have started to ask if Mobian supports their particular phone. While we wish we lived in a world where installing Mobian to a new phone model was just as easy as installing Debian to a new laptop, things are (unfortunately) much more complicated than that. But my phone runs Android, and Android runs on Linux! It is true that Android is Linux-based, but Android Linux diverged from Mobile Linux a long time ago. Android Linux images are simply incompatible with Mobile Linux, unless several compatibilty layers are installed. In addition, the Android kernel shipped by manufacturers are based on LTS kernels, and consist of millions of lines of out of tree code. Much of this code cannot be upstreamed due to code quality, and sometimes the code is of dubious legal origin. The kernel that the phone is based off of is often ancient. In some cases, current devices might ship a version of Linux 3.19 which was released in 2015 and no longer gets updates from upstream. This poses two problems for us: 1) they are full of security flaws and 2) their API is oldish and different from what current Mobile Linux environments need (both because it is old API and because it provides Android-specific API). One would be stuck with a ancient and unmaintainable kernel that one could not improve and a kernel that provides an incompatible interface to Mobile Linux. Some distributions make that tradeoff and use these compatibility layers to bridge the interface between Android kernels and Mobile Linux. One such is libhybris. They basically choose to live with a kernel that one cannot modify and improve in a significant manner. In addition, many kernels are device specific1, which in turn creates a higher maintenance burden for every phone added. Adding the compatibility layer does provide an advantage in that the distribution can port to many more phones much quicker. Mobian's ultimate goal is to erase the differences be