free software resistance
the cost of computing freedom is eternal vigilance
### tcoyc-a-comparison-of-operating-systems
*originally posted:* nov 2023
technically speaking, it is possible to run your computer without an operating system. the operating system really is just software that runs your programs and talks to the machine for them, and you can make a single program that functions as this system if you prefer.
the reason no one does this is because its not practical to do so. you can absolutely write your own operating system if you dedicate enough time and study to it- thats how the linux kernel started- but before you try doing this, you will probably try compiling an existing os and running it on your computer.
so lets talk about what operating systems are available.
the most popular systems from decades ago were windows and dos. this is not an endorsement of either, but i did learn many of my computing skills on dos and i consider myself very familiar with it. when i first heard about the linux kernel, it was not yet 10 years old, and i was not familiar enough with the operating system torvalds co-opted to move from dos or windows right away.
at the time, most of my computers were not up to specs that were good for running any of the easier versions of "gnu/linux", and i had to work with what i could get running from a dos-based bootloader. lets talk about bootloaders for a moment:
a bootloader is a program that loads the rest of the os. many operating systems will come with or offer to install their own bootloader. it is also possible to setup a bootloader to give you a menu of more than one os to run when your computer starts. the bootloader most gnu/linux users are familiar with today is called grub. windows and macos come with their own bootloader.
today, nearly any computer you can get your hands on is going to have higher specs than the ones i had when i started learning about gnu/linux. ive never purchased a mac or apple computer, i generally considered them to be pricey and annoying- but ive owned a mac with system 7, another with os/x tiger, and one with os/x leopard.
ive also had a macbook that runs macos monterey, and these are typically machines that came into my possession when someone was trying to get rid of them- i consider these research platforms but i dont love using or having them so much. i would not even accept a mac newer than the one with monterey, as i would not buy one unless it was used, and the newer ones prevent you from clearing the firmware that puts your location on a map.
macbooks are insidious tracking devices you dont control, while if you can at least find a mobile phone with a removeable battery, you can remove the battery and be confident enough that it isnt tracking you. phones with a removeable battery are indeed becoming more rare, but for those really determined to have one i think most likely this option will not disappear entirely.
but i will limit any research i do on apple devices to older models, and i do not physically maintain the ones that come into my possession- i dont buy them, and when they stop working, they are simply disposed of. i will not have apple hardware repaired. though i am somewhat familiar with os/x (now "macos") up to and including monterey.
macos is based on a system called bsd. it stands for "berkeley software distribution". not including macos, i have run four flavours of bsd: openbsd, netbsd, freebsd and ghostbsd (which is based on freebsd).
ive also tried haiku and reactos. the following is a comparison of these systems:
### dos
dos was originally written by tim patterson, purchased by microsoft and licensed to ibm. i was still making extensive use of it in the early 2000s, though i had been using various incarnations of windows in the 90s.
as someone who was a fan of dos for many years- i actually never hated it, but dos has some major drawbacks. hardware support is terrible; if you have usb devices, dos is not good at supporting them. many would rightfully consider that an understatement.
the free versions of dos are also not entirely free. this includes freedos, which requires a non-free compiler for parts of it, and dosemu, which requires some version of dos such as freedos. you can also run dos in qemu, but this has the same problems as running dos on a separate machine without qemu.
dosbox may be entirely free, at least by traditional standards, but it requires a host to run on. if you run dosbox from an entirely free operating system, this is the most free you can be as far as a dos-compatible setup goes, but then it is not actually dos- its an emulator on another os.
that may be suitable for your needs, but it means that if your goal is a fully-free system, dos will not suffice by itself. this fact does not please the developers of freedos, but its still a fact that they do not offer an entirely free system.
### windows
there was a time when i actually enjoyed windows. i preferred it of course, when it was running on top of dos. ive tried more recent versions of windows, including 10- but the last version of windows i kept was windows xp. i removed my last copy in 2007 and moved entirely to gnu/linux. in 2009 i learned python, and started working on using it as a replacement for basic. i had spent many years looking for a suitable replacement.
every version of windows is crappier than the previous version. apart from being non-free software, you ultimately dont control the updates to your system. i want nothing to do with software that acts that way- if it can modify itself and the developers have more say in this than the user, its not even their computer while running that software.
but even if you could control updates, even if windows was free software, everything it does is just backwards. and i grew up with dos, which does things much like windows. and i grew up with windows, though i used dos before that.
the best thing you can do with windows is remove it. failing that, you can run some free software programs on it. but its a terrible platform for doing this. its a terrible platform altogether.
### reactos
reactos is an interesting effort to make a free version of windows. its been like this forever, i actually got it to run on a physical computer once, instead of an emulator- but then they did the code audit and i never got it to boot on a physical machine again.
the biggest problem with reactos, other than its primary feature- its meant to be like windows- is that free (as in freedom) drivers for windows arent much of a thing. youre most likely going to be using non-free drivers with reactos, which makes the whole project a bit ridiculous from a freedom standpoint.
there was a time when reactos seemed like a really cool idea. both gnu/linux and bsd are more free now than ros will probably ever be.
### haiku
i suppose youre likely to get farther with haiku than dos, if it installs. ive used it before, it doesnt impress me. haiku seems primarily for people who were really interested in beos. i dont know anyone who was really interested in beos. and i really dont have any purpose for haiku.
### macos
i dont love macos at all. they took bsd and added a bunch of nonsense that i find way overrated. i used to think it was at least better than what windows has become. most of the time when im using macos, its a version that has been upgraded as far as it will ever go- then its abandoned. then its a lot of "fun" to find third party updates for software, even when its free software.
its difficult to run anything else on a mac, and its difficult to run macos on anything else.
when i do use macos, my primary interest is getting as close to gnu/linux or bsd as possible. i know it technically is bsd, but those idiotic "immutable" gnu/linux systems? macos is like that, but bsd. root is barely root and there are so many layers that macos shouldnt have. years ago, this was not as bad as today.
### android
as much as i dislike apple, i try very hard to avoid devices that have either android or ios. there was a time when android was more free than ios. that seems like a cynical way to describe android now.
mobile devices are awful. the ones that suck the least in terms of freedom tend to cost literally ten times more than i like to pay for a mobile. im perfectly content with a pre-smartphone phone. but it has to get on the mobile network somehow, and i dont tend to order phones online, so i get some trash that is closer to a smartphone every couple years.
someday i may just opt for voip instead, as much as i hate it, because they arent going to maintain the copper lines. i dislike android that much.
### freebsd
freebsd is the most mainstream version of bsd there is, for better or worse. it definitely has some features that its famous for, which make people love it- some people, at least.
personally i think freebsd is overkill, but its the first bsd i tried on my computers. i can see the appeal, but i dont really like freebsd very much. the worst thing freebsd could do is try to be the next red hat, and i wont be too surprised if they move in that sort of direction.
but, the people who make freebsd are literally legends. ill be a little surprised if freebsd only gets better, but only a little. its a weird system in my opinion, but you might love it. mixed feelings make it pretty difficult to say what i really think about freebsd.
### ghostbsd
ive had slightly more luck with ghostbsd than freebsd, and i dont know why. it feels buggy, but thats on a machine that runs openbsd just fine, while rebooting every time i try to boot the freebsd installer.
it might be the ubuntu of the bsd world, im not sure, but if theres anything you need that isnt working when you first install it, id recommend just going ahead and installing something else.
i thought id like that it had mate, though i remember mate being a lot faster, even on much older hardware than i tried ghostbsd on. like freebsd, it has pkg for managing packages (dont bother with the gui) and thats nice.
### netbsd
netbsd really should be what i use instead of ghostbsd. mostly i prefer openbsd, which forked off from netbsd ages ago, and is more free than netbsd. i dont love the installer, the openbsd one is a lot nicer to use. the people who make or support netbsd are super nice- unusually nice. i vastly prefer openbsd for so many reasons, but netbsd is good.
### openbsd
theo de raadt is an amazing person- i think hes a lot cooler than torvalds. hes made my favourite operating system. it probably wont support as much hardware as netbsd, and it definitely wont be as mainstream or feature-rich as freebsd, which i think is kind of a feature.
but its surprisingly good. ive been relying on it for years, and its what i use for most of my computing.
i could say a lot of technical things about these systems, and i realise that i didnt actually say all that much about them. i do think i hinted at some important things: i mentioned two mainstreamish flavours of bsd, i said very little about platforms so many people are already familiar with, i mentioned why dos probably isnt for you even if you like old computers, and i gave a light comparison of netbsd and openbsd.
ive only been using bsd for a few years, but i migrated a lot faster than i thought would be possible. different flavours of bsd are not quite as similar as gnu/linux distributions. i used gnu/linux pretty much exclusively for more than a decade, so i suppose it should also be mentioned:
### gnu/linux
for so many reasons, i really dont want to use gnu/linux again. i dont want the gnu project, and i dont want the linux kernel. i dont respect linus torvalds as a person- its not his attitude, its his lack of integrity. he may have a lot more of that than your average silicon valley techbro, but not all the time. i think his career includes some pretty sleazy moves.
i dont want to paint him as a complete sellout- but he is a sellout. i know hes cooler than most suits, but thats not saying very much. and its not that my admiration for richard stallman hasnt also dwindled a lot, but torvalds always got credit for a countless number of things he was never responsible for- and he didnt REALLY argue with that. he just became the poster boy for co-opting a movement so corporations could take over.
with that said, there are still much worse people than torvalds. i think the person taking over now is worse. i think red hat was ultimately worse. ibm is even worse than red hat used to be. i think mark shuttleworth is less honest and more sleazy than torvalds. i just dont think torvalds is any sort of hero at all. at best, hes the false messiah of computing.
my experience with gnu/linux involves donations of money, hardware and time. ive given away free computers to help promote gnu/linux- to people who would have never run it any other way- not from a usb, not from me installing it on their computer (some asked me to install it on their computer after i gave them a machine that had it preinstalled) and not from dual-booting.
ive run dozens of distros, ive even created a few. mostly i automated the process of turning existing distros into a custom remaster, though i did this with puppy, void, trisquel, tiny core, debian and a few others.
its difficult to avoid the gnu project entirely, as theo de raadt knows. its easier to avoid the linux kernel. i avoid both when possible.
in my opinion, gnu/linux peaked around 2013, give or take a year. devuan didnt save it- i remastered a devuan derivative (two of them) as well.
former debian people were telling me to move to bsd for half a decade before i finally did. from 2015 to 2020, i tried to salvage what i considered gnu/linux, but the purchase of github by microsoft only made it worse. hundreds of thousands of people left github as a result, including me. but most of the things we use even now, depend on software that is a hostage on github.
this is about more than just systemd- though what de raadt says about wayland is relevant to this argument too.
our computing was more free years ago, than it is today. a few projects show promise, but most do not. most have decided that being beholden to ibm and microsoft or other monopolies is an acceptable future for free software.
i strongly disagree.
but openbsd has two things in its favour, despite simply being really good software. not only is openbsd farther from all this nonsense than any other system, its also the simplest to fork.
when i say fork, i dont mean like forking a debian repo- i mean forking the entire operating system, including the kernel. i dont consider the linux kernel truly forkable. maybe someday someone will prove otherwise. either way, the openbsd kernel is more forkable.
we do need more than just openbsd- and openbsd is not a movement, its just an operating system project. it happens to have goals that overlap with software freedom, that overlap with not being beholden to the whims of megacorporations. which isnt to say its entirely immune to megacorporations. its not like openbsd makes their own hardware, or even their own firmware.
the people i think matter the most to the future of free software (and we need more of them, though people who get these things are still too rare) also seem to have some respect for openbsd- i dont mean manners, or charity or politeness, i mean the sort of respect that openbsd has earned from them.
i mention the other systems to compare, not to give comprehensive information about them. you can always try dos and haiku for yourself if you want. if i sound unenthused, i doubt most people are going to have much use for either one. and freebsd should be a really quality system, a lot of people seem to think it is, but i havent had a lot of luck with it. you might.
when the bootloader starts, you typically have options before the actual os starts loading. with openbsd for example, you have a prompt where you can type the name of various ramdisks, which is a great option to have if you screw something up.
then you will probably get a logo screen or a bunch of text scrolling while the system starts up.
then you will very likely (but not necessarily) get a login screen- most people have a graphical login screen on their setup. openbsd has one called xenodm.
you can switch to another text console and just type your login information there. but more likely youll login graphically, then your gui will start.
you can remove the graphical login as well as the graphical system itself, if you want to. i dont hate the gui, i am typing this from a gui text editor actually.
since the 90s, ive actually enjoyed having a gui to manage all the consoles i have open. on screen 1 at this moment i have two editor shells open, and three xterms. on screens 2 and 3 i have just as many of each, except one more editor shell and one fewer xterm.
in total i have 14 editor shells open, along with one web browser window- 5 open tabs. and 8 xterm windows. i dont really like tabbed term windows- cool idea, i dont prefer it.
these are not the only applications i use, but theyre the ones i use the most. and of course there are a lot of tools i use FROM these shells, which the operating system is cool enough to let to me chain together. i mean, windows can do that. macos can do that. gnu/linux can do that. and bsd can do that.
it would be worth talking about guis too, but i think enough has been said about operating systems for this chapter.
license: 0-clause bsd
```
# 2019, 2020, 2021, 2022, 2023
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
```
=> https://freesoftwareresistance.neocities.org