What are the chances this can be used to run android apps on Linux phones?
post
This seems rather cool!
on an unrelated note: why do companies keep buying different domains instead of reusing old trusted ones?
git.steampowered.com or git.valvesoftware.com would be perfect but they are using https://gitlab.steamos.cloud now?
If I only saw the domain I would never expect it to be officially by valve...
It reads like a cheaper scam, right. I think there is something to make it not about them or steam alone, from both the open source and business perspective. But there are TLDs more reputable and relevant to said project than .cloud at least.
P.S. And do they use Anubis? It's like the biggest project I saw using it, and without any paid customization too.
If anyone has a conparison on how this fork compares to Waydroid: Link pls, I'd like reading it
So this is for putting Android VR games on Steam Frame. Like games released on the Quest and Pico
This looks good, has anyone here used it yet?
I have the discontinued free Sega games on my phone and would like to see about transferring the files to my PC and playing them. I don't play any games on my mobile.
Lepton disables various Android services that are not required to run games possibly breaking compatibility with some applications.
Lepton is intended to help game developers bring their VR Android games to the Steam Frame. Other usecases are possible, but were not the focus of development and may lack polish.
Since its intented for the Steam Frame which also runs on ARM does Lepton even make Android games work on X86?
Lepton = Android --> Linux
FEX = x86 --> ARM
So, there's no ARM -> X86 translation layer baked in?
I mean this is a fork of Waydroid, which runs Android apps directly on x86, so I don't think it should be necessary.
I think waydroid only supports running apks compiled for x86, there is no translation layer. So if the app you wany to run only has arm builds, which is likely, it won't work with waydroid.
Huh? No APKs are compiled for x86. Why would they be? Have you ever used Waydroid?
You’re both wrong 😑
There are some APKs compiled for x86.
Waydroid supports 2 different ARM to x86 emulation layers.
not building x86 is up to the developer, the default according to the native sdk
The default behavior of the build system is to include the binaries for each ABI in a single APK, also known as a fat APK. A fat APK is significantly larger than one containing only the binaries for a single ABI; the tradeoff is gaining wider compatibility, but at the expense of a larger APK. It is strongly recommended that you take advantage of either App Bundles or APK Splits to reduce the size of your APKs while still maintaining maximum device compatibility.
At installation time, the package manager unpacks only the most appropriate machine code for the target device. For details, see Automatic extraction of native code at install time.
so if you use the apk from your phone it may or may not contain an x86 compatible binary.
Of course there are, mostly for Chromebooks.
I didn't think Chromebooks ran Android apps? It's just a browser-based OS?
They do, but that's not even the primary reason for x86 Android apps. Android developers on e.g. Windows will test their apps during development, so the app will normally get compiled for x86 to use on an emulator on their PC. The ARM version is only required for the final published release, or testing on a real ARM device. But since x86 is the "default" in the development process, there is little reason not to send both to Google Play, since you are making x86 builds anyway for your own use during development.
Nowadays this process is mostly transparent for developers, they just write an app and Google Play handles splitting it by architecture, so most apps have an x86 version even if the developer didn't do anything.
from what i can tell, waydroid has some translation layers libndk or libhoudini. however majority of android apps require some kind of java runtime. native apps you (the ndk build system) generally create a release for arm + x86 and its up to the release pipeline to build for each platform. i don't use waydroid much outside of playing around with it for a few minutes when i get bored. however I'm curious if a lot of the issues people have with waydroid is because of taking an arm version of the apk from their phone and not grabbing a x86 one?
Is there an x86 build of every app?
no but the dev controls it. if the dev is using the ndk and the dev is not doing the extra step of disabling/configuring it there should be in "fat" apk with each binary for each platform according to the docs. then the installer can figure out which version to use.
the x86(/_64) version is used for Chromebooks i believe. some devs will split the apk if they configured it to reduce size so you would need to specifically go get an x86 apk version.
the cases where a dev would disable it is if they only want to support specific instructions that might be platform specific or say a library they use doesn't support target ABIs
It possibly has this limitation now but it should in theory not be hard to support x86 android apps at the least. There's always the more general purpose waydroid as an alternative.
Oh right, I guess it world help if I had basic knowledge of the steam frame. For some reason I thought it was like steam machine but handheld.
i like the frog
why is Valve obsessed with frogs?
Are you not?
Icefrog maybe?
My kid's been bugging me to run her phone games on PC. I had trouble getting them to work with Waydroid. Hopefully Lepton will make that easier.
I feel like this could be huge
I will be abusing the fuck outta this once it's forked and adapted for non-gaming purposes to avoid shitty electron apps forever. Most electron apps have Android equivalents that run way better and eat far less RAM. Can't wait ☺️
You can already do this with waydroid no? Afaik lepton is a fork.
If you can get Waydroid to work, sure.
I've had no such luck across different distros.
Waydroid has never worked well on any system I've tried it on. And sadly, it doesn't really work on ARM Linux installs (ironically), which is one of the places I need it.
Lepton should work better on ARM systems since it doesn't also bundle x86_64 emulation. It leaves that to FEX, which is cleaner.
When they first announced it they said that they are by now far removed from Waydroid, making it work very differently. I guess that is why they didn't work with the Waydroid devs like they did with Wine.
This along with fex was what I was most excited about with the steam frame. I really hope both of these mature, and have communities rise up around them.
This could be massive for Linux phones, if I understand it correctly
We already have Waydroid for "natively" launching Android apps on Linux phones, and it sounds like maybe this is based on that? Or at least it mentions getting something from that, but maybe it's just techniques and no code?
Either way, more openness is better, and I can't imagine it'll make things worse!
Most likely not just any arbitrary APK
https://gitlab.steamos.cloud/frame-public/lepton
Lepton is intended to help game developers bring their VR Android games to the Steam Frame. Other usecases are possible, but were not the focus of development and may lack polish.
From what I understand, if you try to launch a flat application, it attempts to launch it in VR mode which is screwy. It best, not a useable experience.
But maybe some day. This certainly lays the groundwork to allow that functionality eventually.
How does lepton compare to the various emulators out there? Anyone used it before?
I wonder if Valve will try to get Netflix to work with the Steam Machine through such efforts.
And that's why steam are worth supporting. Things like this
I genuinely fear the day where gaben steps down
I hope he has things in place to prevent his successor to completely fuck everything up
My understanding was the Frame uses Lepton or Fex. Lepton for android arm games, FEX for intel x86_64 PC games. I'm not aware of many (any?) android+intel exclusives that would use both. Happy to be corrected if wrong though! Won't find out any time soon after being waitlisted though!
One of the Steam Frame articles said that they were using Lepton and Fex together, something like Android app >Lepton> x86 Android app >Fex> Steam Frame.
It would make a lot of sense to not convert android apps from arm to x86 and then back to arm, but I'm not 100% on those details yet.
I edited the post description to make it clear that I'm unsure on this.
all 15 comments