If you could make a non-linux OS go mainstream, which one would you pick?
I make the specification of non-linux because otherwise this would just become a thread full of obscure distros that do the same thing as a million other distros.
Some lesser known OSs:
AROS - based on Amiga OS, has some derivatives like IcarOS and MorphOS
It is an absolutely revolutionary OS by some of the original creators of Unix, that extends its core concepts in more coherent and elegant ways into the world of modern computing, instead of having everything from networking on up be tacked on by people who were perfectly capable but lacked the vision.
Examples:
Instead of NAT, if one machine on your network has the internet and the others don’t, you can say “use that other machine’s network stack now” and boom everything works. Your machine knows what its real external IP address is, it can listen on world-facing ports on the other machine as it needs to, everything works and is simple.
There’s a command for “run the rest of this session’s commands on that other machine’s CPU / memory” and it all just works. The sensation is that your computer just got magically faster.
Etc etc. I actually haven’t played with it extensively, and deployment is so limited that I’m not sure how useful it would even be, but if you are a fan of well made OSs that do things in a genuinely different fashion, it is objectively the best option to play around with. sdf.org has a place you can get an account on their Plan 9 machines and they do little free beginner courses in it over livestream.
I've come across Plan 9 in the past and assumed it was only really useful in a "time-sharing" type scenario like OG Unix used to be used for. Am I wrong about that?
Think less about time sharing and more about using all the computers you own together.
You would have a netbook with no compute power as your UI sitting on your couch. You could connect to your beefy desktop to do all the computations for your video editor or playing a game and never have to be sitting at your desk.
You could also have a big file store device with lots of drives to store stuff.
We can do some of this now, I ssh into my desktop from my couch and have a NFS in the basement. But they all operate as separate devices that i have to really work at getting to operate together. Plan9 was designed where you'd just pick devices off of the network and the tasks operated normally. Pick your video card, local or over the network to the beefier GPU.
The networking stuff probably won’t do you much good if you do not have other Plan 9 systems to talk to, but the GUI and window manager and editor, those also operate in this way that’s 100% different from anything else that exists. To me the networking and the way the file sharing works are probably the most interesting things, so IDK, you might be partly right.
I think this might be part of why it hasn’t caught on at all is that a lot of the stuff about it that works better only works better when talking with other Plan 9 systems, of which there aren’t really any.
I'd say so. It was built to be the sort of general purpose OS that Linux is, only taking into account everything we've learned about how to make a good operating system from the whole history of *nix. And Plan 9 is newer than Linux in the sense that its first release came out after the Linux kernel's first release. X11 has even been run on Plan 9 with adapter layers.
At a quick glance on the wiki page, it sounds like something that would work great if we needed hundreds "dumb" terminals that just connected to a central server and received/displayed the output back to the user
Incorrect. That’s X11; we have that. Plan 9 is a little hard to explain quick, but I gave some examples already of stuff that is trivial with it that’s a big weird difficulty on other modern systems, but in addition to that the whole UI and the terminal / editor also work radically differently to how Unixlike systems do it.
Every web app you use right now - which is most of your day for most users - is just a dumb terminal UI hitting some API on some foreign computer.
Plan 9 uses the file system as a way of interacting with apis. Linux took this idea directly by copying in the/proc filesystem from 9, which are not bytes on a disk but are instead the kernel presenting its running processes in the format of files and directories in your file namespace, and with which you can interact to control those processes.
It also took this idea and created FUSE - file systems in user space - so that you can do the same thing on Linux as a user, but with not quite the same ease you have on plan 9 - and notably, fuse file systems are not naturally network file systems, and so you can't export them as easily to the network as you can with nine machines, where it's implicit.
Last, Linux took the idea of per-process namespaces from 9, setting the stage for all of the docker, snap, etc. tools we use today.
In short, a lot of nine already is mainstream because it's been adopted by Linux. However, using plan 9 and then returning back to Linux feels like putting on bulky gloves, because Linux did not start with these concepts in mind, but bolted them on after.
I wish I would win top prize of some lottery, I'd donate a good deal of money to ReactOS and pray it finally developed enough to at least manage to make stable installer images
"inspired by" would be more accurate. there's no original BeOS code in Haiku for legal reasons (other than the interface, which was open-sourced with the release of BeOS 5). All backwards-compatibility with original BeOS software is (impressively) reverse-engineered. Haiku OS is, itself, original software made to - in every way - look, feel, and operate just like BeOS did.
edit: i had a buddy in high school who had a BeBox. it was like having the best of a Mac and a PC in one machine. it really was a spectacular machine and OS. i really wish Apple had picked it up, but they went with NeXTSTEP instead, which, i admit, was still a pretty solid choice.
It really feels like any alternative in mobile space would be a welcome addition, though first we'd need OEMs to stop being assholes and allow users to more easily install custom ROMs or whatever.
Redox isn't Linux, it uses its own kernel. I want this one to succeed above all others, just because Rust was born to perform this kind of application: guaranteed memory safety when dealing with tens of thousands of lines of code handling hundreds of moving parts running thousands of different tasks, all at a very low level.
I'll second Plan 9, just because it sounds like scifi and truly takes advantage of how interconnected all computing hardware has become.
Third place goes to anything based on GNU Hurd. The microkernel architecture intrigues me, and I'd like to know how it effects the end user. Plus I'm just a big fan of the copyleft/FOSS aspect.
Also, I'd just like any mobile device alternative that's not AOSP, and Linux seems like a bad fit for mobile in general. Why do we need a fully-featured, all-purpose kernel when we're only gonna put it on a known number of SoCs and therefore a known set of hardware configurations? We could be optimizing the hell out of our privacy-friendly mobile OSes, but instead we've shackled ourselves to google or linux
Firefox OS. ...really I just want Chrome OS but FOSS by Mozilla. I know it's anti-privacy, but having sign-in + 1 click deployment on a new device is dope
Serenity for sure. I love the 90s aesthetic and would like to see it make a comeback. At the very least I'd like to see their Ladybird browser become mainstream - we really need more alternatives to the Chromium family.
To name something that hasn't been mentioned yet, ArcaOS, which based on OS/2. It supports modern hardware and in addition to some preinstalled software, it also has some compatibility layers to run software from other OSs.
I still remember the huge marketing push IBM put into it in the mid-90s. Who would have thought it wouldn't take off when they never actually showed what it looked like. Just a bunch of people describing it.
Refox OS. I know today isnt a magic bullet but it makes committing memory mistakes a lot harder. Also rust gets first class status as the is standard library calls it and we can slowly get over the legacy of C.
The only one of these that I know is Haiku (as an extension of BeOS). I was already a Mac user when Apple was flirting with purchasing Be, so I installed in on my PowerMac 9500 and took it for a test spin. I liked it, though I was too young and inexperienced (and this was pre-broadband) to really get a good feel for it. I think I switched back to MacOS within a day just because what else did I know to do with it.
Or ideally, something like Android was supposed to be, with exclusively non-native executables. "Java but good." So I guess some .NET atrocity, or an obscure SPIR-V project.
Nobody's mentioned Guix. It's a GNU project, which is like Nix, but has a number of novel features. I'll copy in from my own thread about it:
Based on what I’ve heard so far: GNU Shepard instead of systemd, a package manager that compiles things from source and allows user-defined compiler options, a totally different way of arranging system files, and Guile-Scheme is used for everything; it sounds like there’s no other kind of configuration anywhere.
It's planned to be Hurd compatible, so I'd argue it counts.
I can't decide if that changes my answer or not... lol Seems like a cumbersome way to browse files, but maybe that's because it isn't how I've learned...
Honnest question: why is it Linux? I can't find relevant information on the matter. Every source point the fact that it's a bare metal hypervisor therefore not Linux but that's all. Could you enlighten me on the matter? Thanks in advance.
Honestly, if I had this magic power, I'd pick something like Ubuntu or Fedora. The exact pick doesn't matter, I don't want this to devolve into a holy war, but I want to "The Year of the Linux Desktop" to stop being a tongue in cheek meme. I want Windows and Apple to have to make meaningful changes to maintain their market share.