Thursday, December 19, 2024

Google is preparing to let you run Linux apps on Android, just like Chrome OS

Must read

Mishaal Rahman / Android Authority

TL;DR

  • Google is developing a Linux terminal app for Android.
  • The Terminal app can be enabled via developer options and will install Debian in a virtual machine.
  • This app is likely intended for Chromebooks but might also be available for mobile devices, too.

Although a lot of work can be done in a web browser these days, some tasks still require installing apps that aren’t available on Chrome OS, which is why Google lets you install Linux apps on your Chromebook. While there are ways to run some Linux apps on Android devices, all of those methods have some limitations and aren’t officially supported by Google. Fortunately, though, Google is finally working on an official way to run Linux apps on Android.

You’re reading an Authority Insights story. Discover Authority Insights for more exclusive reports, app teardowns, leaks, and in-depth tech coverage you won’t find anywhere else.

Engineers at Google started work on a new Terminal app for Android a couple of weeks ago. This Terminal app is part of the Android Virtualization Framework (AVF) and contains a WebView that connects to a Linux virtual machine via a local IP address, allowing you to run Linux commands from the Android host. Initially, you had to manually enable this Terminal app using a shell command and then configure the Linux VM yourself. However, in recent days, Google began work on integrating the Terminal app into Android as well as turning it into an all-in-one app for running a Linux distro in a VM.

A set of patches under the tag “ferrochrome-dev-option” was recently submitted to AOSP that adds a new developer option called Linux terminal under Settings > System > Developer options. This new option will enable a “Linux terminal app that runs inside the VM,” according to its proposed description. Toggling this option enables the Terminal app that’s bundled with AVF.

Android Linux Terminal app

Currently, Android’s Terminal app still requires you to manually configure the Linux VM by providing a Debian image and creating a vm_config.json file, but Google plans to upgrade the Terminal app to take care of that for you. In one of the patches under the “ferrochrome-dev-option” tag, Google says that the existing “LinuxInstaller” app, which downloads and configures Debian to run in a VM through AVF, will be “merged to [the] terminal app soon.” This suggests that the Terminal app will become an all-in-one app that downloads, configures, runs, and interfaces with an instance of Debian running in a VM.

AOSP patch to add Terminal app to developer options

Mishaal Rahman / Android Authority

Google is still working on improving the Terminal app as well as AVF before shipping this feature. AVF already supports graphics and some input options, but it’s preparing to add support for backing up and restoring snapshots, nested virtualization, and devices with an x86_64 architecture. It’s also preparing to add some settings pages to the Terminal app, which is pretty barebones right now apart from a menu to copy the IP address and stop the existing VM instance. The settings pages will let you resize the disk, configure port forwarding, and potentially recover partitions.

AOSP patch to add settings to Terminal app

Mishaal Rahman / Android Authority

What’s particularly interesting about the patch that adds these settings is that it was tested on “tangorpro” and “komodo,” the codenames for the Pixel Tablet and Pixel 9 Pro XL respectively. This suggests that the Terminal app won’t be limited to Chromebooks like the new desktop versions of Chrome for Android. I don’t know when the Terminal app will land, but it’s possible we could see it arrive in next year’s Android 16 update.

Here’s an early look at how this could work, courtesy of an anonymous developer. What you see below features the current version of the Terminal app, which lacks some of the automations we’re expecting. That’s why you’ll see LinuxInstaller involved at the beginning here, to help set things up:

If you’re wondering why you’d want to run Linux apps on Android, then this feature is probably not for you. Google added Linux support to Chrome OS so developers with Chromebooks can run Linux apps that are useful for development. For example, Linux support on Chrome OS allows developers to run the Linux version of Android Studio, the recommended IDE for Android app development, on Chromebooks. It also lets them run Linux command line tools safely and securely in a container.

Most Chromebooks have x86-based processors, as opposed to most Android devices which have ARM-based ones, so a lot of Linux apps that work on most Chromebooks (like Android Studio) might not work on most Android devices. Still, adding support for Linux apps will greatly improve the utility of Android to developers and make it more viable as a desktop-class platform in the future, especially as more and more apps add support for ARM. Plus, it’s necessary for Google to do as Chrome OS is becoming more like Android, which means it’s adopting more and more of Android’s architecture and frameworks.

Got a tip? Talk to us! Email our staff at news@androidauthority.com. You can stay anonymous or get credit for the info, it’s your choice.

Latest article