the one thing linux really hasnt been made on par with winblows yet is the dreadful amount of options for android simulation -the most popular choice seems to be Waydroid, but its such an unneeded hassle to set up at all -genymotion is just slow -and than you have things like android x86 which entirely defeat the point of an emulator

  • mycodesucks@kbin.social
    link
    fedilink
    arrow-up
    78
    arrow-down
    2
    ·
    edit-2
    1 year ago

    I totally get what OP is asking and am constantly annoyed by the same thing.

    There’s a ton of software that can ONLY be run on a mobile OS, and rather than deal with the nightmare that is a physical Android phone with all of its limitations and restrictions, it would be nice to have these things running in a VM that I can fully control. There’s software that demands access to insane and ridiculous permissions, and I’m not going to install those to my physical Android phone and deal with the privacy problems. But a completely isolated VM with burner accounts that I can run in a window on the desktop I’m already using most of the time anyway? I’ll take that. Also, I don’t see the need to shell out the ridiculous price premiums for phone models with the most storage space when I only use a handful of apps when I’m mobile anyway. An app I might need two or three times a year still takes up that space on my phone when it could easily live on a VM and be used only when I need it at home.

    Also, when Android releases new version updates and my phone manufacturer doesn’t keep up? Why should I have to go out and buy a new phone just to appease the handful of apps that decide THEY want to be cutting edge and THEY’RE going to be the ones to force me to waste money? I should be able to just spin up another VM with the new Android version and use those sporadic apps on there until I decide to upgrade my phone in my own good time.

    Also, Android X86 is fine, but the most problematic apps that mess with users and force apps to newer Android versions for no other reason than being “cutting-edge” aren’t made by the kinds of companies with the forethought or customer focus to provide x86 compatible apks.

    Basically, I don’t see why it’s so hard to run a full virtual, sandboxed ARM emulated vanilla Android environment, or why people aren’t clamoring for this. It’s the most practical, straightforward solution to the fragmentation/bad vendor update model that physical hardware forces on us and I assume most of us hate.

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      26
      ·
      1 year ago

      YES THANK YOU i always feel like im alone in wanting an easy to use solution like this

      • mycodesucks@kbin.social
        link
        fedilink
        arrow-up
        22
        ·
        1 year ago

        You are DEFINITELY not alone. Every 6 months or so I come back to this and hope someone has done something, and every time I’m disappointed. I’d do it myself, but my username isn’t an ironic joke.

    • LiveLM@lemmy.zip
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      ARM emulated vanilla Android environment

      Android Studio does exactly that. The x86 images are the default but they do have ARM images available too.

    • drwankingstein@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      Running Bliss with houdini or NDK should give you a good coverage of arm applications, some still won’t work because they have various anti-emulator crap which just pickups x86 stuff. if new version is an issue, Bliss has you covered as it’s currently running A12L with A13 work underway

      • mycodesucks@kbin.social
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Had a chance to look, and you sir, just introduced me to a shiny new toy. I’ve spent the majority of today playing with Bliss and it’s the closest I’ve seen ANYTHING come so far to being EXACTLY what I want out of a virtualized Android environment. Thanks!

        • drwankingstein@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          if you encounter any issues or just wanna share something neat, Bliss has discord/matrix/telegram which is primary means of communication

      • mycodesucks@kbin.social
        link
        fedilink
        arrow-up
        8
        arrow-down
        1
        ·
        edit-2
        1 year ago

        Apps “forcing” you to update are the result of developers doing their jobs. Just because you decided to buy a cheap phone or a free Android distro that doesn’t come with any update guarantees doesn’t mean they have to pour in money to keep things working for you.

        I absolutely refuse to spend that much money on a platform with so little respect for users. You shouldn’t even NEED an update guarantee. You don’t go out and buy a computer and check for guarantees that it’s going to include OS updates… you KNOW it’s going to continue updating until the hardware physically can’t handle it anymore and you get sick of it and go upgrade it. The Android system and its heavy ROM customization and reliance on vendor updates is fundamentally broken, and it is NOT a problem to be pawned off on USERS to fix by throwing more money at it. The only reason there’s ANY difference in the Android environment vs X86 computers is because people tolerate it for whatever reason. This is a problem to be fixed, and the first responsibility for fixing this is on Google, and failing that responsible app developers should be developing for the lowest still supported Android version for SEVERAL reasons.

        1. I’m generalizing, but as an app developer, usually more users is better.
        2. If they DID it would be incentive for Google and Android manufacturers to FINALLY decouple Android updates from the hardware they run on.
        3. It reduces e-waste by extending the time phone hardware can be used. I shouldn’t have to explain why this is a good idea.

        There are good reasons to update an app to use a new Android version. Complacency in a broken environment of continuous obsolescence as a money making scam isn’t one of them.

          • mycodesucks@kbin.social
            link
            fedilink
            arrow-up
            6
            arrow-down
            2
            ·
            edit-2
            1 year ago

            My anger is that the decision of an upgrade is made FOR me when the functionality of my phone should be limited by the physical limits of the hardware, and not the development limits of the phone vendor. A company should NEVER tell me “We don’t think this is going to give you a good user experience so we’re disabling it for you.” That is MY decision. If I want to suffer through running your app more slowly, that’s up to me, and I don’t need the decision made on my behalf, especially when the end result is costing me money. I’m sorry, but that is absolutely unacceptable. EU legislation is nice - I’m particularly looking forward to replaceable batteries making a comeback - but legislation forcing vendor updates doesn’t fix the fundamental problem that it shouldn’t even be their responsibility. I know the only real differentiating factor between vendors is their particular ROMs and whatever custom bloatware they ship with, but unlocked boot loaders and an operating system with a kernel that is not so inextricably linked to particular hardware that it can be installed and run on ANY Android phone is the real solution. Desktop operating systems don’t have 47 different installation images for 47 different special pieces of hardware, and there’s absolutely no reason that Android should need that either. Maybe there was an argument that ARM CPUs weren’t powerful enough, or space was at a premium for a kernel to have unnecessary hardware support 10 years ago, but the hardware is certainly powerful enough now, and all of those CPU cycles get wasted on crap like app scanning when the system starts, services I can’t identify and probably don’t need, assistants that are constantly listening to my microphone… I won’t say those things are all well and good - I loathe them - but if we’re going to have them that should come AFTER development of a generic Android image with a kernel that supports a wide variety of hardware. At this point, vendors can’t NOT conform - what are they going to do, develop their own mobile OSs again? Android has become the defacto standard and has no competition. You can force vendors to build hardware that conforms to standards and support generic OS installation now.

            Google have decoupled everything they could from the hardware abstraction layer. These changes started coming in around Android 8 and 9 (5-6 years ago at the earliest) and have only been extending the following versions. Entire subsystems like the Bluetooth system can receive updates through Google. You can boot standard OS images and all the important hardware will Just Work. If you’re stuck on an Android version that’s being dropped by app developers (Android 7, I’m guessing?) you probably won’t reap the benefits, but it’s been a few years since then.

            If this is true, I haven’t seen it. I’ve got Android 10 phones and as far as I know, I sure can’t download a generic Android 12 ROM and just install it. I’m stuck waiting for system updates.

            If you’re not paying, you’re the product, or you’ll be left with shovelware. Companies that won’t make any money from you aren’t going to give you anything out of the goodness of their hearts.

            It’s surprising that I’m STILL hearing this when I’m running 6 PCs with free operating systems that work, aren’t bloated, and are loaded to the brim with world class software that is all free and reliable, some of which was written 20 years ago and barely been touched since because it STILL works.

            What you’re saying is perfectly valid for SERVICES, which involve ongoing costs, but not everything needs to be a service. In fact, I’d argue most things SHOULDN’T be services. And if I write an app TODAY that works PERFECTLY for some task, I can’t just leave it there and rely on it to keep being used in the future. Because of the architecture of the Android system, I have to continually put in work to make it conform to new standards, which of course, keeps reliable, functional FOSS from getting ANY kind of long term usage in the mobile space.

            My favorite dictionary app was written for Android Kitkat. Completely offline and functional and did everything it needed to PERFECTLY. I upgraded my daily driver phone to a Android 12 and with there being NO changes to the dictionary app that did EVERYTHING that was necessary for free, that app was broken, because it didn’t conform to some new standard. Another app let me remotely mount my SSHFS folders and use my personal server, but THAT broke when Android removed the modules from the kernel. The entire history of the platform is LITTERED with this garbage where developers are FORCED to continually put in work on things that should be “develop once and it’s done”, and that’s INTENTIONAL.

            It’s a scam of squeezing money out all the way down.

            • Desktop operating systems don’t have 47 different installation images for 47 different special pieces of hardware, and there’s absolutely no reason that Android should need that either.

              Phones are glass slabs. Without unique software, there’s no reason to spend the extra money on a Samsung phone, so why would companies bother investing in a platform like that? You may be interested in projects like Fairphone who do support multiple operating systems.

              Furthermore, Android itself doesn’t need custom images, but phones do. Manufacturers only write the kernel themselves for their own chips, for their better Snapdragons, they receive a preconfigured kernel (that is in no state to be upstreamed) from Qualcom, packed with proprietary drivers. MediaTek is even worse at this. You can go for Exynos, the chip that is worse in every single way than its competitors, but that’s it.

              Could vendors open their code, work to upstream drivers, and make their code available for everyone to use? Of course they could! They just have no reason to do so.

              If this is true, I haven’t seen it. I’ve got Android 10 phones and as far as I know, I sure can’t download a generic Android 12 ROM and just install it. I’m stuck waiting for system updates.

              Check out https://developer.android.com/topic/generic-system-image or maybe a LinageaOS build that targets GSI, like this repo.

              It’s surprising that I’m STILL hearing this when I’m running 6 PCs with free operating systems that work, aren’t bloated, and are loaded to the brim with world class software that is all free and reliable, some of which was written 20 years ago and barely been touched since because it STILL works.

              Why don’t you run Linux on your phone if you want the Linux experience? Android is not Linux, in the same way Windows isn’t. Android is based on the Linux kernel after all, you just need to download the right user image for Ubuntu Touch and configure it for your phone’s specifics.

              My favorite dictionary app was written for Android Kitkat. Completely offline and functional and did everything it needed to PERFECTLY. I upgraded my daily driver phone to a Android 12 and with there being NO changes to the dictionary app that did EVERYTHING that was necessary for free, that app was broken, because it didn’t conform to some new standard. Another app let me remotely mount my SSHFS folders and use my personal server, but THAT broke when Android removed the modules from the kernel.

              I’m not aware of any API changes that would affect a dictionary app. It’s possible the app was abandonware and got cleaned up in Google’s yearly trash cleanup (that does remove some useful apps with the heaps of abandoned trash), but in that case you should still be able to install the APK from F-Droid or another source.

              I don’t believe the standard Android image ever contained SSHFS, so I’m a bit surprised. That said, with basic root access you can still inject kernel modules into Android phones, so a command or two should get you your SSHFS fix. You’ll need to bypass the security mechanisms protecting apps from reading each other’s data, but that’s possible with a Magisk module I believe.

              The entire history of the platform is LITTERED with this garbage where developers are FORCED to continually put in work on things that should be “develop once and it’s done”, and that’s INTENTIONAL.

              That is true. Google made terrible mistakes in its API design that let Google and its competitors turn Android into a privacy nightmare, so they need to keep restricting the API surface every time some sneaky data broker finds new ways to abuse the existing API.

              That said, compatibility in Android goes back various versions. Google Play demands that you use modern APIs and test your apps with modern phones, but Android has API compatibility stretching back far, to the point that shitty apps target old Android versions to avoid the privacy improvements of modern Android versions.

              It’s a scam of squeezing money out all the way down.

              I don’t disagree. That’s why I’m grateful for the Fairphone, Pinephone, and its other open competitors. Consider buying one of those once your current phone no longer works right! Most customers couldn’t care less about this, so open source/less restrictive phone community can use more customers or they’ll stay niche and inaccessible!

              • mycodesucks@kbin.social
                link
                fedilink
                arrow-up
                2
                ·
                edit-2
                1 year ago

                Phones are glass slabs. Without unique software, there’s no reason to spend the extra money on a Samsung phone, so why would companies bother investing in a platform like that? You may be interested in projects like Fairphone who do support multiple operating systems.

                Change the model. The sameness of Android phones is one the worst thing about them, and the software changes with each unique one are almost exclusively battery hogging and poorly written. If phone companies were forced to open their hardware platforms maybe we’d see more risk again. Perhaps differentiated with ACTUAL VARIETY of hardware. Phones with physical keyboards… phones with e-paper… These things are actually actively selected AGAINST in the current model because the limitations of system updates means even if you get used to a better workflow with unique hardware, there’s no guarantee that you will get ANY updates or that there will EVER be a better version of the hardware released, but if the platforms were open, the lives of these things could be extended almost indefinitely. And besides,there’s absolutely no reason developers couldn’t have special software features still installed into their phones and still give me the option to dump a vanilla android image on there. Most PC users don’t buy a PC and then wipe the OS and customize their installation, so there’s no reason to believe open platforms would change anything for end users, and forcing companies to get more creative in innovating isn’t a bad thing in this nightmare market of samey overpriced clones.

                I’m not aware of any API changes that would affect a dictionary app. It’s possible the app was abandonware and got cleaned up in Google’s yearly trash cleanup (that does remove some useful apps with the heaps of abandoned trash), but in that case you should still be able to install the APK from F-Droid or another source.

                It DOES fail directly installed from the APK, but I don’t want to get bogged down in this.

                I don’t disagree. That’s why I’m grateful for the Fairphone, Pinephone, and its other open competitors. Consider buying one of those once your current phone no longer works right! Most customers couldn’t care less about this, so open source/less restrictive phone community can use more customers or they’ll stay niche and inaccessible!

                I’ve thought about that and I might do that if Pine ever contracts a less scammy shipping partner. Regardless, this special hardware is antithetical to developing a mobile Linux ecosystem anyway. Linux thrives because it runs on ANYTHING. That gives the widest possible user base who then contribute back to the system and makes the entire ecosystem BETTER. You can buy ANY PC and just install what you want, and that’s not less profitable for PC manufacturers. Smartphone manufacturers are greedily wanting to ENFORCE that environment to be Google’s specific flavor of Android modified the way THEY want, and the fact it’s based on that very same Linux kernel, locking down and limiting and forbidding users from using that hardware in better ways, is morally appalling and disgusting. I don’t disagree that this is an option, but this is a workaround to a system that shouldn’t function this way.

              • Waraugh@lemmy.dbzer0.com
                link
                fedilink
                arrow-up
                2
                ·
                edit-2
                1 year ago

                Since mr fantasy land can’t find it in himself to thank you for all the knowledge you shared in this interaction I wanted to make sure I took the time to. Thank you, I learned a great deal from your comments and your ability to communicate information is superb.

                • mycodesucks@kbin.social
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  edit-2
                  1 year ago

                  It’s only a fantasy as long as you accept it. Digital hardware NEVER worked this way until the mid-2000s and accepting the change is a CHOICE. If the same governments that rightly put the screws to Microsoft over their Internet Explorer monopoly had any justice or logic left, these changes would’ve been legislated a DECADE ago, if for no other reason than to align with e-waste reduction and reduce supply chain disruptions. But by all means, attack me.

                  And for the record, I am NOT ungrateful for skullgiver’s input, and I am happy to get his/her counterarguments so I can point by point explain why I do not find them convincing, but I am passionately not in the same camp, and I hope you can appreciate that I find defense of the position, particularly the ones along the lines of “It is how it is”, abhorrent. Everything is the way it is until it’s not, and the way things SHOULD be matters.

                  I respect his/her knowledge, and I respect him/her as a person, but I don’t respect the position that things are okay and/or can’t be changed. There is just too much damage being done by the way things are.

  • Ramin Honary@lemmy.ml
    link
    fedilink
    English
    arrow-up
    26
    ·
    edit-2
    1 year ago

    To do Android development, I got myself a Banana Pi, which is a Raspberry-Pi like single-board computer. They provide you with a rooted Android OS image that you can flash onto the device, and you can install whatever else you want onto it. I give it it’s own display and keyboard, but can also SSH-into it and control it from my other computers.

    • mycodesucks@kbin.social
      link
      fedilink
      arrow-up
      16
      ·
      edit-2
      1 year ago

      That’s all well and good for development, but there are other use cases than development. There are emulation solutions focused on development already, of varying quality. But there’s nothing for Android END users who simply want to be able to run software an Android environment without having to be tied to a piece of hardware and all the limitations and sacrifices that come with that.

      That’s not to say this isn’t a useful option, but that’s still ONE Android environment tied to ONE piece of physical hardware.

      To give an equivalent comparison… if you wanted to run multiple operating systems on your PC to have fine tuned control of different environments, you could just install a different Linux distro or Windows to multiple different VMs.

      If I want to do the same thing with Android, the solution is always “Buy another device”. That’s insane. If the solution to wanting to run Debian alongside Fedora was “get a second computer”, people would be up in arms with how ridiculous and wasteful that is. But for Android, people just accept it for some reason.

  • CameronDev@programming.dev
    link
    fedilink
    arrow-up
    24
    arrow-down
    2
    ·
    edit-2
    1 year ago

    The generic answer is usually that someone hasn’t felt the need to create and release one.

    Open source basically means you get whatever someone else felt like creating, and they’ll usually create it to suit themselves first and foremost (which may mean having a poor user interface, or certain limitations or performance quirks).

    BlueStacks is cross platform, but I have never used it so no idea what the performance is gonna be like.

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      "The problem is Bluestacks has not been developed for Linux so some users are thinking what is the system they should adopt to emulate Android applications on Linux.

      Fortunately an alternative exists if you need a system that can do that, now we will give you the keys to install something equivalent to BlueStacks that works correctly. Genymotion"

      from their website

      • CameronDev@programming.dev
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        My apologies, I saw:

        BlueStacks is the famous Android emulator for PC that can now be downloaded for the Ubuntu Linux operating system but we also refer to other distributions like SUSE, Debian or Linux Mint.

        And that reads clearly as being available.

        But you are correct, and it’s not. That entire blog looks like a Google translate trainwreck.

        • Mandy@beehaw.orgOP
          link
          fedilink
          English
          arrow-up
          4
          ·
          1 year ago

          and genymotion barely lets you install anything due to it using the wrong architecture

          • CameronDev@programming.dev
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            The emulator with android studio might be useful, but I dunno how helpful it is for your use cases. Does require a bit of overkill to setup. I think qemu can also be used, but also probably not nice to setup. (and not sure about the architecture issue).

            A few year ago there used to be a chrome extension for running Android apps, no idea if it works for Linux or even if it still works :/

  • flashgnash@lemm.ee
    link
    fedilink
    arrow-up
    21
    ·
    edit-2
    1 year ago

    Waydroid works at native speeds for me and on NixOS installation constituted adding virtualisation.waydroid.enable = true; to my config, running waydroid init -s GAPPS and then registering it on Google’s website with the code it gives. Might be able to do it with just the nix package manager and not full blown NixOS but not sure about that

    Unsure of the difficulties installing it but when it works it works flawlessly

    • dandelion@beehaw.org
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 year ago

      Man! I was super excited about this, being a big NixOS fan, but then I realised that the “Way” bit is going to kick me in the nuts. I haven’t made the switch to wayland yet; I keep thinking about switching, but last time I checked being tied to i3 and nvidia hardware scared me off (although I’m aware sway is a drop-in alternative to i3, but it’s an extra complication). Another reason to make the switch when I can though!

      Out of curiosity, how do big media apps treat something like Waydroid? Like, I imagine Netflix and co being awkward with anything like this in a misplaced attempted to prevent “piracy”. Do you find apps treating you like a second class citizen?

      • Waydroid is the modernised Wayland version of Anbox. If you’re still on X11, try Anbox, it should work without needing to switch to Sway.

        The apps run from an LXC container that’s basically recognised as a VM by most apps. Don’t expect Widevine support; it may work, but I don’t think it’ll work well. That’s 480p or 720p video max within the apps!

      • flashgnash@lemm.ee
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        I’ve not found this yet but I’ve only used it for a few things so far, haven’t tried Netflix. Will give it a go for you in a moment

        The apps I have used (plato, teams, office) have worked without a hitch so far (once I figured out I needed to install it with play services enabled)

        Can’t imagine banking apps would work at all though

        Wayland with Nvidia is patchy. I’ve managed to get around the issue by running integrated graphics with offloading for intensive stuff, at least with Wayland gnome I’ve found integrated is indistinguishable performance from using the GPU anyway

        • 0xCAFe@feddit.de
          link
          fedilink
          arrow-up
          2
          ·
          1 year ago

          Just installed NixOS with Wayland and Gnome the other day on my laptop with Nvidia card. I had to tune the config a bit, but it works flawless now – notably also with the offload command. That’s fine for me though because it saves considerable energy if the GPU only runs on request.

          • dandelion@beehaw.org
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            That could be a 2 birds one stone situation for me. My daily driver is a laptop with Nvidia hybrid GPU setup and it’s hella-twitchy with X. If its more stable with Wayland that’s yet another reason to try switching.

    • Flaky@iusearchlinux.fyi
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      I use Waydroid on EndeavourOS just to run Apple Music. Waydroid basically virtualises an x86 build of Android and uses containers rather than emulating an entire ARM device. The most difficult thing was getting firewalld to let Waydroid access the internet.

      • Mandy@beehaw.orgOP
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        as far as i could find out the app i tried to run needs an arm environment (dont quote me on that cause im not a rocket scientist), so waydroid is out of the window now too

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      7
      ·
      1 year ago

      “when it works, it works” sure, lucky you than i suppose

        • Mandy@beehaw.orgOP
          link
          fedilink
          English
          arrow-up
          2
          arrow-down
          1
          ·
          1 year ago

          you can make a lot of stuff work with all the work you want

          but some people are crazy enough they like to have it a little easier you know, linux doesnt always have to be about making things work

          • flashgnash@lemm.ee
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            If you need non-standard functionality you can’t just expect it to work out of the box and then get upset when it doesn’t, windows and Mac don’t have an easy method that gives you that kind of performance either

            • Mandy@beehaw.orgOP
              link
              fedilink
              English
              arrow-up
              2
              arrow-down
              1
              ·
              1 year ago

              its not about doing one extra step, its about a continuous flow of them, its like jumping through hoops with each subsequent one getting smaller each time, one or two extra steps? fine, whatever, but having to literally troubleshoot each step cause nobody bothered to make it work properly? thats a little much

              ill end it here, cause you dont seem to want to understand the plight of a person that doesnt wanna spend an hour troubleshooting something that should just work at least a little easier

  • Dandroid@dandroid.app
    link
    fedilink
    arrow-up
    17
    ·
    1 year ago

    There’s one that you can download through Android Studio. It’s pretty good if you have Linux as your host OS, as it will share your Linux kernel rather than emulating it. I guess by definition that’s not an emulator, though, so it technically doesn’t answer your question.

    I haven’t used it with Windows as my host OS since around 2016, but it was not very good back then.

    • I don’t think the Android emulator in Studio shares your kernel, does it? I know it’s using KVM like a nornal virtual machine with some GPU acceleration tricks, but I don’t think it went full-on container mode yet.

      Anbox and Waydroid have, those definitely share your kernel. That’s why they require two deprecated kernel modules that only Android still uses.

      • Dandroid@dandroid.app
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        Ah, I’m not sure. It’s been a few years since I have been an Android developer. My memory is getting fuzzy. KVM sounds right, tbh. But I know that when switching from Windows to Linux made my performance (on the same hardware) go from damn near unusable to nearly perfect.

  • lemmyvore@feddit.nl
    link
    fedilink
    English
    arrow-up
    19
    arrow-down
    7
    ·
    1 year ago

    Perhaps because scrcpy exists? It’s very easy to mirror an Android device on the PC with it and control it with mouse and keyboard, and everybody has an Android device around. So why bother emulating one.

    The ones with the most need to emulate are app developers and Android Studio does have an emulator included iirc.

    • mycodesucks@kbin.social
      link
      fedilink
      arrow-up
      5
      ·
      1 year ago

      Yeah… I feel the intent here isn’t to use the same Android installation on a bigger screen - it’s about taking back control and setting up Android environments on your own terms without unnecessary hardware. It’s a totally different use case.

      • dandelion@beehaw.org
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        While I appreciate the difference between mirroring and emulation, @lemmyvore@feddit.nl might have a point in so far as scrcpy and other options that aren’t emulation, may still be part of the reason why no one is making polished emulation options. If a dev can get by with a bunch of physical devices connected and controllev via adb, scrcpy and the like, or a passable emulator in Android Studio, then there’s less reason for them to build or contribute to an emulator for their needs, and consequently op (and the rest of us) don’t get a shiny open-source emulator.

  • DrRatso@lemmy.ml
    link
    fedilink
    arrow-up
    8
    arrow-down
    1
    ·
    edit-2
    1 year ago

    I have not tried it but BlendOS claims native apk support iirc.

    E: Ok, perhaps native is incorrect terminology, I just checked it and it seems to use WayDroid which was already mentioned in the thread. They ship with Aurora store and F-Droid, you can probably make those work on your distro too.

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      blendos sounds nice and all but its claim of being able to install any package from any distro just sounds like a nightmare to maintain, there have to be issues coming from this right?

      could you perhaps sell that distro to me?

      • LinuxSBC@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        It’s just a few distrobox containers. It’s not hard to maintain, and you can do it on your own distro.

        • Mandy@beehaw.orgOP
          link
          fedilink
          English
          arrow-up
          2
          arrow-down
          1
          ·
          1 year ago

          i dont think thats not how you sell and the 20 seconds i spend on looking distrobox up, it seems to be terminal only, for something as important and big as a distro in a distro, terminal only seems a ltitle to “KISS” for me

          and if waydroid doesnt even work unless you do some serious hackerman stuff, how am i supposed to make distrobox work for android?

          does blendos solve the arm problem for apps at all?

          • LinuxSBC@lemm.ee
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            I don’t care about the distro. You can get basically the same thing from Vanilla OS, uBlue, Fedora Silverblue, and many others with just a small amount of configuration.

            You use Distrobox from the terminal, but distrobox export lets you install graphical apps in a Distrobox container but integrate them with the host. BlendOS (and Vanilla OS) just combine it into a package manager. It’s also not “important and big,” it’s just a container—basically just WSL for Linux.

            Distrobox doesn’t work with Android. I was talking about the “install any package from any distro” part. BlendOS just adds in Waydroid support.

            No, it does not. It’s just Waydroid, which IIRC requires x86 apps.

      • DrRatso@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        I can’t sell you something I haven’t used, even the components (distrobox and waydroid) I have not tried since I have personally no usecase for them. I mentioned BlendOS purely because from my passing look at it the android app support stuck in my memory.

        The beautiful thing with linux is, you could just burn the live USB and boot the live environment to test it out for yourself, without practically any hassle or run it in VirtualBox.

        As I gather you run Endeavour but then complain about the hassle of doing things in Linux. Endeavour is basically arch with a GUI installer + some extra tidbits, realistically it is as close to being arch as you can be without actually calling it arch. Arch is not a system for people who like things to just work withou “hackerma solutions”. Just look at Arch Wiki FAQ , specifically sections 1.2 and 1.6. If you want something simpler, perhaps try another distro.

        • Mandy@beehaw.orgOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          endeavor was the least trouble i ever had in regard of never having any hassle, i had to jump through far more hoops trying to get certain things working in say…linux mint, than i ever had with endeavouros it makes arch actually usable instead of a nightmare to install

          i just have to type 3 letters and it updates everything, no hassle, speedy and actually easy (for once)

          thanks for the arch wiki link but 3 out of 4 times i have to force myself to use it, i eventually give up and search for the proper answer somewhere else cause i dont want to read the entire history of binary to understand it

  • rayon@lemm.ee
    link
    fedilink
    arrow-up
    6
    ·
    1 year ago

    Do you mean emulators such as the Android emulator that comes with Android Studio, or is the latter lacking features that other software on windows possess?

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      7
      ·
      1 year ago

      android studio is painfully slow and has not exactly a friendly userinterface (its been a couple of years)

      • The emulator inside Android studio is a separate binary. If you use Android studio like a heavy weight software update tool, you should see near native performance if you just launch the emulator on its own.

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      docker huh? i might try that one out, keep me updated on how its going for you if you dont mind

      • Mandy@beehaw.orgOP
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 year ago

        just tried it, not only doe it run in a browser , it runs like absolute ass, can barely open chrome, and the interface around the interactable window is genuinely bad

  • drwankingstein@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    How is waydroid a hassle? also literally all android emulators ARE just android x86 in a VM, the VM of choice is typically virtualbox

    • Mandy@beehaw.orgOP
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      1 year ago

      installing some random kernel that has the modules waydroid needs watching what gpu you have, which changes the instructions a little and even than its pure luck if waydroid even manages to use these binders

      id call that a hassle

      • drwankingstein@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        1 year ago

        Waydroid will work out of box if the kernel has binder or binderfs enabled, which I believe ubuntu based, pop, fedora all have it OOB, on arch, you have linux-zen in the main repo, this covers the large majority of linux installations, I would recommend asking your kernel packagers for your distro to enable binder/fs. at this point, I would classify that as a distro issue.

        • Mandy@beehaw.orgOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          zen doesnt work with endeavouros at all, never loaded (tried it less than an hour ago) and you either need to use a tiling wm, or gnome/kde neither of which i would do willingly

          • drwankingstein@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            1 year ago

            Zen works fine in endeavor for me last I checked, but then again I haven’t checked for a few mkneths I don’t recommend using our derivatives anyways.

            on Wayland supported compositor “works” (hyprland and wayfire seem to have some issues). I personally use waydroid via cage ontop of x11. but a lot of people use weston. Ive been meaning to test cosmic but haven’t gotten around to it.

            EDIT: I haven’t seen any other users talking about issues using zen kernel on the telegram either.

            • Mandy@beehaw.orgOP
              link
              fedilink
              English
              arrow-up
              2
              ·
              1 year ago

              not unusual that you claim it works for everyone but me, its neither the first nor the last time

              you are merely supporting what i said that it barely works for anything but tiling vms and some few select DEs, if you can even call wayfire that and i would very much like to avoid tilingvms at all costs, id like to use something more, well, usable

              • drwankingstein@lemmy.dbzer0.com
                link
                fedilink
                English
                arrow-up
                1
                ·
                1 year ago

                how so? People rarely have issues outside of some janky endeavor related bugs. hyprland’s issues also effect other applications like wine,

                it works on nearly every wayland compositor I have tested, labwc, and enlightenment are included. no idea where you get the impression that it only works on tiling wms.

                • Mandy@beehaw.orgOP
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  edit-2
                  1 year ago

                  I dont? Like i said, mainly tiling AND a select view graphical enviroments,

                  Gnome i find entirely unusable,

                  and enlightement just takes apples infuriating design choices,

                  And those, for me, are quite the limited selections to make it work

                  Edit: if it where to workwith a for me much more to use de like cinnamon or xfce, than id be more inclined to properly dive into it

    • lemmyvore@feddit.nl
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      What would you put in the VM? Each Android ROM is highly hardware dependent and each device’s internal storage is highly fragmented into a couple dozen partitions configured in proprietary formats.

      Theoretically a GSI ROM is supposed to be hardware-independent thanks to Treble but you would still need a common base to go with any GSI ROM and I’m not sure a generic one has been made specifically for use in a VM.

      • drwankingstein@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        What would you put in the VM? Each Android ROM is highly hardware dependent and each device’s internal storage is highly fragmented into a couple dozen partitions configured in proprietary formats.

        Android x86 and derivatives are as generic as possible, like any other linux ISO you can flash it to most any computer assuming the kernel is new enough, Bliss OS is up to date with the latest LTS kernel based on xanmod, and android 12L

        • drwankingstein@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          2
          arrow-down
          1
          ·
          1 year ago

          no it isn’t, it isnt that at all, that is so far off the mark it’s extraordinary. Android x86 is as it’s name implies, a generic x86 iso. you can install it to physical hardware or a VMM equally the same, in fact, it’s literally the exact opposite of highly customized.

          it’s explicitly as generic as it can be

          • Square Singer@feddit.de
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Apparently you never had a look at it. Getting Android to run on x86 is by far not trivial these days. To make it work, Android-x86 has a lot of modifications over AOSP, including drivers, HAL and a lot more.

            Just checkout their Git to see what they had to do to get it working.

            • drwankingstein@lemmy.dbzer0.com
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              I am intimately familiar, it is not highly customized for VMs, it is as generic as it can be. a lot of work was put into making it work on x86 as a whole, but not just VMs.

                • drwankingstein@lemmy.dbzer0.com
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  arrow-down
                  1
                  ·
                  1 year ago

                  Yes. Many. Blisslabs has partnerd with EIDU to work on tablets for low income countries. I personally have sold android boxes with Bliss. Ax86 has a large number of sponsors that are/were casinos. There are people working on using it in cars. 2-In-1s. ETC.

                  VMs are the minority use case…

    • drwankingstein@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      nearly all android emulators are VMs, usually vbox, common ones include bluestacks memuplay. WSA uses hyper-v infranstructure. GooglePlay Games uses crosvm

      • X3I@lemmy.x3i.tech
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        No, qemu can run ARM images with ease. If I recall correctly, waydroid is using that approach

        • 520@kbin.social
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          There’s a bit more to an emulator than simply running Android on x86 hardware.

          • drwankingstein@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            not really no. I mean, sure you could add a fancy gui on top of it. but 90% of android emulators are some kind of android x86 + libhoudini/ndk + vmm. some modify surfaceflinger so that each application will render to it’s own window, but usually it’s just disabling launcher, and sending some kind of command to open the app from a gui (IE. sending adb launch commands)

            • 520@kbin.social
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              1 year ago

              Yes and no.

              In general it is true that an emulator just needs to translate instructions, but for things like games and the Android operating system, your emulator also needs to use whatever hardware acceleration you have or it will run like dogshit.

              Android makes extensive use of graphical acceleration to the point where it is a mandatory requirement. There is no part of the UI that doesn’t use hardware acceleration.

              Luckily Android uses OpenGL ES, and there are means to translate that into Vulkan without too much issue.

              But what you’re talking about is virtualisation for the most part - the only thing arguably doing any actual emulation in your scenario is libhoudini. Otherwise, there isn’t any translation of instructions - The Android VM instructions get executed directly on Ring 0 of the CPU

              • drwankingstein@lemmy.dbzer0.com
                link
                fedilink
                English
                arrow-up
                1
                ·
                edit-2
                1 year ago

                whatever hardware acceleration you have or it will run like dogshit.

                and? vbox, qemu, hyperv and vmware, all have gpu acceleration to a degree. Qemu will also be getting vulkan acceleration soon

                EDIT: forgot crosvm (google play games) which does too

                • 520@kbin.social
                  link
                  fedilink
                  arrow-up
                  1
                  ·
                  edit-2
                  1 year ago

                  And therefore it means that in addition to doing translation work, they themselves need to implement hardware acceleration. That’s why you see many game emulators requiring DirectX even if the console in question never used it.

                  Oh, and 4 of the 5 products you mentioned are not emulators. Of the 5, only QEMU is fully capable of emulation. There is a massive and important difference between virtual machines and emulation.