# waydroid/waydroid

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/waydroid-waydroid).**

10,858 stars · 443 forks · Python · gpl-3.0

## Links

- GitHub: https://github.com/waydroid/waydroid
- Homepage: https://waydro.id
- awesome-repositories: https://awesome-repositories.com/repository/waydroid-waydroid.md

## Topics

`android` `linux`

## Description

Waydroid is a containerized mobile runtime that executes a full Android operating system directly on Linux desktop environments. By utilizing Linux kernel namespaces, it isolates the mobile environment while sharing the host kernel to provide native-like performance and hardware access for mobile applications.

The project distinguishes itself through deep integration with the host system, bridging mobile display buffers to native desktop windows and translating host input events into mobile gestures. It enables multi-window management, allowing mobile applications to run alongside native desktop software, and supports cross-architecture execution through integrated translation libraries.

The platform provides a comprehensive suite of command-line utilities for managing the container lifecycle, including system image compilation, environment initialization, and package management. It also offers granular control over hardware passthrough, graphics rendering, and system properties, ensuring compatibility across diverse hardware configurations.

The software includes diagnostic tools for verifying kernel compatibility and monitoring system health. Installation and configuration are handled through automated scripts that manage container setup and host-guest resource bridging.

## Tags

### DevOps & Infrastructure

