New Project Brings Android Apps to the Linux Desktop

The dream of being able to run Android apps on Linux distributions like Ubuntu is a step closer to reality, thanks to a promising new open-source project called ‘SPURV‘.

‘Wouldn’t it be great if you could run your favourite Android apps on Ubuntu, in windowed mode with native integrations?’

‘SPURV’ is an experimental containerised Android environment that can run Android apps alongside regular desktop Linux apps under Wayland.

It’s the work of Collabora, a UK-based open-source software consultancy and development outfit, who unveiled their experimental new project in a blog post.

Now, Linux isn’t short of native apps. There’s a wide array of native software and games available, including image editors, web browser, e-mail clients and social media apps.

But wouldn’t it be great if you could also tap in to the Android app ecosystem? Run your favourite Android apps on the Ubuntu desktop in windowed mode, with native integrations?

Well, the ‘SPURV’ project sets a foundation for precisely that.

An Anbox Alternative?

Anbox is the free software project you probably thought of when you read the headline above. It is the oft-mentioned solution give to the “how to run Android apps on Linux?” question when raised.

But for all the promise Anbox shows — which is plenty — it remains a) technically different and b) is some way off of being the user-friendly way to run .apk files on Linux system that many (myself included) would like it to be.

SPURV: Run Android Apps on Linux

The video demo above shows native Wayland Linux apps and an Android app running at the same time. It’s not polished or perfected, but shows what’s possible.

In some way SPURV appears similar to Bluestacks, an emulator that can run Android apps on Windows desktops in ‘windowed’ mode.

Like Bluestacks, SPURV creates an emulated Android device on your Linux system. But unlike Bluestacks it’s not an “all-in-one” runtime you can download and install.

SPURV is more a collection of tools that can be used to set-up an Android container, install Android apps inside of it, and then run those apps fullscreen on a Wayland Linux desktop on top of the host Linux kernel.

Technical wizardry allows Android apps to leverage hardware features of the underlying Linux system, such as the audio, network, and graphics stacks, as this diagram shows:

Diagram of how SPURV separates container, OS and kernelDiagram of how SPURV separates container, OS and kernel

The main “drawback” to SPURV is, like all virtualised/emulated experiences, the fact you’re running a full Android system on top of a full Linux system. Resource efficient this ain’t.

Collabora say the project aims to run “a single Android application full-screen” rather than lots of apps, windowed.

But that doesn’t preclude devs in the wider free software community from adapting the project to suit different use cases.

Google, by way of its successful Android for Chromebooks effort, shows us that containers and virtual environments can be tailored to run Android apps on top of Linux in a functional, performant and neatly integrated manner.

‘OS boundaries aren’t nearly as distinct now as they once were; no reason Linux shouldn’t join the fun’

Early Days for a Promising Project

OS boundaries aren’t nearly as distinct now as they once were. ChromeOS can run Android apps, Windows 10 can run native Linux CLI tools, and recent versions of macOS come pre-loaded with a selection of popular iOS software.

No reason why Linux shouldn’t join the fun, eh?

It’s early days for SPURV. The project only just been publicly announced. As such, there’s no neatly-packaged Flatpak or runtime to download and install on your system.

If you’re interested in learning more, getting involved with development, or building the project from source do check out the project’s Gitlab page for more info. There you’ll find source code and a guide on setting things up.

Do you want to run Android apps on the Linux desktop?

Also check out the Android x86 project