With WayDroid now in a somewhat usable state, it would be good to get it packaged in edge so more people can test it out and report bugs.
Unlike the old anbox, waydroid offers near-native performance, on the OnePlus 6 this means full speed Android, the ability to run games pretty much all the applications you might want. Although the device gets a fair bit warmer than when doing this on downstream Android.
Automate the config file generation as a post-install step
Decide if it's best to have the large Android images be part of the package or fetched in *-install (part of the package seems best to me).
Create new Kconfig check for waydroid (mostly just depends on BINDER stuff, as well as CONFIG_PSI and perhaps some things for networking).
Deal with the dnsmasq dependency which will be needed to initialise networking in WayDroid.
Come up with a solution for the bidirectional sharing data between the host user and the container without needing root to copy files.
Find a way to handle non-integer scaling in phosh causing the Android window to not fill the screen. And a way to deal with padding needed to avoid the Android navigation bar being obscured by the Phosh one (anbox.display_height_padding=100 <- this depends on scaling).
With regards to the binder stuff, currently the lxc config files expect ANDROID_BINDER to be a module which gets probed when you first start the container and configured to create the 3 binder interfaces with specific names (prepended with anbox-), is this a good solution?
Erfanoabdi says he'll be replacing the install scripts with some kind of Python tool. Could/should we make use of this?
2 of 7 checklist items completed
· Edited
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items 0
Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Linked items 0
Link issues together to show that they're related.
Learn more.
Definitely part of the package, like we do with Anbox currently. You can fetch a pre-built image in the package source and just install that, but at least the end result will be managed by apk.
We're shipping the images as waydroid-image currently. We might move it to pmaports (as there seems to have been complaints on the Alpine side of having Anbox pre-built images in aports in the past), but at least it's in it's own package.
Maybe we can just package it and not care about the rest? It has commands to fetch the latest images and setup stuffs in a non-distro specific way. Its not completely ready i guess. As per Erfan, the options/usage of the tool would be something like this: https://paste.myself5.de/ubigesorir.lua
Or we can package it plus have some script/service that do some kind of initialisation, configuration, autostart on boot, create applications shortcuts to the application list or stuffs like that. Just to ensure it integrates well from our side.
I've messed around with it on the pinephone a bit. Not really sure how to use it / when e.g. the container is supposed to start automatically, but when it does show up, the performance is great!
I've updated the wiki a bit. Note that there is a OpenRC service available for the container, you can add that to the default runlevel if you want it to start at boot. The Waydroid session will also automatically be started on boot through /etc/xdg/autostart, although if you quit the container (rc-service waydroid-container stop) you'll need to manually start the session.
Once both the container and service are running, apps can be launched through waydroid app launch <fully qualified domain name>, for example waydroid app launch com.android.settings.
Should it work on the PinePhone or PinePhone Pro? I tried on both with Edge, but it doesn't. Log says:
[15:58:06] Failed to get service waydroidplatform, trying again...
There were other error messages before. I got rid of them by performing addtional steps that I added under installation in the Wiki.
I also asked in the Waydroid Telegram group, and Jon West told me in a message: "I'm going to have to fire up my rpi400 and start digging into the issues myself I think"
I'm willing to help debug, but I don't really know where to start. Maybe install Waydroid master.
While you were replying, I just created issue 285 for the Waydroid repo, which gives more details.
Now it's 30 minutes since I ran waydroid session start, and when I run waydroid app list, it still replies with: [19:32:43] Failed to get service waydroidplatform, trying again...
Can you detail exactly the steps that you go through when you fire up Waydroid?
I just run waydroid show-full-ui and wait a while (or tap the desktop icon in the phosh menu, which I assume does the same thing). This is on a phosh-pinephone image I built from pmbootstrap. I forget how I installed it, but it was basically like sudo apk add waydroid and sudo rc-update add waydroid-container default and reboot. You're on postmarketOS v21.06?
Thanks a lot for the vidoe! I just let it sit for more than an hour, starting up waydroid show-full-ui. This time there was no waydroidplatform error message, but also nothing happened, although the log looked fine. I then Ctrl-Ced the process, and did it again, for more than 20 minutes. Again nothing happened. Now I rebooted and I'll execute things in a different order.
I'm on postmarketOS EDGE, running on a PinePhone Pro.
As this it still not working, and for better comparison with @adam.pimentel, I tried to install Phosh, but that failed (see issue 1393). On the PinePhone Pro I have no choice other than to use Edge.
I agree! Though as this subthread was already here, I thought a link to another, possibly related issue might be helpful to others investigating this. Sorry for the noise.
Ah, I was hoping that I'm doing something stupid, and that it's not really a bug, which is why I didn't open another issue, but I may do so later. Anyhow, with the latest postmarketOS + Phosh (instead of SXMO), I at least get the app list, but when I start an app or the full UI, nothing happens other than that I cannot interact anymore with my device. It looks like there's a transparent window in front of everything. When I kill the session, I get back to using my device. Unfortunately, there's nothing interesting in waydroid log. It's like a black box to me.
marked the checklist item Adapt install scripts to APKBUILD as completed
By Newbyte on 2022-04-13T18:28:02
Administratormarked the checklist item *Decide if it's best to have the large Android images be part of the package or fetched in -install (part of the package seems best to me). as completed·
Imported
marked the checklist item *Decide if it's best to have the large Android images be part of the package or fetched in -install (part of the package seems best to me). as completed