I used to hate android emulators, since the ones I’d tested on Windows were ad-ridden, slow bloatware.

The other day I needed to run an android app on Fedora 40.

I tried Waydroid and it worked very well. The app ran supersmooth as if it was running natively.

Also the cli syntax was very sane an user friendly.

waydroid app install|run|list …

So if you need an Android app on linux the experience might be better than what you think it would be.

  • @[email protected]
    link
    fedilink
    521 month ago

    I think a part of your positive experience is also thanks to Linux. Android emulation works better on it because the difference between Linux and Android is not that big and definitely not as big as between Windows and Android. Though Waydroid rocks anyways

    • Björn Tantau
      link
      fedilink
      281 month ago

      It took a long long time until Android emulators on Linux worked even close to what has been available on Windows.

        • Quack Doc
          link
          1
          edit-2
          1 month ago

          google play games is still really good, it’s more or less just android inside of crosvm, usually android emulators are based on virtualbox, some are based on qemu

      • Quack Doc
        link
        61 month ago

        this is not really quite true, we have always been able to run androidx86/BlissOS in qemu which works about “as well” but with less integration, IE no “native like” windows

    • @[email protected]
      link
      fedilink
      281 month ago

      The documentation says:

      Waydroid uses Linux namespaces (user, pid, uts, net, mount, ipc) to run a full Android system in a container and provide Android applications on any GNU/Linux-based platform.

      To my understanding this isn’t even emulation but regular container technology.

      • @[email protected]
        link
        fedilink
        91 month ago

        Wouldn’t some Android Apps require specific builds for x86 architectures? Does Android take care of that?

          • Quack Doc
            link
            51 month ago

            libhoudini is optimized for Intel, NDK for AMD, but some apps may be incompatible with one or the other.

        • @[email protected]
          link
          fedilink
          91 month ago

          A lot of android apps are built using Java/Kotlin, so you don’t actually need to care about architecture since the JVM supports both x86_64 and arm64.

          There are exceptions to this though, since some apps need to run native code. Those apps would need some sort of emulation/translation layer for the arm instructions.

        • Quack Doc
          link
          51 month ago

          most android apps are architecure agnostic “java, kotlin etc” and even apps that are often ship “Universal binaries” which include x86, or split builds for arm and x86

    • Captain Beyond
      link
      fedilink
      4
      edit-2
      1 month ago

      Android emulation works better on it because the difference between Linux and Android is not that big

      To be clear, the difference between Linux and Android is about the same as the difference between Linux and Fedora, in that they are both Linuxes. That’s why this works, and why the reverse (running GNU/Linux apps and even entire systems on Android) is possible as well.

      • @[email protected]
        link
        fedilink
        5
        edit-2
        1 month ago

        I meant a desktop Linux distro, not the kernel itself. And Android has a ton of bloatware on top of it so it’s not really the same thing. Android has like a double decker kernel

        • Quack Doc
          link
          31 month ago

          AOSP doesn’t have that much bloat, it’s far lighter then your typical linux distro, It’s vendors that bloat it up, Custom roms are extremely light, This is BlissOS running on 2Gb of ram https://files.catbox.moe/4n17z3.mp4.

          It’s far more responsive then many linux distros would be since android and it’s applications are optimized around low ram and low system resource in general

          • @[email protected]
            link
            fedilink
            -1
            edit-2
            1 month ago

            Android can run on 2Gb but the experience won’t be great. Linux with something like JWM or Xfce runs way better. Android 12 and higher are especially heavy. You can notice it by comparing on relatively low end devices (with like a Unisoc T606 or something). Android 14 runs better but it has ads-related stuff in it. And Android kernel itself has a lot of unnecessary stuff. They say it’s better for performance but bruh how can a more bloated thing be better? Real tests speak for themselves. Don’t trust theory and Google’s changelogs.

            • @[email protected]
              link
              fedilink
              21 month ago

              This is for the general case, size doesn’t always translate to performance. I haven’t read the AOSP source so I wouldn’t know for sure, but the general case for any algorithm is that. Sometimes having more code can result in faster performance due to how the algorithm works.

              • Quack Doc
                link
                21 month ago

                its easy to test BlissOS is open source and can be installed on any relatively modern PC or in a VM, coms with foss and gapps variants, install foss

                • @[email protected]
                  link
                  fedilink
                  11 month ago

                  I am merely rebutting your point about how more stuff can make things perform faster. Multi-tasking comes to mind. In a simple program, a task may be run in a procedural manner without interruption. Say for example, network access. The network stack must wait for the reply to arrive, but since the program is simple, it really is waiting for it doing nothing, wasting time that can be used to perform other computations. So the code will get bigger, but the performance is increased by reducing time wasted waiting for resources. By size alone, it is more bloated, but it is increasing performance. And as I said, I haven’t looked at AOSP source code so my comment is not directed towards that point as I have no knowledge about low level android stuff.

            • Quack Doc
              link
              11 month ago

              this really isn’t true at all. android works great on 2Gb of ram, you don’t really hit issues until you load gapps. If you don’t it works great. I actually run BlissOS on my old Asus t100ta and Im not the only one.

              When you do nothing something like xfce works great, but when you actually start doing things like browsing the web, watching youtube etc then it starts to really become a slog. Meanwhile something like BlissOS is actually usable even when watching 1440p content (gpu not strong enough to test UHD)

              • @[email protected]
                link
                fedilink
                11 month ago

                I didn’t mean that Android is bad. What I meant originally is that Android is getting less efficient and slower for no reason over time.

                • Quack Doc
                  link
                  11 month ago

                  This is for sure the case for vendor solutions, but AOSP itself is still quite the lean OS. Android also has GO variants which perform even better at low resources, (Bliss also has builds of these if one is curious). They are extremely responsive. I don’t think Bliss as A14 go builds, but we do have A13 go builds, and they are extremely responsive on very low end hardware, the bar is actually support for SSE.

                  Bliss currently has a hard requirement on SSE 4.2 or greater due to a load of changes (occasionally some work is made on lowering this but it’s slow and a lack of real motivation), but pretty much everything I have tested that is supported works fairly well, from my old i3 desktops, my atoms and celerons etc.

  • @[email protected]
    link
    fedilink
    English
    431 month ago

    The app ran super smooth as if it was running natively

    That’s because it is native! Waydroid runs an android container on top of your existing kernel. You will notice that you can even see the Android processes while running Waydroid in a top utility.

    • @[email protected]
      link
      fedilink
      101 month ago

      Although the Android kernel is slightly customized isn’t it? I thought it exposed a few extra syscalls. How do these work on Waydroid?

      • Quack Doc
        link
        71 month ago

        some android kernels are, but AOSP itself can run perfectly happy on a vanilla kernel, just make sure your kernel was compilled with BINDER enabled, which yes, is upstream

  • Quack Doc
    link
    161 month ago

    I tried Waydroid and it worked very well. The app ran supersmooth as if it was running natively.

    thats because it was running natively

  • TFO Winder
    link
    fedilink
    161 month ago

    I just tried it 3 days ago on Fedora 40, Did not run for me.

    Followed their wiki

    How did you setup?

    • mFatOP
      link
      fedilink
      English
      61 month ago

      I don’t remember tbh. I installed it a couple of years ago but used it for the first only recently.

    • @TrickDacy
      link
      61 month ago

      Yeah I tried it on pop os a while back and never could get it running at all

      • mFatOP
        link
        fedilink
        English
        71 month ago

        Are yiu sure you’re running Wayland and not X11?

        • @TrickDacy
          link
          61 month ago

          Actually I was thinking of my arch system. You’re right, I’m on x11

      • TFO Winder
        link
        fedilink
        31 month ago
        Failed to get service waydroidplatform
        

        on doing waydroid app install myapk.apk

        ERROR: WayDroid container service is already running
        

        IT says already running on doing sudo waydroid container start

        • @[email protected]
          link
          fedilink
          4
          edit-2
          1 month ago

          I got it into android “desktopt” previously, but now after rebooting and trying to install an apk it seems to no longer be opening at all. Sorry :/

          Edit: I just uninstalled and reinstalled via the software Center and now it works and I could install F-Droid.

        • Quack Doc
          link
          11 month ago

          don’t run sudo that breaks things

            • Quack Doc
              link
              11 month ago

              ah my bad, I misread, I thought you had tried sudo waydroid app install.

              Failed to get service waydroidplatform usually happens when something fails when communciating to the container, this usually means the container is partially loaded so you will need to stop it and start again, you may even need to do a full reboot

    • @[email protected]
      link
      fedilink
      31 month ago

      You need a custom kernel, or a kernel module plus DKMS and kernel headers for your current kernel.
      You also need the package that handles whatever filesystem they use for their containers.
      Then, you need to be running it on Wayland or else it doesn’t work.
      The part that I’m stuck on is running games, which gives an error about not being able to find libmain.so, which might be an architecture mismatch problem. Maybe I can virtualize that part? But at that point I might as well just buy a phone.

    • Quack Doc
      link
      11 month ago

      can you report your issues to the waydroid github or check on the fedora forums? the matrix and telegram chats are always open to help too if you have a bit of patience.

  • danny801
    link
    English
    101 month ago

    deleted by creator

  • @[email protected]
    link
    fedilink
    41 month ago

    Used it but couldn’t play any media on it, which was going to be my use case. Nvidia!!!. But the devs and the community are quite patient and helpful in their telegram channel.

  • @[email protected]
    link
    fedilink
    -31 month ago

    I had a similar positive experience with Gamescope, which tamed a game that freaked out every time I moved the moude onto the other monitor.

    Maybe Wayland’s healthy place is as a secondary window system you launch inside your normal X11 session.

    • axum
      link
      fedilink
      91 month ago

      Maybe Wayland’s healthy place is as a secondary window system you launch inside your normal X11 session.

      Yeah you’ve got that perfectly backwards.
      Wayland allows X11 apps to open using XWayland. Not the other way around.

      Xorg’s life is running short and will be largely abandoned in the near future.

      • @[email protected]
        link
        fedilink
        31 month ago

        I think I’d be a lot more excited about Wayland if I felt like I can get a compositor that matches my tastes.

        I want to iconify things to the desktop, not relying on a taskbar-alike. Nothing seems to offer that. Hell, the taskbar is often a third party program.

        I want to double-click to shade. Labwc just added this, a feature that X11 window managers have been offering since the 90s.

        I want an aesthetic that’s got real depth and skeumorphism, rather that flat and featureless. Maybe something offers that, but there are plenty of X11 choices that have beveled buttons out of the box.

        The charm of Unix systems used to be flexibility, buy Wayland seems to be an extinction-level event for traditional window management. Nothing fills the gap of FVWM or WindowMaker. But gosh, I can get 92 flavours of tiling compositor and windows that ripple when dragged.

        • Quack Doc
          link
          31 month ago

          The charm of Unix systems used to be flexibility, buy Wayland seems to be an extinction-level event for traditional window management. Nothing fills the gap of FVWM or WindowMaker. But gosh, I can get 92 flavours of tiling compositor and windows that ripple when dragged.

          I think this is “temporarily” true as we get more kits that make wayland development trivial I think it wont be so bad, right now wayland is still very immature, and will be for a long time.

          • @[email protected]
            link
            fedilink
            11 month ago

            I wonder if it might be an unreproducible moment in history.

            I suspect the Cambrian explosion of X11 window managers came from two things:

            • Propriatery and former-propriatery systems with unique look and feel (see, for example, Open Look/olvwm) There was also a tendency to copy any style you could (WindowMaker copied NeXTStep, IceWM mocked OS/2, and when those cute QNX demo discs came out, within days there were lookalike themes). It feels like the last major outside inspirations, MacOS and Win1,1 are converging on almost intrrchangeable insipidness.

            • The 1990s/2000s customization era. Machines were finally powerful enough to do mildly nifty things, but still attainable by hobbyists gluing together pixmaps and this bred stuff like Enlightnment E16 or Afterstep

            Do these forces still exist in 2024? It seems like Unix Porn today is a bunch of neokvetch windows without even a titlebar to provide a personal statement.

        • Semperverus
          link
          English
          11 month ago

          Couldn’t you just drop a task manager plasmoid on the desktop instead of the task bar in KDE?

          • @[email protected]
            link
            fedilink
            11 month ago

            TBH, I’ve avoided KDE (and GNOME) because the big environments seem to be “if you want one bit, it doesn’t really play well with anything else.” Also a bit of elitism-- full desktops are for noobs who haven’t spent 20 years ossifying their taste.

            The general buzz seems to be that KDE’s compositor is one of the richer choices.

        • axum
          link
          fedilink
          21 month ago

          I don’t see how this matters lol, as govt will happily used abandoned media and software.

          We’re here talking end users and homelabs, not IBM mainframe maintainers 😛

        • Semperverus
          link
          English
          1
          edit-2
          1 month ago

          I know i’ve fully abandoned xorg as my primary desktop system. It now only runs things that demand running in xwayland.

          Wayland is the better desktop experience, plain and simple, especially if you have multiple monitors.

          • Quack Doc
            link
            11 month ago

            It’s nice that it is for you, it is for me a well, but I know a lot of people where wayland just out right doesn’t work for them and their workflows/needs yet

    • Quack Doc
      link
      11 month ago

      for many people YES! Both wayland and x11 can work very nicely when nested. For many people wayland will be remain unusable for a very long time, and for many other they are finding that now x11 is unusable for them.

      It’s not a great situation, but with xwayland and running wayland compositors nested (really wish we had an “way11” too, but per app cage works for me) many people’s usecase will remain to be covered