A big chunk of Fuchsia-related code has been removed from the Android Open Source Project (AOSP) this week, but Google’s two operating systems are still set to have an intertwining relationship.
In its most public form, Google’s in-house operating system, Fuchsia, powers two of the company’s smart displays, the Nest Hub and Nest Hub Max. But having watched it develop over the last few years, we know that Google has much larger ambitions for the Fuchsia project.
Easily the most ambitious of these is a clear intention for some Fuchsia devices to be able to run apps from other operating systems like Android and Linux. This could — in theory! — allow a Fuchsia-powered device to seamlessly replace a Chromebook or Android phone, keeping older apps running as normal.
There are a few ways to achieve that goal, one of Google’s earliest attempts was to run a full instance of the Android operating system in a virtual machine. This is how Chrome OS and Google Play Games for PC bring support for Android apps, but it comes with some potential performance drawbacks.
Another path that was explored involved a more direct relationship between Fuchsia and the Android Runtime. As spotted in 2019, Google created a project in public Android code (AOSP) that would create builds of the Android Runtime designed for Fuchsia devices.
Work on this Fuchsia project within Android — dubbed “device/google/fuchsia” — stalled in February 2021, with no public indication of how things were progressing. This week, all of the code for “device/google/fuchsia” was removed from Android, formally signaling the end of this particular avenue.
In its place, we have a lone “TODO” message, suggesting that Google may be building up something new in its place. The developer responsible for the change primarily works on Fuchsia’s “Starnix” project.
First shared in early 2021 as a proposal, Starnix is designed to make it possible for Fuchsia to “natively” run apps and libraries that were built for Linux or Android. To do this, Starnix would act to translate the low-level kernel instructions from what Linux expects to what Fuchsia’s Zircon kernel expects.
It’s now been over a year since the Starnix proposal was accepted and work began. In that time, the Fuchsia team has made significant progress in making Linux programs capable of running on Fuchsia devices.
In fact, a dedicated Starnix shell was briefly available for testing in builds of Fuchsia’s “workstation” — an experience designed to let developers and enthusiasts play with the operating system. Notably, this shell was not simply Linux but actually a “small Android distribution included in the system.” More recently, this was replaced with the ability to access Fuchsia and Starnix’s Android capabilities through the adb command, just like you would any other Android device.
Looking ahead, it seems Fuchsia’s Starnix team is focused on steadily making the operating system compatible with Android and its applications. One item on Fuchsia’s roadmap calls for better handling of Android’s “init” process.
Another roadmap item from June points to Google’s desire to “launch and run Clock app” correctly in Fuchsia, which could potentially refer to the Google Clock app or possibly the open source “Desk Clock” from AOSP. This particular item was hidden from the public shortly after publication, but we’ve preserved a screenshot below.
Altogether, it seems clear that Google’s Fuchsia team still has plans to grow beyond the smart home and make Fuchsia into a general-purpose operating system, complete with support for the massive catalog of Android apps. It still remains to be seen what sorts of devices Google intends to put these high-end Fuchsia capabilities on once they’ve been completed.
More on Fuchsia:
- Nest Hub Max adds Bluetooth settings menu with Fuchsia update
- Google is releasing Fuchsia for the Nest Hub Max, starting in Preview Program
- Original Nest Hub gets app launcher, Bluetooth menu with latest ‘Fuchsia version’ preview update
Author: Kyle Bradshaw
Source: 9TO5Google