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
- Haiku - based on BeOS
- Redox - Unix-like, made in Rust (might technically count as linux?)
- Serenity - Unix-like, very late 90s look and feel
- Kolibri - Tiny OS, the image is ~44MB. It also has a smaller version that fits in a single floppy.
- PhantomOS - When 3 Russians decide to turn everything about a typical OS upside down.
Plan 9
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.
This. I’d love to see Plan 9 go mainstream in some form, but alas it seems very unlikely.
I’ve heard said of it that it’s "more Unix than Unix.
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.
Gotta love the naming of a P9 user space fork: Plan 9 from User Space
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
That’s most of what we do today.
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.
/Tinyrant
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.