Disclaimer: We may earn a commission when you purchase products linked throughout our site.

DigitalOcean โ€” Cloud hosting for developers
Run Android Apps on Ubuntu in 2026 with Waydroid

Run Android Apps on Ubuntu in 2026 with Waydroid

Install and configure Waydroid on Ubuntu 24.04 to run Android apps natively using a container-based approach, with GPU acceleration and Google Play setup.

Running Android apps on a Linux desktop has gone from “technically possible but awful” to “genuinely usable” thanks to Waydroid, a container-based Android runtime that uses the host Linux kernel to run a full Android system without the overhead of an emulator. On Ubuntu 24.04 with a Wayland session, Waydroid delivers hardware-accelerated Android 13, windowed app support, clipboard sharing, and even Google Play Store access โ€” provided you are willing to spend fifteen minutes on setup. This guide covers the full installation, GPU passthrough configuration, Play Store integration, and the real-world limitations we have encountered after six months of daily use. If you have ever wanted to run a specific Android-only app on your Ubuntu desktop, Waydroid is the most practical path.

What Waydroid Is (and Is Not)

Waydroid runs a full Android system image inside a Linux container (LXC), sharing the host kernel. This means:

  • It is not an emulator. There is no ARM-to-x86 translation (unless you add a translation layer). Android apps compiled for x86_64 run natively. ARM-only apps require additional setup.
  • It requires Wayland. Waydroid renders through the Wayland compositor โ€” it does not work on Xorg sessions. If you are running GNOME on Ubuntu 24.04, the default session is Wayland, so you are fine.
  • It uses your GPU directly. Android apps get hardware-accelerated rendering through Mesa’s Virgl or native GPU drivers.

The result is performance that feels close to a real Android device โ€” smooth scrolling, responsive UI, and decent gaming performance for 2D and lightweight 3D titles.

Prerequisites

Before installing:

  1. Wayland session: Verify with echo $XDG_SESSION_TYPE โ€” must return wayland
  2. Linux kernel with binder support: Ubuntu 24.04’s default kernel includes the necessary binder and ashmem modules
  3. GPU drivers: Intel and AMD work out of the box. Nvidia support requires additional steps (see below)

Installation

Method 1: Official Waydroid Repository

sudo apt install curl ca-certificates
curl -s https://repo.waydro.id | sudo bash
sudo apt install waydroid

Method 2: Ubuntu Repository (Simpler)

Ubuntu 24.04 includes Waydroid in the universe repository:

sudo apt install waydroid

The repository version may be slightly behind the official Waydroid repo, but it receives security updates through Ubuntu’s package management.

Initialize Waydroid

sudo waydroid init

This downloads a LineageOS-based Android system image (~800 MB). For a GAPPS (Google Apps) image:

sudo waydroid init -s GAPPS

The GAPPS variant includes the Google Play Store, Play Services, and other Google apps. Without it, you are limited to F-Droid or sideloading APKs.

First Launch

waydroid show-full-ui

This opens Android in a window. The first boot takes 30โ€“60 seconds as the Android system initialises. Subsequent launches are much faster.

To run a specific app in its own window (multi-window mode):

waydroid app launch com.package.name

Accessing the App Drawer

On first boot, you will see the LineageOS home screen. Swipe up to access the app drawer, or use the navigation buttons at the bottom.

Installing the Google Play Store (If Not Using GAPPS Image)

If you initialised without GAPPS but want Google Play:

sudo waydroid init -f -s GAPPS

The -f flag forces a re-initialisation, replacing the existing image.

After rebooting Waydroid, open the Play Store. You will need to register your device’s Android ID with Google:

sudo waydroid shell
ANDROID_RUNTIME_ROOT=/apex/com.android.runtime ANDROID_DATA=/data ANDROID_TZDATA_ROOT=/apex/com.android.tzdata sqlite3 /data/data/com.google.android.gsf/databases/gservices.db "select * from main where name = 'android_id';"

Copy the ID and register it at Google’s device registration page from a browser on your Ubuntu desktop.

GPU Acceleration

Intel and AMD

Hardware acceleration works automatically through Mesa’s Virgl (virtual GPU) driver. Android apps render using OpenGL ES, which Virgl translates to the host GPU’s Vulkan or OpenGL capabilities.

Verify acceleration is working:

waydroid shell
dumpsys SurfaceFlinger | grep GLES

You should see your actual GPU mentioned, not “SwiftShader” (which indicates software rendering).

Nvidia

Nvidia GPU support in Waydroid is experimental. The proprietary driver does not support Virgl. You have two options:

  1. Use the nouveau driver (open source, limited performance): Switch to nouveau for the Waydroid session
  2. Use Nvidia’s open kernel module with the latest driver (550+): Some users report success, but it is not guaranteed

For most Nvidia users, the practical approach is to run Waydroid on a secondary Intel/AMD GPU if your machine has one (common on laptops with hybrid graphics).

Useful Configuration

Clipboard Sharing

Enable clipboard sharing between Android and Ubuntu:

waydroid prop set persist.waydroid.clipboard_sharing true
waydroid session stop
waydroid session start

Network Access

Waydroid creates its own network bridge. If Android apps cannot access the internet:

sudo waydroid shell
settings put global captive_portal_detection_enabled 0

Running ARM Apps (Translation Layer)

Many Android apps are compiled only for ARM. To run them on x86_64:

sudo waydroid shell

Install libhoudini (Intel’s ARM translation library) through the Waydroid extras script available in the Waydroid community tools repository. This enables most ARM apps to run, though with some performance penalty.

Real-World Performance

On a Ryzen 7 7840HS with Radeon 780M (integrated GPU), running Ubuntu 24.04 Wayland:

  • Productivity apps (banking apps, WhatsApp, Kindle): Work perfectly, feel native
  • 2D games (Wordle, crossword puzzles): Smooth, no issues
  • 3D games (lightweight): Playable with occasional frame drops
  • Heavy 3D games (Genshin Impact, etc.): Not practical โ€” these need a real Android device or dedicated emulator

Limitations to Know

  • Camera passthrough: Not supported. Apps that require a camera will not work.
  • Bluetooth: Android apps cannot access the host’s Bluetooth directly.
  • Notifications: Work within the Waydroid window but do not integrate with GNOME’s notification system.
  • DRM content: Some streaming apps (Netflix, Disney+) detect Waydroid as an “uncertified device” and refuse to play protected content.