WayDroid (Wayland Android) on Linux Phones

An interesting development:

10 Likes

@amarok, this is cool. Can you try installing MS Word or MS Excel on your Librem 5 and report the performance. I tried it on Anbox on PureOS on VirtualBox, had enough CPU and Memory to the VM but it wasn’t very smooth.

:rofl:
Um… No.

3 Likes

They are not going to spy on you :smile: :joy:

Maybe, but there is open source alternatives, people who buy L14’s and/or L5’s are most likely be in the camp of ‘if it isn’t open source I don’t want it.’

Did you check their source code? :wink:

Also, even if they don’t spy (which we don’t know. Windows 10 definitely spies), they are fundamentally unfair to the user: https://www.gnu.org/philosophy/free-sw.html.

2 Likes

In any case, I don’t have (or want) access to Windows software. :slight_smile:

2 Likes

I was referring to more of getting the freely available packages from Android store and trying it out with WayDroid on your Librem 5

1 Like

Just for information, I think that @buzzLightyear is referring to the Android apps of MS Word and Excel which are not Windows software. Having said that, I might have doubts about installing them myself if I had received my L5.

I would be interested in a technically-knowledgeable analysis of the privacy implications of using these kinds of apps under WayDroid though. Does the use of the underlying kernel in a container environment create new opportunities for extracting information from the host environment, as compared to Anbox, for example?

1 Like

Ah, OK, but I don’t use G :smiling_imp: :smiling_imp:gle’s store, even on my Android devices.

I know I could install Aurora store, but I still wouldn’t want to do that on my L5.

I could not find a good high-level technical overview of the differences between Anbox and WayDroid. None of the articles about it seem to be written from a position of deep understanding. From what I can gather it seems as though Anbox has the advantage of isolating the Android apps from the host system, whereas WayDroid sacrifices that in favour of increased performance and tighter integration.

So, I’m thinking are use cases where WayDroid would be better, and other use cases where Anbox continues to be the best option. Is this correct?

Some of the writing on the topic seems to imply that they are loading the host system’s UI within some kind of container within WayDroid? That sounds pretty drastic.

2 Likes

Hi, that sounds good. Did someone try to install “Signal” (for Android) with WayDroid on the L5?
This App is important for me.

Regards

I had a quick look at WayDroid and it looks like both are running in pretty much the same way - launching Android inside a LXC container. The difference comes from how it communicates with the external world.

It seems like Anbox mostly re-uses code used to support GPU acceleration on Android emulator, piping GL context back to the host, which is then used by Anbox to display it using SDL. Most Anbox specific stuff seems to be related to multi-window support (which I haven’t seen anywhere in WayDroid).

WayDroid however goes a different way - the host part is very minimal (you just launch the container and are pretty much done with it), however, a Wayland (and PulseAudio) client is implemented inside the container in the Android part, so it just connects to host’s display server and shows the image.

It doesn’t seem like there are any advantages when it comes to isolation in either of them. Both utilize the exact same technology to put Android into a container. Sounds like Anbox’s approach could theoretically be used in a more hardened solution, but at this point it’s purely theoretical as neither of these projects really focus on security and isolation.

10 Likes

Can’t this be hardened for each application ? what about multitasking (whatever it means) is container context shared among apps ?

That’s up to the user. You should be able to run multiple containers with both Anbox and WayDroid. The way people usually use them is with a single shared container though.

(and by a “user” I mean a “user who’s willing to patch it up a little” :D)

2 Likes

I’m guessing you figured this out by reading the sources. In which case: Thank you for putting in the work to summarise it for us. It’s pretty interesting. WayDroid makes a lot more sense now that you’ve explained it.

For some reason, I had reached the conclusion they were running a Wayland server inside the container, rather than a client, so that apps on the host would have to connect into the container to display a GUI! Which is why I said “That sounds pretty drastic”!

Armed with the knowledge that both use LXC, I realise I also misunderstood the following statement from the Linux Smartphones article:

Unlike a typical emulator, WayDroid uses the same kernel as the host operating system, allowing the Android apps to interact with a device’s hardware almost as if they were native apps

On first reading I took it to be a comparison of WayDroid against Anbox, with Anbox being considered a “typical emulator” for the purposes of the comparison. But clearly this statement actually applies to both WayDroid and Anbox, compared against unspecified other “typical emulators”, which would include virtual machines running Android.

This is what I get for skim-reading.

3 Likes