💾 Archived View for altesq.net › ~evenfire › posts › 2022-06-15.gmi captured on 2023-09-08 at 16:15:28. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-01-29)
-=-=-=-=-=-=-
I've used GNU/Linux for a while and know my way around it and like system administration, so, to propose a challenge to myself, I'm trying OpenBSD. This is the first ever BSD I use. The closest BSD-like system I've used is probably Void GNU/Linux, as it resembles the BSDs with the package management inspired by ports.
I've went ahead and got OpenBSD 7.1 and flashed it to my USB drive. I've went through the installation setup, I like the question-based installer, especially the fact that you can drop to a shell anytime and resume it. After rebooting, I took care of installing doas(1), and I went with an X session to see if I can get it all working. Compiling my suckless utilities has been fine, no problems whatsoever, the required development packages have been included in the X set and everything compiled
fast with no issues. X ran out of the box, I just copied my xinitrc over and that was it.
Next thing I had to do is to try out ksh(1). As I've mentioned in my last post, I've just switched to mksh, but now I'm using ksh(1), so I had to move all my aliases to it. Many of my aliases broke because of the differences between the GNU coreutils and OpenBSD's user-land utilities, but because of the renowned OpenBSD man pages, it has been a breeze to get adapted to them.
In a TTY, the system uses ~30Mb of RAM, which is purely amazing, no GNU/Linux distribution went this low for me, closest being Void with ~80Mb. Speaking of the TTY, the 'Spleen' font on the TTY is incredibly well designed, it's the best font I've ever seen in a terminal and it's purely worth using.
Doas(1) works really well compared to the GNU/Linux port, I can safely use the persistence feature without worrying about any security aspects, unlike on GNU/Linux where it couldn't interact with the kernel in this way. Htop(1)'s RAM usage display is completely broken, it shows I use ~1Gb of memory when in reality I use maximum ~200Mb, probably due to the hardening OpenBSD has, although top(1) works fine.
I like the fact that you get automated mails to the root user, informing you if anything goes wrong. The mail server that's setup by default, although read-only, works really well for usage with various programs that report to you. You also get a nice mail from Theo de Raadt welcoming you to OpenBSD and showing you around, which is really nice! I can only observe that OpenBSD is very mail-centric, you can submit a feedback report to the developers with your hardware specifications via mail, although you have to set it up to be public facing first.
One of the things I miss from GNU/Linux is "fdisk -l", although I found that in its place I can use "sysctl hw.disknames". Mounting disks is a bit weird coming from GNU/Linux, as the partition of an EXT2 flash drive, for example, is at "/dev/sd1i", which is unusual, although yes, I've seen in the man pages that "a" is for root and "b" is for swap, still odd. Will keep researching the underlying features of OpenBSD in the days to come nonetheless.
I like the BSD init system, it's much simpler than SystemD or anything GNU/Linux has, probably the closest contender is runit. Things just make more sense and are better documented. I definitely appreciate the amount of time going into the documentation and the attitude of the OpenBSD team, a bug in the documentation is as worse as a bug in the code. I'm getting used to comprehensive manuals, which is odd coming from GNU/Linux, as you usually needed to search an issue quite often. On OpenBSD? No such thing. Everything is in the manuals, from bugs, to examples, to tutorials. It's definitely great as it's good for trying to stay more offline and decentralizing information.
I've begun to read the book "Absolute OpenBSD" by Michael Lucas, recommended from the OpenBSD team. It's very comprehensive and it'll give me a more in-depth view of the operating system. I'll finish it in the days to come, and also I must get into the habit of searching manual pages first, not opening the browser.