- [Containerized Runtimes](https://awesome-repositories.com/f/devops-infrastructure/execution-environments/code-execution-runtimes/containerized-runtimes.md) — Executes a full mobile operating system within isolated container namespaces to provide native-like performance on desktop hardware. ([source](https://docs.waydro.id/readme.md))
- [System Image Generators](https://awesome-repositories.com/f/devops-infrastructure/system-image-generators.md) — Compiles custom system and vendor images from source code to prepare operating system files for deployment. ([source](https://docs.waydro.id/development/compile-waydroid-lineage-os-based-images.md))
- [Container Lifecycle Management](https://awesome-repositories.com/f/devops-infrastructure/container-lifecycle-management.md) — Provides commands to start, stop, or freeze background container services to control the operational state of a mobile instance. ([source](https://docs.waydro.id/usage/waydroid-command-line-options.md))
- [Host-Guest Mounts](https://awesome-repositories.com/f/devops-infrastructure/volume-mounts/host-guest-mounts.md) — Maps host directories into the container filesystem to allow shared storage access without duplicating data.
- [Installation Scripts](https://awesome-repositories.com/f/devops-infrastructure/installation-scripts.md) — Executes setup scripts to handle the configuration steps required to deploy a containerized mobile environment automatically. ([source](https://docs.waydro.id/faq/community-projects-we-like.md))
- [Custom Container Images](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/image-management-tools/custom-container-images.md) — Replaces default system and vendor images with user-provided versions by re-initializing the container environment. ([source](https://docs.waydro.id/faq/using-custom-waydroid-images.md))

### Mobile Development

- [Android Platform Integrations](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-platform-integrations.md) — Bridges containerized mobile runtimes with host system resources to enable seamless integration of mobile applications within a desktop environment. ([source](https://docs.waydro.id/readme.md))
- [Desktop Integration Layers](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-platform-integrations/desktop-integration-layers.md) — Runs Android applications directly on a Linux desktop by bridging the mobile runtime with host system resources and display protocols.
- [Mobile Application Runtimes](https://awesome-repositories.com/f/mobile-development/mobile-application-runtimes.md) — Provides a containerized environment that executes a full mobile operating system on Linux to run mobile applications on a desktop. ([source](https://docs.waydro.id/usage/install-on-desktops.md))
- [Package Managers](https://awesome-repositories.com/f/mobile-development/android-ecosystem/android-development/package-managers.md) — Provides utilities to install, remove, list, and launch mobile software within a containerized environment. ([source](https://docs.waydro.id/usage/install-and-run-android-applications.md))
- [Architecture Translation Libraries](https://awesome-repositories.com/f/mobile-development/architecture-translation-libraries.md) — Integrates translation libraries to run applications built for different processor architectures within a containerized mobile environment.
- [Peripheral Passthrough Controllers](https://awesome-repositories.com/f/mobile-development/native-modules-bridges/device-hardware-sdks/peripheral-passthrough-controllers.md) — Grants a mobile container direct access to hotplugged devices to improve peripheral support and hardware interaction. ([source](https://docs.waydro.id/usage/waydroid-prop-options.md))

### Operating Systems & Systems Programming

- [Mobile-to-Desktop Virtualization Layers](https://awesome-repositories.com/f/operating-systems-systems-programming/mobile-to-desktop-virtualization-layers.md) — Executes a full mobile operating system within a container to provide native-like access to hardware for mobile software.
- [Android Build Configurations](https://awesome-repositories.com/f/operating-systems-systems-programming/platform-development-integration/platform-integrations/android-build-configurations.md) — Builds and configures mobile operating system images from source to deploy tailored containerized environments on diverse hardware.
- [Host-Guest Integration Tools](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/host-guest-integration-tools.md) — Exposes Android inter-process communication mechanisms to the host system to enable seamless integration between guest and host services.
- [Hardware Passthrough](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-infrastructure/hardware-passthrough.md) — Directs graphics commands from the containerized environment to the host graphics driver for hardware-accelerated performance.
- [Hardware Abstraction Layers](https://awesome-repositories.com/f/operating-systems-systems-programming/hardware-interfacing-drivers/hardware-abstraction-layers.md) — Maps Android-specific hardware library calls to native Linux system interfaces to enable mobile driver functionality.
- [Host-to-Guest File Sharing](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/file-system-management/file-system-integration/host-to-guest-file-sharing.md) — Maps host directories into a container filesystem to allow seamless file access and transfer between the host and mobile environment. ([source](https://docs.waydro.id/faq/setting-up-a-shared-folder.md))
- [System Environment Customizers](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/system-administration-utilities/system-utilities/environment-configuration-tools/system-environment-customizers.md) — Applies modifications to a container environment to enable administrative access and install additional software packages. ([source](https://docs.waydro.id/faq/community-projects-we-like.md))
- [System Property Management](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/host-guest-integration-tools/guest-operating-systems/system-property-management.md) — Modifies internal system settings within a mobile environment to adjust the behavior and performance of the guest operating system. ([source](https://docs.waydro.id/usage/waydroid-command-line-options.md))
- [Virtual Machines](https://awesome-repositories.com/f/operating-systems-systems-programming/virtualization-emulation/virtualization-platforms/virtualization-technologies/virtual-machines.md) — Operates within virtualized environments by enabling software-based rendering or hardware-accelerated graphics passthrough. ([source](https://docs.waydro.id/faq/get-waydroid-to-work-through-a-vm.md))

### Programming Languages & Runtimes

- [Desktop and Native Integration](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/runtimes/desktop-and-native-integration.md) — Provides a bridge between host system resources and a mobile runtime to enable native-like hardware access and windowed application execution.

### Software Engineering & Architecture

- [Container Isolation](https://awesome-repositories.com/f/software-engineering-architecture/execution-control/namespace-isolation/namespace-provisioners/container-isolation.md) — Uses kernel namespaces to isolate the mobile operating system while sharing the host kernel for high performance.
- [Architecture Translation Layers](https://awesome-repositories.com/f/software-engineering-architecture/integration-extensibility/application-integration/architecture-translation-layers.md) — Integrates translation libraries to enable the execution of applications built for different processor architectures. ([source](https://docs.waydro.id/faq/community-projects-we-like.md))

### User Interface & Experience

- [Desktop Renderers](https://awesome-repositories.com/f/user-interface-experience/mobile-interfaces/desktop-renderers.md) — Displays a full-screen mobile environment on the desktop to create a dedicated workspace for interacting with mobile applications. ([source](https://docs.waydro.id/usage/install-on-desktops.md))
- [Multi-Window Controllers](https://awesome-repositories.com/f/user-interface-experience/window-management/multi-window-controllers.md) — Configures the mobile environment to launch individual applications in separate desktop windows to improve multitasking. ([source](https://docs.waydro.id/usage/install-on-desktops.md))
- [Input Mapping Tools](https://awesome-repositories.com/f/user-interface-experience/input-mapping-tools.md) — Translates host mouse and keyboard events into touch-screen input signals interpreted as native gestures.

### Networking & Communication

- [Display Protocol Bridges](https://awesome-repositories.com/f/networking-communication/distributed-systems-p2p/distributed-computing/communication-protocols/embedded-browser-bridge-protocols/display-protocol-bridges.md) — Translates mobile display buffers into native desktop windows by mapping guest surface outputs to host compositor surfaces.

### System Administration & Monitoring

- [Session Managers](https://awesome-repositories.com/f/system-administration-monitoring/session-managers.md) — Configures a dedicated desktop session that boots directly into a mobile interface using a chosen display compositor. ([source](https://docs.waydro.id/faq/setting-up-waydroid-only-sessions.md))
- [Display Configuration Managers](https://awesome-repositories.com/f/system-administration-monitoring/display-configuration-managers.md) — Adjusts resolution, window integration, and input behavior to align a mobile environment with host desktop display settings. ([source](https://docs.waydro.id/usage/waydroid-prop-options.md))
- [System Command Launchers](https://awesome-repositories.com/f/system-administration-monitoring/system-command-launchers.md) — Runs shell commands and retrieves system logs directly from a mobile environment to facilitate debugging and interaction. ([source](https://docs.waydro.id/usage/waydroid-command-line-options.md))

### Development Tools & Productivity

- [Environment Initialization](https://awesome-repositories.com/f/development-tools-productivity/environment-initialization.md) — Sets up container configurations and installs necessary system images to prepare the environment for running mobile applications. ([source](https://docs.waydro.id/usage/waydroid-command-line-options.md))
- [Session Management](https://awesome-repositories.com/f/development-tools-productivity/session-management.md) — Manages user sessions to handle the connection between the host desktop and the mobile environment interface. ([source](https://docs.waydro.id/usage/waydroid-command-line-options.md))

### Graphics & Multimedia

- [Graphics Adapter Selectors](https://awesome-repositories.com/f/graphics-multimedia/graphics-engines-rendering/rendering/engines/graphics-pipeline-architectures/hardware-accelerated-rendering/graphics-adapter-selectors.md) — Specifies which hardware GPU to utilize when multiple adapters are present to prevent display rendering artifacts. ([source](https://docs.waydro.id/debugging/known-issues.md))

### Hardware & IoT

- [Remote Mobile Management Tools](https://awesome-repositories.com/f/hardware-iot/design-lifecycle-management/hardware-engineering-management/hardware-management/remote-mobile-management-tools.md) — Establishes a bridge between the host system and a containerized mobile instance to enable remote debugging and management. ([source](https://docs.waydro.id/faq/using-adb-with-waydroid.md))
