Regardless, the fact that Android’s Linux Terminal can run graphical apps like Doom now is good news. Hopefully we’ll be able to run more complex desktop-class Linux programs in the future. I tried running GIMP, for example, but it didn’t work. Eventually, Android should be able to run Linux apps as well as Chromebooks can, as I believe one of the goals of this project is to help the transition of Chrome OS to an Android base.
↫ Mishaal Rahman at Android Authority
It was of course inevitable that someone would run Doom on Android’s new Debian container, and it’s pretty cool to see it work without much issue already, even if the new terminal and container setup are still in such heavy development. Like many other people, I love the idea of my smartphone being both my, well, smartphone, as well as a full desktop PC once you connect it to a display and some input devices. As wireless technology keeps advancing, we soon might not even need to plug anything into the phone at all, and just having it in our pocket is good enough, which would be amazing.
That being said, I would want such functionality to come from a traditional Linux setup, not Android’s idea of a Linux setup. Running a Debian virtual machine on top of Android is probably preferable for a lot of people for a variety of reasons, but I’m a Linux user and want plain, regular Linux running directly on my smartphone, not some virtual machine on Android, which, while being a Linux distribution, is not the most pleasant variant of Linux to run and use.
Well… something that I expected to see 10 years ago (and which is absolutely no-brainer, if you will think about it) is finally happening: Android is heading to desktop and is also on the road to become self-hosting.
We are probably couple of years from the first devices being released, but I think betas should be ready by the end of 2025… the big question is whether they would be public betas or only internal ones.
P.S. I wonder why every OS everywhere, except for x86 platform, needs its own fimware: Windows needed special firmware to work on PowerPC (and wouldn’t boot on regular PowerPC Mac), the same is true with AIX and Windows, now, reportedly, Android is developed on regular ChromeOS devices, but also with a special firmware… is it a way to clamp on leaks (even if you get an image of OS you can not try it on your out-of-the-shop device without special hardware to reflash the firmware) or is the reason deeper?
Other ISAs don’t have a standardized bootloader or a standardized way to draw things on the screen, x86 has BIOS and VGA as the bare minimum. And it also has EFI and VESA (VBE) on systems made during the past 15 years. This means that if your OS installer supports BIOS, EFI, and VGA, you can create a universal image that works everywhere. If you want to get fancy, you can also support VESA so the GUI installer has access to more than 16 colors. Then after the basic install is done, your OS can download additional drivers (athough realistically you have to bundle drivers for WiFi and Ethernet adapters with the installer for that to happen, but it can be done).
On the contrary, good luck building a universal ARM image that even boots in every ARM device (or even every Android ARM device). There is no bootloader standardization at all. Same for PowerPC, Apple PowerPC and IBM PowerPC were two different platforms even down to the bootloader.
You are talking about supporting different machines with one OS image. I’m talking about different firmware! The one that’s NOT part of the OS image. Read here, e.g.: https://mirror.rqsall.com/www.sunhelp.org/pipermail/rescue/2002-December/079761.html
And now for Android on Chromebooks… they do the same trick: you couldn’t just take device with stock firmware, you need to update it, first… and that needs special dongle, simple USB stick wouldn’t work.
But why? What does that firmware include that’s so important for NT or, now, Android?
It’s the same problem: no standardized bootloader for that ISA. Whether the difference is at the hardware level or firmware level is irrelevant from the perspective of the OS image. There is a variant of the hardware with “NT firmware” and one with “SRM firmware”, both with different bootloaders. So, you cannot make a universal OS image that boots on every machine, you have to make an OS image targeting “NT firmware” (even if your OS isn’t Windows NT) and one OS firmware targeting “SRM firmware”. And if you only have to ship two images, it’s in the realm of possible, on ARM there is much more variation that it’s not possible to ship an image.
Also, let’s appreaciate Microsoft enforcing uniformity in the PC ecosystem, by forcing all manufacturers to make their PCs work with their single image if they want to run Windows. If Windows NT was so important on DEC Alpha as it is on the PC, everyone including DEC themselves would be targeting the “NT firmware”.
kurkosdr,
For all the things I dislike about MS, I agree with you about the importance of the role they played in enforcing platform uniformity. I don’t think linux/FOSS would have been viable on x86 desktops if every hardware vendor had to supply custom images/firmware (ie the android situation). These days linux is in a stronger position of course thanks to x86 standards and data center market share. But if not for strong x86 standardization in the 90s, this may never have occurred.
Despite the fact that android runs linux, I think it’s a shame that we don’t have ubiquitous platform standards like x86. I pretty sure we already agree.
PowerPC had standards such as PReP and CHRP, but not everything followed them. Other architectures also had standards which again weren’t always followed.
NT ran on PPC, MIPS and Alpha but typically required NT-specific firmware on those systems.
On Alpha you had SRM used by OpenVMS, Digital Unix, Linux, BSD etc… And then the NT firmware AlphaBIOS which was only used by NT.
Sparc and HPPA only had one firmware standard, but then there was no NT for these architectures. Sparc could run SunOS 4, Solaris, Linux, BSD and NextStep, and there were Sparc clones made by multiple manufacturers.
There were plenty of x86 systems which didn’t follow the IBM standard too, although they tend to be highly niche.
If Google wanted their smartphone OS to be regular Linux, they would fork Moblin back in 2007, they wouldn’t buy the Open Handset Alliance. That ship has sailed a long time ago, when Android succeeded in the market and all smartphone OSes based on regular Linux died in the market (or where killed for the case of MeeGo).