this post was submitted on 14 Aug 2023
121 points (92.9% liked)

Linux

48375 readers
1717 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 76 points 1 year ago* (last edited 1 year ago) (14 children)

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.

[–] [email protected] 26 points 1 year ago (1 children)

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

[–] [email protected] 22 points 1 year ago (2 children)

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.

[–] [email protected] 12 points 1 year ago (1 children)
[–] [email protected] 11 points 1 year ago (1 children)

Depends on who you ask and how charitable they're being. hahaha

[–] [email protected] 8 points 1 year ago

well, the fact you can code is better thna a whole lot of folk if you ask me

[–] [email protected] 3 points 1 year ago

There's only one way your code gets better. And thinking your code sucks give you much more potential to improve than someone who thinks their code is perfect.

[–] [email protected] 3 points 1 year ago (3 children)

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

load more comments (3 replies)
[–] [email protected] 3 points 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.

load more comments (11 replies)
[–] [email protected] 26 points 1 year ago* (last edited 1 year ago) (1 children)

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.

[–] [email protected] 16 points 1 year ago* (last edited 1 year ago) (1 children)

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.

[–] [email protected] 3 points 1 year ago

Well there's Blend OS which comes with built in Waydroid integration.

[–] CameronDev 22 points 1 year ago* (last edited 1 year ago) (2 children)

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.~~

[–] [email protected] 6 points 1 year ago (1 children)

"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 4 points 1 year ago (1 children)

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.

[–] [email protected] 4 points 1 year ago (1 children)

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

load more comments (1 replies)
[–] [email protected] 5 points 1 year ago (1 children)

It's Windows only with a macOS port that isn't even out yet.

[–] [email protected] 4 points 1 year ago (1 children)

And nevermind the fact it's sketchy as fuck.

load more comments (1 replies)
[–] [email protected] 21 points 1 year ago* (last edited 1 year ago) (7 children)

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

[–] [email protected] 5 points 1 year ago (2 children)

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?

[–] [email protected] 7 points 1 year ago* (last edited 1 year ago)

[This comment has been deleted by an automated system]

[–] [email protected] 3 points 1 year ago (3 children)

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

load more comments (3 replies)
[–] [email protected] 3 points 1 year ago (1 children)

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.

[–] [email protected] 3 points 1 year ago (1 children)

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

load more comments (1 replies)
load more comments (5 replies)
[–] [email protected] 17 points 1 year ago (3 children)

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.

[–] [email protected] 4 points 1 year ago

android studio does not share the linux kernel on host. it uses KVM, but the perf I doubt would be here, could be virgl?

load more comments (2 replies)
[–] [email protected] 12 points 1 year ago (2 children)

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.

[–] [email protected] 18 points 1 year ago

mirroring is hardly the same as emulating tho is it

[–] [email protected] 5 points 1 year ago (1 children)

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.

[–] [email protected] 3 points 1 year ago

While I appreciate the difference between mirroring and emulation, @[email protected] 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.

[–] [email protected] 7 points 1 year ago* (last edited 1 year ago) (6 children)

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.

load more comments (6 replies)
[–] [email protected] 6 points 1 year ago (1 children)

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?

[–] [email protected] 7 points 1 year ago (1 children)

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

[–] [email protected] 4 points 1 year ago* (last edited 1 year ago)

[This comment has been deleted by an automated system]

[–] [email protected] 3 points 1 year ago (3 children)
[–] [email protected] 3 points 1 year ago

That's a pretty sketchy project with a lot of paywalling and data collection

load more comments (2 replies)
[–] [email protected] 3 points 1 year ago (1 children)

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

[–] [email protected] 3 points 1 year ago (5 children)

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

[–] [email protected] 3 points 1 year ago* (last edited 1 year ago) (16 children)

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.

load more comments (16 replies)
load more comments (4 replies)
load more comments
view more: next ›