My home network
In this article, I want to give you an overview over my systems at home.
My Windows history
Before going into the current devices I'm using, let me tell you that I was
a Windows user for approx. ten years before I saw the light of open source
operating systems. I started with Windows 95, but used some Windows 3.11
before we got our own PC. It belonged to my uncle and had everything a child
could wish for: games, Paintbrush and Writer (yes, playing "we are writing
our own newspaper" was a lot of fun).
My first very own PC run on Windows 98 SE, which to me was the greatest OS
ever. We never got Windows ME (lucky us), and while we had CDs with
not exactly paid for versions of Windows NT and Windows 2000, these were
not good for gaming, so I never used them. We got Windows XP when it came
out, but I stayed away for as long as I could, because I thought it was
bloatware.
I never upgraded to Windows Vista or later at home. Instead, I first used
Debian (starting with the then-stable Etch, but updating to testing after
a very short time) and then Archlinux after that.
I'm still using Windows at work, of course, but I am less than thrilled.
However, thanks to WSL, I can now supplement my already cli-heavy way of
enduring Windows with a dose of real Debian.
My daily driver
At home, most of my computing leisure time is spent with a Raspberry Pi 4
running on Raspbian. I am always perplexed when I read on Reddit and similar
sites that a Raspberry Pi 4 still cannot replace a normal desktop PC or a
refurbished old thinkpad and therefore is not worth the money. Sure, an old
desktop PC or notebook is more than likely to have more computing oomph,
but do I really need that? And even if I do (like I admit, I do - I am a
software developer after all), do I really need it all the time?
My Raspberry Pi is fast enough for internet surfing, I can stream videos
with vlc or via HTML5 video players and I can use Libreoffice, Gimp and
similar software just fine, while having a fast booting, completely silent
and powersaving device. I made the switch at the end of last year (Dec 2019)
after noticing that I often power on the PC and have it running for a huge
part of the day, even when I only used it for minor things. That was
wasteful and while the fan was not very loud, it also was noisy.
I still keep the desktop PC as a backup and fire it up whenever I need that
computing oomph (or need to use wine). It is not connected to a monitor
anymore. Instead, I use it via X2Go from the Raspberry Pi.
I try to not stress the microSD in my Raspberry Pi more than I need to. For
that, I bought a second Raspberry Pi (a RPi3 this time) which I use as a
home server. This one runs 24/7 (ignoring maintenance) and acts as file
server for the RPi4, providing access to a SSD via NFS. The RPi4 mainly
uses these NFS shares for everything, which is nice (because other systems
in my household also can access them), but also has its downsides. One
downside is that Thunar does not reliable show thumbnails from NFS shares,
with the thumbnail cache directory also stored on an NFS share. I tried to
debug it, but decided that a workaround was easier and more performant. I
will tell you more about that later. Anyway, with thumbnails completely
disabled in Thunar, NFS access is very snappy and not an issue at all.
My work horses
My desktop PC still runs with Archlinux. I am not that fond of Linux
anymore, but use it as a pragmatic compromise between a well-supported
OS on one hand side and a reliable and simple unix system on the other
hand side.
Small rant: I liked it more before Pulseaudio and SystemD came over me and
gave me functionalities that are mostly working combined with throwing me
into hell anytime they don't function and leaving me helpless. I used to
listen to music mostly with mpg123, but that stopped working with Pulseaudio
because sometimes, the first approx. 10 seconds of sound would now be
compressed to 2 seconds of static noise followed by working music. No idea
why. On Raspbian, I have working sound in Firefox, but only if the volume
slider in the browser is at 100%. Everything below is silence. Chromium
does not have that problem, but I won't switch browsers for this. Anyway ...
I also own a Thinkpad T530 which currently has a FreeBSD installation. A
nice system that gives me much more peace of mind than Linux, while still
having lots of features. As a user, I absolutely love what ZFS with its
snapshots and compression and boot environments does for me. And I still
can use Linux or Windows software using the FreeBSD linuxulator or wine.
I would love to install OpenBSD on it, but these comfort features are to
nice to miss.
FreeBSD has downsides, too. It is less secure than OpenBSD (mostly because
of bad defaults, so I've heard) and the hardware support is not as good
for desktop and laptop use cases - OpenBSD developers tend to use their
own OS as a daily driver, while FreeBSD developers tend to use Mac Books.
Or so I'm told. I don't have good sources for that claim, but I at least
remember reading opinions from FreeBSD developers stating that they should
focus more on the server side. Their slogan is "The power to serve" after
all.
ZFS is the reason why I also use FreeBSD on my wife's laptop. I can now
update it without worrying that I have to debug severe problems after the
update. If something does not work, I can just revert to the last snapshot
and handle any failures at a later time. Maybe they just get fixed in the
meantime? My wife never has a broken laptop this way.
Toy systems
Over the years, I also collected three different netbooks. One is an old
Asus EEE PC (9", I think?) that has not been used for a long time. The other
two are Samsung netbooks (an N150 and an N510 I'm currently using).
The N150 currently has an OpenBSD 6.7 installation and is well supported by
it, but does not have a real use at the moment. I keep it as a backup
system.
The N510 is my main work horse right now. It is a doomed netbook with a
NVidia ION hardware that is borderline unsupported by OpenBSD, but I still
use it with OpenBSD-current. It also has an unsupported WLAN adapter
(which, to be fair, also was a huge pita when using Linux). I use an
Edimax usb dongle instead that works with the urtwn driver. Because of the
NVidia chip, I mostly use this netbook without X11. Tmux is my window
manager :)
I like that OpenBSD is so simple and straight-forward. I like their focus
on correct and secure code, and I really like having pledge as a security
measure. I also find writing code on OpenBSD very rewarding, as memory
errors are easier to find than on "nicer" systems.
Summary
If I could, I would use OpenBSD on any system, but sometimes it lacks some
features that I need or want to have (like ZFS or wine, see above). Still,
I use it where ever I can. This blog is also hosted on an OpenBSD vm, thanks
to openbsd.amsterdam.
If I cannot use OpenBSD, I try to use FreeBSD first and Linux as a last
choice. Windows or MacOS are nothing I will touch voluntarily. I don't have
any installations of them, but I also adore Haiku OS and Plan9. Cool systems
in their niches. Finally, I also like other BSD systems like NetBSD and
DragonflyBSD, but also have no use for them at the moment.