Bazzite Waydroid Setup Guide

This is the old documentation, please view the new documentation

Note: Waydroid does not work on Nvidia’s proprietary drivers, and requires an AMD or Intel GPU for the best results.

What is Waydroid?

Waydroid is an Android container that runs on Linux. Bazzite users can run Android applications using this method.

First Time Setup

Open a host terminal and enter this command to setup Waydroid:

ujust setup-waydroid

Initialize Waydroid

Waydroid requires users to initialize it for the first time which can be done by selecting:
Initialize Waydroid

Make sure this worked by entering this command:

/usr/bin/waydroid-launcher

This will launch Waydroid for the first time.

Configure Waydroid

Part 1: Stop Waydroid Session

Waydroid needs to stop running to configure properly.

Open a host terminal and enter this command:

waydroid session stop

Part 2: Configuration

Open a host terminal and enter this command:

ujust setup-waydroid

Selecting Configure Waydroid will allow users to install additional Android tweaks with the Waydroid Extras Scripts.

  1. Select Android Version (Android 11 recommended)
  2. Select items to install

Available Waydroid Extras:

Get Google Device ID to Get Certified (GApps)

  1. Launch Waydroid
    (Waydroid must be running)

  2. After selecting your current Android version, select Get Google Device ID to Get Certified especially if you plan to use the Google Play Store (GApps).

  3. Follow the instructions in the terminal output.

After verification has happened, it will usually take a while before your device is verified.

Add as a Non-Steam Shortcut

This is useful for Bazzite images that use Steam Gaming Mode.

Make sure to add /usr/bin/waydroid-launcher to Steam as a non-Steam game for Waydroid to work properly in Steam Gaming Mode.


Disable Inputs to Waydroid When Unfocused

Waydroid has an issue where it will register inputs from controllers, keyboards, and other input devices even when the window is not focused.

Disable this functionality:

Note: Waydroid must be running!

In a host terminal, run this command:

waydroid prop set persist.waydroid.uevent false

If you ever want to undo this change, run the same steps but set true instead of false with the same command.

Resolution & Density Options

Note: This is intended for users who have issues with Waydroid’s resolution, scaling, or running Waydroid nested. This is optional.

Open a host terminal and enter the following commands:

sudoedit /etc/default/waydroid-launcher
sudoedit /etc/default/steamos-nested-desktop

Save the text files when done.

Waydroid Hybrid Graphics Fix

Note: This is only intended for users who have multiple GPUs in their hardware who experience graphical corruptions in Waydroid.

Enter in a host terminal:

ujust setup-waydroid

Then Select GPU for Waydroid which will give the option on what GPU to utilize for Waydroid to fix graphical corruptions.


Reset Waydroid

Warning: You will lose all of your Waydroid data.

If you experience issues or want a fresh Waydroid container, then select Reset Waydroid after entering:

ujust setup-waydroid

Documentation Contributors: Kyle Gospo, Gecked-Deck, Nathaniel Warburton, and Jorge Castro

See also: Upstream documentation

View all Bazzite documentation

6 Likes

@nicknamenamenick you rock! thanks a lot!

@nicknamenamenick, how would I do that in Bluefin?
❯ ujust setup-waydroid error: Justfile does not contain recipe setup-waydroid
How can I add it?
Thanks :slight_smile:

3 Likes

How to setup multi windows support? I want to use apps on my desktop, as system apps.

I tried this command:

“waydroid prop set persist.waydroid.multi_windows true”

It doesnt work. Apps are just not showing anymore.

Has there been a change to the setup script? I can’t add Waydroid to Steam’s game mode. The instructions say to add the .desktop file in /usr/bin/waydroid-launcher but that folder doesn’t exist.

The Waydroid.desktop file in ~/.local/share/applications doesn’t work in game mode either.

Edit: got it working by setting the target to /usr/bin/waydroid-launcher

The comment about pointing to a .desktop file threw me off.

1 Like

I know I tend to be too pedantic, literal, specific, verbose, etc. Please feel free to disregard, I’m just writing this due to my own mistakes and gaps in logic. Thank you for the comprehensive guide and work! Got Waydroid working!

I think this is more consistent with instructions that came before as it explicitly spells out the steps. Also, it puts the reason to get certified so closer to the top.

  1. Follow the instructions in the terminal output.

Self-admitted skill/reading comprehension issue here:
I totally glossed over that the terminal had the Google Device ID and only saw the link to input, because the number is the same color as the rest of the text. This caused me to go down a rabbit hole of trying to obtain the Device ID with Developer Mode and adb. Maybe a visual like this help others.

I think they might have removed this feature since this link is dead:

https://ublue-os.github.io/bazzite/Installing_and_Managing_Software/Waydroid_Setup_Guide.html

It is also still on the website which is confusing.

No, we’re revamping the documentation but making lots of mistakes in the process. So sorry about that. This guide here still works.