Is OpenBSD for you?
All opinions are those of the author. (Marian Mizik)https://mizik.eu/blog/is-openbsd-for-you/index.html
License: CC BY-NC-SA 4.0
Is OpenBSD for you?
This blog post is a step by step wizard for those who think about using OpenBSD as a primary OS and daily driver, but don't know if it meets the requirements. I am trying to focus on desktop/laptop use in this case.
First thing most people would probably ask is, if they will be able to run their current personal setup after migrating to OpenBSD, or at least, if there is a working alternative for those apps/functionalities which are not available. So here is the software and hardware list of things you need to consider.
Hardware compatibility
Smaller dev team means smaller hardware support list. Be sure you check the hardware you would like to use against official documentation
Bluetooth. There was some basic support in the past ported from NetBSD, but removed because of security and code maintenance costs
Wifi. Only 802.11g support on all chipsets except those covered by drivers bwfm(4), iwm(4) and iwx (4) which have support up to 802.11ac
USB dongles. Tragic read/write performance. Problems with mounting dongles formatted outside OpenBSD. But works
Bleeding edge laptops/desktops are most of the time unstable or not supported. In such cases, use the current version and choose the components based on what is already supported
Battery life is worse compared to Windows or Linux, but usable
Sleep/Hibernate works in most cases. My experience is, that it works even better than Linux most of the time
Fingerprint sensors. Some work, some doesn't. If they do, there is also possibility to login with fingerprint using login_fingerprint
Thunderbolt mostly works, but plugged-in device is available only after computer reboot. There is no hotplug support because OpenBSD has no NHI driver
Software Compatibility
Smaller dev team means smaller software list. You can check for your favourite applications online at openports.pl
Proprietary software. The vast majority don't support OpenBSD, even if the particular software supports Linux
FAANG/MAMAA technologies. No support. They, probably by default, don't care about BSD world. So there is no support for development with Android, Node, Flutter, Electron, etc...
Running Windows applications. There is no wine or anything like that
Running Linux application. There was a Linux compatibility layer in the past, but it was removed because of standard OBSD reasons: security and code maintenance costs
Other OS filesystems. There is only read support for EXT2/3/4. There is RW support for FAT32 and also NTFS through ntfs-3g
Virtualization. No support for VmWare or Virtualbox. There is Qemu support, but only slow software emulation, because there is no such thing as KVM in OpenBSD. There is also native VMM which has support for BSD and Linux VMs, but not for Windows. There is also no support for graphics yet.
Containers. No native Kubernetes and Docker support. It can be used in a virtual machine using VMM though
No stable KDE. But there is an active development
Not usable GNOME. There is full support for Gnome, but the performance is tragic. There are some major improvements coming to version 7.3, so it may be an option soon
VPN. There is full support for all 3 major implementations: OpenVPN, WireGuard, IPsec/IKEv2
Full disk encryption is available, but has to be done manually during the installation. It will be part of installation wizard from 7.3 up
Dualboot is possible, but not with GRUB, because it is both boot manager and loader. OpenBSD loading mechanism is not compatible with GRUB. Therefore, you need to use software which is only boot manager and not a boot loader too. For example rEFInd will work. Windows will be OK with it. In the case of Linux, you have to be sure that GRUB won't re-enable itself during the distribution upgrade procedure. There is also another Linux option. You can recompile your kernel with EFI stub enabled. Then your kernel will also act as a boot loader. This is convenient especially when you are using modular distributions like Gentoo, where compiling a kernel is well supported and grub won't even be installed.
Performance
Performance is much worse than other operating systems. It's a toll for simplicity and additional security
Ease of use
Installer provides options to install with X support automatically. OpenBSD is using hardened version of Xorg and xenodm(1) as a display manager / login screen.
Default VM is vfwm, so you better replace it with something else. But it should still be lightweight. Tiling managers like dwm or i3, or standard managers like cwm or fluxbox.
Multimedia codec support is on par with Linux using ffmpeg
Display management is using xrandr, so the same as Linux
Audio management is present, but needs to be configured and controlled via terminal using sndioctl
Webcam management is present, but disabled by default. Needs to be enabled via sysctl then configured and controlled via terminal using video and ffmpeg
Power management is present, but needs to be configured and controlled via terminal using apmd and obsdfreqd
Network management is present, but needs to be configured and controlled via terminal using ifconfig
Graphics acceleration (direct rendering) is supported
Types of use
Definitely OK for standard use by a typical person. Web browsing (Firefox, Chromium), emails (browser, Thunderbird), playing music (QuodLibet), watching videos (VLC), using office tools (Libreoffice) or watching YouTube. It may be harder if one wants to use music/video/game streaming portals and there is also no native support for mainstream IM clients. Web versions tend to work though.
Good for programmers by default, but support for modern programming languages is not great. Support for modern frameworks and web development is minimal. One needs to check the availability of one's tech stack.
Great for system admins and system developers (C, C++, Perl, Python, Shell). Most of the devs are these kind of people and that's why OpenBSD also works best in this scenario. They do this OS for them and people like them, not for mainstream users.
Great for people targeting security and simplicity more than performance, variety of options and modern ways of consuming media
Average OpenBSD user
The average user of this operating system:
Qorks in IT or academic sphere
Uses UNIX like operating systems for years
Feels best in terminal
Prefers keyboard-driven control over mouse
Is minimalistic with their setup (tiling WM, TUI apps)
Does not use bleeding edge hardware, because he can still comfortably run their setup on the old one
Owns a ThinkPad. The oldest that can still run their setup in the required quality
Reads manuals
Has their own set of scripts to optimize and control their setup
Avergage OpenBSD computer
What is then the mainstream OpenBSD hardware setup you may ask? How should I use it to have the least number of issues and go with the flow?
2-10 years old hardware with Intel CPU
Integrated graphics
Wifi card using bwfm(4), iwm(4) or iwx (4) drivers
In the case of laptops, any that fulfills the above will do. But if you want to be sure, ThinkPad is the brand/model to go. AFAIK, many of the devs use them too
Use SSD disk. OpenBSD IO speed is bad, so you need to have decent random access performance
Be minimalist when it comes to your peripherals and custom hardware components
© 2023 Marian Mizik | License: CC BY-NC-SA 4.0
Thomas Hurt
(13,925 posts)might be. Technological innovation interests me and yet I don't know what this is or why I should care?
I have never been into trying alternate OS's. Is that what this?
usonian
(14,052 posts)These variants include OpenBSD, FreeBSD and Linux to name just three popular ones.
The applications, including command shells are very similar, sometimes identical across versions.
The kernels are different. You would see this in the management of them (startup scripts, package management and system administration)
Linux does itself have two main branches: Debian variants (notably Debian itself and Ubuntu) and RedHat variants.
To your point, these are mostly user-installed on intel (PC) hardware, though there are some laptops and desktops that come with Linux installed (System76 and Dell come to mind)
I recall that any BSD operating system is user-installed. So, they are not for beginners.
Historical note: BSD refers to Berkeley Software Distribution, which took its inspiration from AT&T's Unix. It was close enough that AT&T fought it lin court long enough that Linus Torvalds got tiired of waiting and wrote his own Unix version (Linux) from scratch. BSD eventually got out of that quagmire.
OpenBSD is a version of BSD that's audited line by line before a version is released, with total emphasis on security. Out of the gate (until people change anything) it's the most secure operating system commonly available.
If there are community college courses on "Unix", they are likely to be using Linux.
But you can look at open courseware (I am thinking M.I.T. Open Courseware) and see if something gets your interest.
If the RaspberryPi computer interests you, it mainly runs Raspbian, a version of Debian Linux.
Happy Computing!
DBoon
(23,082 posts)built for security, not usability
You need to add apps to the base build to get something truly useful.
I think it excels as a network security appliance. Use it for a firewall or gateway.
ItsjustMe
(11,723 posts)usonian
(14,052 posts)If you actually count the number of "unix" systems in your home, you might be surprised.
Pretty much anything automated has one. Don't know of any embedded OS that isn't somehow unix based.
Probably in those "microchips" that people are afraid of.