14.4 is a maintenance release. If you're installing FreeBSD today, use 15.0
Why FreeBSD ?
- Well manicured OS, excellent docs. More performant than OpenBSD in every way and approaches Linux performance in some areas (e.g. Networking)
- FreeBSD tends to have fewer features in almost all areas compared to Linux which makes it more approachable and more difficult to mess up.
- Though it has fewer features, it still has a lot of features -- many big companies (Netflix most famously) still use it today for critical functions.
- FreeBSD Kernel and Userland developed together -- it has got that undefined "cohesive" feel
- Has less layers of abstraction than Linux, gets the job done. Because there are fewer layers it's easier to understand what is going on and potentially easier to fix.
- FreeBSD is great if you want to learn pf, zfs, ...
- Worth your while if you are bored of the Linux monoculture and just want to try something a bit different (but not tooo different)
- Changes slowly, so good for setting up on a server that you want to just leave running without too much maintenance
- Will increase your Linux skills because diversity always helps the human brain
- Very simple daemon configuration via /etc/rc.conf
- FreeBSD `bectl` controlled zfs boot environments are just so life changing and amazing.
(this is possible via snapper on Linux + btrfs but needs complex installation and is not so integrated).
- FreeBSD will accept (smallish) PRs via GitHub if you find a minor bug. Otherwise it uses the decent Phabricator interface at https://reviews.freebsd.org . This is much better IMHO than the mailing list workflow of Linux. The barriers to contribution are lesser than Linux !!
- FreeBSD still has that warm fuzzy small "community" feel which I like
> and approaches Linux performance in some areas (e.g. Networking)
I started using FreeBSD 26 years ago when I worked for Sendmail, who had a couple of core committers on staff or staff-adjacent. Back then the refrain was "it can't do nearly as much as Linux, but what it does do it's much better than Linux".
And specifically it was known that if you wanted the best possible networking stack, FreeBSD was the choice to make (And also why Netflix uses it, for the networking stack).
All this to say, is it true that Linux now has better network performance, or did you mistype that?
> Or just run -current in production, like we do.[0]
If you develop, it's probably best to do that against current [1], but if I'm running a web, mail, file, database, etc, server there is IMHO very little advantage to doing so. Most folks aren't trying to push >400Gbps.
While I also use -current, I don't think this is good advice to the kinds of people who don't know if they should be running 14.4 or 15.0. There are caveats to running -current (for example, you need to disable the built-in debugging stuff on -current to get decent performance but the debugging stuff is already disabled on actual releases), so I think for new people it's best to recommend they use the latest release (15.0) and they can discover -current when they are more familiar with FreeBSD.
>Will increase your Linux skills because diversity always helps the human brain
Is this still true, given how much runs through systemd now? I thought about trying out FreeBSD last time I got a new computer, but decided on sticking with Debian to help skill building on other Linux systems
Diversity of programming languages, operating systems, cultures, human languages, countries, music etc. always gives a fresh perspective I've found. You may go back to what you prefer at the end but it gives you learnings that are at a "higher level" :-)
> Is this still true, given how much runs through systemd now?
Yes, still true. On FreeBSD you will realize what complexity systemd might be hiding from you and what additional features it provides. BTW I don't actually like rc init on FreeBSD that much ! I feel that rc.d can learn a lot from more modern init systems like systemd, dinit etc. I don't like reading highly complex rc scripts !!
I love the BSDs; I have the most experience with FreeBSD, I regularly use macOS, and lately I’ve been learning NetBSD due to its rumpkernel.
With that said, with the decline of commercial Unix and the dominance of Linux, POSIX, in my opinion, has become less important, and in its place Linux seems to be the standard. I prefer the BSDs to Linux due to its design and documentation, but Linux has better hardware support, and the FOSS ecosystem, especially the desktop, is increasingly embracing Linuxisms such as Wayland and systemd. The FOSS BSD ecosystems are too small to counter the Linuxization of the Unix ecosystem, and I feel that Apple does not pay much attention to the BSD side of macOS these days.
I don’t expect the BSDs to die, but I do believe they’ll need to find ways to adapt to an increasingly Linux-dominated FOSS ecosystem.
NetBSD has their new npf firewall which is quite nice. Of all the options their internal architecture is the cleanest. It gets less fanfare than the others because it has less drivers, although even that is partially due to a commitment against binary blobs.
FreeBSD is more practical but for example you find the config files scattered about the file system whereas in NetBSD they’re always exactly where I expect. SDF.org has a great NetBSD system if anyone wants to try it out.
It's also worth mentioning that FreeBSD lives outside of Redhat's influence. If you find yourself lamenting the direction Linux is moving in, FreeBSD remains an attractive escape hatch. It's not perfect (rc.d is definitely not as nice as runit, it's still focusing on LVM filesystems for the future, last I tried to use OSS4 it had some issues), but I would be straight up lying to you if I implied these weren't kind of trivial in the grand scheme.
My next rebuild is likely to move from Debian to openSUSE Tumbleweed or FreeBSD. They fit better with what I want in an OS used for development purposes (needing newer versions than provided by Debian stable).
However... the lack of Docker on BSD is a deal breaker for some of my uses, jumping through hoops is possible, and moving to Podman might work but looks complicated to set up.
On the other hand, Debian 14 will remove GTK2 which breaks other things.
Yea!, as far as I understand, with p9fs now a simple zfs dataset can be shared with the VM, removing the need of ZVOLs (a ZVOL for the boot disk isn't an issue, but for example a data disk of 1tb is difficult to manage).
But excited to try it out ASAP! I haven’t made the leap to 15 on my server yet (in part because I can’t decide whether to go with pkgbase or not…), but sharing data more easily with VMs will surely be nice.
> in part because I can’t decide whether to go with pkgbase or not…
pkgbase is optional in FreeBSD 15 BTW.
One way to upgrade the base system and another to upgrade packages just feels inconsistent to me and pkgbase finally resolves that. I've not had any problems with pkgbase. I love it and would highly recommend it.
Why FreeBSD ?
- Well manicured OS, excellent docs. More performant than OpenBSD in every way and approaches Linux performance in some areas (e.g. Networking)
- FreeBSD tends to have fewer features in almost all areas compared to Linux which makes it more approachable and more difficult to mess up.
- Though it has fewer features, it still has a lot of features -- many big companies (Netflix most famously) still use it today for critical functions.
- FreeBSD Kernel and Userland developed together -- it has got that undefined "cohesive" feel
- Has less layers of abstraction than Linux, gets the job done. Because there are fewer layers it's easier to understand what is going on and potentially easier to fix.
- FreeBSD is great if you want to learn pf, zfs, ...
- Worth your while if you are bored of the Linux monoculture and just want to try something a bit different (but not tooo different)
- Changes slowly, so good for setting up on a server that you want to just leave running without too much maintenance
- Will increase your Linux skills because diversity always helps the human brain
- Very simple daemon configuration via /etc/rc.conf
- FreeBSD `bectl` controlled zfs boot environments are just so life changing and amazing. (this is possible via snapper on Linux + btrfs but needs complex installation and is not so integrated).
- FreeBSD will accept (smallish) PRs via GitHub if you find a minor bug. Otherwise it uses the decent Phabricator interface at https://reviews.freebsd.org . This is much better IMHO than the mailing list workflow of Linux. The barriers to contribution are lesser than Linux !!
- FreeBSD still has that warm fuzzy small "community" feel which I like
I started using FreeBSD 26 years ago when I worked for Sendmail, who had a couple of core committers on staff or staff-adjacent. Back then the refrain was "it can't do nearly as much as Linux, but what it does do it's much better than Linux".
And specifically it was known that if you wanted the best possible networking stack, FreeBSD was the choice to make (And also why Netflix uses it, for the networking stack).
All this to say, is it true that Linux now has better network performance, or did you mistype that?
Or just run -current in production, like we do. See https://people.freebsd.org/~gallatin/talks/OpenFest2023.pdf
Or https://papers.freebsd.org/2019/fosdem/looney-netflix_and_fr...
If you develop, it's probably best to do that against current [1], but if I'm running a web, mail, file, database, etc, server there is IMHO very little advantage to doing so. Most folks aren't trying to push >400Gbps.
[0] https://www.youtube.com/watch?v=q4TZxj-Dq7s
[1] https://www.youtube.com/watch?v=GQ0mvmZtbaY
Is this still true, given how much runs through systemd now? I thought about trying out FreeBSD last time I got a new computer, but decided on sticking with Debian to help skill building on other Linux systems
> Is this still true, given how much runs through systemd now?
Yes, still true. On FreeBSD you will realize what complexity systemd might be hiding from you and what additional features it provides. BTW I don't actually like rc init on FreeBSD that much ! I feel that rc.d can learn a lot from more modern init systems like systemd, dinit etc. I don't like reading highly complex rc scripts !!
With that said, with the decline of commercial Unix and the dominance of Linux, POSIX, in my opinion, has become less important, and in its place Linux seems to be the standard. I prefer the BSDs to Linux due to its design and documentation, but Linux has better hardware support, and the FOSS ecosystem, especially the desktop, is increasingly embracing Linuxisms such as Wayland and systemd. The FOSS BSD ecosystems are too small to counter the Linuxization of the Unix ecosystem, and I feel that Apple does not pay much attention to the BSD side of macOS these days.
I don’t expect the BSDs to die, but I do believe they’ll need to find ways to adapt to an increasingly Linux-dominated FOSS ecosystem.
OpenBSD - has a fanatical band of security obsessed users. Not going away anytime soon.
FreeBSD - It chugs along. Why is FreeBSD worth trying out ? See my reply above.
FreeBSD is more practical but for example you find the config files scattered about the file system whereas in NetBSD they’re always exactly where I expect. SDF.org has a great NetBSD system if anyone wants to try it out.
The reality of it is kinda like "Buffalo Bills will win the Superbowl this year".
Anything outside of the stuff required to make a graphical desktop work?
However... the lack of Docker on BSD is a deal breaker for some of my uses, jumping through hoops is possible, and moving to Podman might work but looks complicated to set up.
On the other hand, Debian 14 will remove GTK2 which breaks other things.
There's always a compromise.
Nice!
But excited to try it out ASAP! I haven’t made the leap to 15 on my server yet (in part because I can’t decide whether to go with pkgbase or not…), but sharing data more easily with VMs will surely be nice.
What’s the performance like?
pkgbase is optional in FreeBSD 15 BTW.
One way to upgrade the base system and another to upgrade packages just feels inconsistent to me and pkgbase finally resolves that. I've not had any problems with pkgbase. I love it and would highly recommend it.
MFCed (merged from current):
* https://cgit.freebsd.org/src/commit/?id=e97ad33a89a78f55280b...