Remix.run Logo
A Love Letter to FreeBSD(tara.sh)
204 points by rbanffy 5 hours ago | 117 comments
arthurfirst 3 hours ago | parent | next [-]

26 years of FreeBSD and counting...

IIRC in about 99 I got sick of Mandrake and RH RPM deps hell and found FreeBSD 3 CD in a Walnut creek book. Ports and BSD packages were a revelation, to say nothing of the documentation which still sets it apart from the haphazard Linux.

The comment about using a good SERVER mobo like supermicro is on point --- I managed many supermicro fbsd colo ack servers for almost 15 years and those boards worked well with it.

Currently I run FreeBSD on several home machines including old mac minis repurposed as media machines throughout the house.

They run kodi + linux brave and with that I can stream anything like live sports.

Also OpenBSD for one firewall and PFSense (FreeBSD) for another.

AdieuToLogic an hour ago | parent | next [-]

> The comment about using a good SERVER mobo like supermicro is on point --- I managed many supermicro fbsd colo ack servers for almost 15 years and those boards worked well with it.

I completely agree.

Supermicro mobo's with server-grade components combined with aggressive cooling fans/heat sinks running FreeBSD in a AAA data center resulted in two prod servers having uptimes of over 3000+ days. This included dozens of app/jails/ports updates (pretty much everything other than the kernel).

movedx 3 hours ago | parent | prev | next [-]

Lovely stuff. The industry would be so much better off if the family of BSDs had more attention and use.

I run some EVE Online services for friends. They have manual install steps for those of use not using containers. Took me half a day to get the stack going on FBSD and that was mostly me making typos and mistakes. So pleased I was able to dodge the “docker compose up” trap.

BrouteMinou 2 hours ago | parent [-]

Can you explain why "Docker compose" is a trap?

hakfoo an hour ago | parent [-]

For my two cents, it discourages standardization.

If you run bare-metal, and instructions to build a project say "you need to install libfoo-dev, libbar-dev, libbaz-dev", you're still sourcing it from your known supply chain, with its known lifecycles and processes. If there's a CVE in libbaz, you'll likely get the patch and news from the same mailing lists you got your kernel and Apache updates from.

Conversely, if you pull in a ready-made Docker container, it might be running an entire Alpine or Ubuntu distribution atop your preferred Debian or FreeBSD. Any process you had to keep those packages up to date and monitor vulnerabilities now has to be extended to cover additional distributions.

naikrovek 3 hours ago | parent | prev [-]

It really is amazing how much success Linux has achieved given its relatively haphazard nature.

FreeBSD always has been, and always will be, my favorite OS.

It is so much more coherent and considered, as the post author points out. It is cohesive; whole.

cesarb 2 hours ago | parent | next [-]

> It really is amazing how much success Linux has achieved given its relatively haphazard nature.

That haphazard nature is probably part of the reason for its success, since it allowed for many alternative ways of doing things being experimented in parallel.

quesera 3 hours ago | parent | prev [-]

Linux has turned haphazardry into a strength. This is impressive.

I prefer FreeBSD.

actionfromafar 2 hours ago | parent [-]

I like the haphazardry but I think systemd veered too far into dadaism.

arthurfirst an hour ago | parent [-]

THIS. As bad as launchctl on Macs. Solution looking for a problem so it causes more problems -- like IPv6

andrehacker 2 hours ago | parent | prev | next [-]

As much as I love FreeBSD, the release schedule is a real challenge in production: each point release is only supported for about three months. Since every release includes all ports and packages, you end up having to recertify your main application constantly.

Compare this to RedHat: yes, a paid subscription is expensive, but RedHat backports security fixes into the original code, so open source package updates don’t break your application, and critical CVEs are still addressed.

Microsoft, for all its faults, provides remarkable stability by supporting backward compatibility to a sometimes ridiculous extent.

Is FreeBSD amazing, stable, and an I/O workhorse? Absolutely: just ask Netflix. But is it a good choice for general-purpose, application-focused (as opposed to infrastructure-focused) large deployments? Hm, no ?

toast0 an hour ago | parent | next [-]

> As much as I love FreeBSD, the release schedule is a real challenge in production: each point release is only supported for about three months. Since every release includes all ports and packages, you end up having to recertify your main application constantly.

How much support do you plan on getting? The old releases don't really turn into pumpkins. Yes, every two or three major releases, they end up with a minor release that adds something to libc where binary packages from X.2 won't run on X.1 or X.0. But this isn't usually a huge deal for servers if you follow this plan:

Use FreeBSD as your stable base, but build your own binaries for your main service / language runtimes. If you build once and distribute binaries, keep your build machine / build root on the oldest minor revision you have in your fleet. When you install a new system, use an OS version that's in support and install any FreeBSD built binary packages then.

You do have to be prepared to review updates to confirm if they need you to take action (many to most won't if you are careful about what is enabled), backport fixes, build packages yourself, or upgrade in a hurry when necessary, but you don't often actually need to.

I don't think this strategy works for a desktop deployment; there's too many moving pieces. But it works well for a server. Most of my FreeBSD servers for work got installed and never needed an OS upgrade until they were replaced by better hardware. I did have an upgrade process, and I did use it sometimes: there were a couple kernel bugs that needed fixes, and sometimes new kernels would have much better performance so it was foolish to leave things as-is. And a couple bugs in the packages we installed; usually those didn't need an OS upgrade too, but sometimes it was easier to upgrade the handful of old servers rather than fight everything; choosing battles is important.

Or you can go like Netflix and just run as close to -CURRENT as you can.

andrehacker 41 minutes ago | parent [-]

>> Or you can go like Netflix and just run as close to -CURRENT as you can.

The point is that for any system that has a publicly facing (internet) part you will have to keep up to date with known vulnerabilities as published in CVEs. Not doing so makes you a prime target to security breaches.

The FreeBSD maintainers do modify FreeBSD to address the latest known vulnerabilities.... but you will have to accept the new release every 3 months.

Aditionally, those releases do not only contain FreeBSD changes but also changes to all third party open source packages that are part of the distribution. Every package is maintained by different individuals or groups and often they make changes that change the way their software works, often these are "breaking" changes, i.e. you will have to update your application code for it to be compatible with that.

chillfox an hour ago | parent | prev | next [-]

As someone who was a Linux sysadmin for several years, looking after a large fleet of RedHat boxes, I can say that the "don’t break your application" promise is BS. Their patches broke applications several times resulting in having to hold them back for months for it to be fixed.

The only Linux distro that actually lives up to that promise in my experience is Alpine.

crest 2 hours ago | parent | prev [-]

What you measured is just the overlap between minor releases of the same major release. It helps to think of them as service packs if you want a MicroSoft analogy. So each minor release is supported until it has be surplanted for 3 months by a new one on the same major release line or the whole major release line goes end of life.

andrehacker 2 hours ago | parent [-]

Sure, but the point is that each minor release contains changes in all third party open source packages/ports by taking them to the head version.

Open source packages often include breaking changes, all but guaranteeing your application to fail. With (a paid version of) RedHat Linux, RedHat modifies the open source packages to remediate CVEs by modifying the original version.

tw04 an hour ago | parent [-]

So why not use jails?

mshroyer 44 minutes ago | parent | prev | next [-]

These days I use it as a home file server because for my needs, FreeBSD the best tool for that job.

But back in the early 2000s I got access to a free Unix shell account that included Apache hosting and Perl, and if I'm not misremembering, it was running on FreeBSD and hosted by an ISP in the UK using the domain names portland.co.uk and port5.com.

That was formative for me: I learned all of Unix, Perl, and basic CGI web development on that server. I don't know who specifically was running that server, or whether they have any relation to the current owner of that domain. But if you're out there, thanks! Having access to FreeBSD was a huge help to a random high schooler in the U.S., who wouldn't have been able to afford a paid hosting account back then.

knowknow 4 hours ago | parent | prev | next [-]

It seems FreeBSD is becoming more talked about in enthusiast communities simply because Linux is a lot more mainstream now and there’s a joy in contrarianism rather than any real changes with either of the two operating systems.

IgorPartola 3 hours ago | parent | next [-]

I can’t speak for whole communities but my interest in FreeBSD has been renewed over the past couple of years. It has been a very solid OS for a long time and the tight integration between the kernel and core userland has meant that it is sometimes more performant than some popular Linux distros. But its UX has not always been amazing. Seems like lately they have really improved that. Plus ZFS and root on ZFS in particular is very nice.

I would actually be interested in running it in some production environments but it seems like that is pitted against the common deploy scenarios that involve Docker and while there is work on bringing runc to FreeBSD it is alpha stage at best currently.

Still, if you just want an ssh server, a file server, a mail server, it is a great OS with sane defaults and a predictable upgrade schedule.

arthurfirst 3 hours ago | parent [-]

Docker did work. AFAIK the APIs are there. Someone needs to grab the bull by the horns.

Jails and BHYVE vms are excellent -- but I use Docker every day and if I could use BSD as my docker host I would.

Good thing my docker servers are all built with terraform so I do not have to touch.

IgorPartola 3 hours ago | parent | next [-]

Specifically I was talking about this not being ready for prime time: https://github.com/samuelkarp/runj

crest 2 hours ago | parent | prev [-]

You can use Podman on FreeBSD, but the CNI providers need a bit more time cover all the amazing/crazy things the FreeBSD network stack can do.

groundzeros2015 3 hours ago | parent | prev | next [-]

I think it’s a joy of having a system built by a small community for fun and not debates between large corporate interests.

movedx 3 hours ago | parent | prev | next [-]

I feel like you may never have used it. Would that be true?

BrouteMinou 4 hours ago | parent | prev | next [-]

The desire to be different is strong with some people.

shevy-java 4 hours ago | parent [-]

That's fine. The thing is: I am different with Linux too. So I don't quite understand that FreeBSD focus.

From the BSDs, I think only OpenBSD has a really unique selling point with its focus on security. People ask "why pick FreeBSD rather than Linux" and most will not find compelling arguments in favour of FreeBSD there.

sellmesoap 3 hours ago | parent | next [-]

Out of the box ZFS is a big selling point for me. Jails are just lovely. The rc system is very easy to reason with. I've had systems that were only stable on freebsd that would crash using windows or various Linux.

arthurfirst 3 hours ago | parent | next [-]

ZFS is amazing and while there are many would be clones there is only one ZFS.

I used (and pushed) it everywhere I could and first encountered on Solaris before FBSD. Even had it on my Mac workstation almost 18 years ago (unsupported) -- aside I will never forgive that asshole Larry Ellison for killing OpenSolaris. NEVER.

Systemd is the worst PoS every written. RCs are effective and elegant. Systemd is reason enough to avoid Linux but I still hold my nose and use it because I have to.

BrouteMinou 2 hours ago | parent [-]

But you are aware there are distros without systemd, right?

sbseitz 2 hours ago | parent | prev [-]

Debian and Ubuntu support it out of the box. DKMS works for other distros. Same core ZFS code BSD uses. Hope this helps educate you.

movedx 3 hours ago | parent | prev [-]

I once upgraded a FreeBSD system from 8 to 12 with a single command. I don’t recall having to reboot — might have needed to.

Can you give that shot for me on Linux? Could you spin up a Ubuntu 14 VM and do a full system update to 24.04 without problems? Let me know how you go.

I once needed help with a userland utility and the handbook answered the question directly. More impressive was the conversation I had with a kernel developer, who also maintains the userland tools — not because they choose too but because the architecture dictates that the whole system is maintained as a whole.

Can you say the same for Linux? You literally cannot. Only Arch and RedHat (if you can get passed the paywall) have anything that comes close to the FreeBSD Handbook.

FreeBSD has a lot going for it. It just sits there and works forever. Linux can do the same, if you maintain it. You barely need to maintain a FreeBSD system outside of updating packages.

Most people who use containers a lot won’t find a home in FreeBSD, and that’s fine. I hope containers never come to the BSD family. Most public images are gross and massive security concerns.

But then, most people who use FreeBSD know you don’t need containers to run multiple software stacks on the same OS, regardless of needing multiple runtimes or library versions. This is a lost art because today you just go “docker compose up” and walk away because everything is taken care of for you… right? Guys? Everything is secure now, right?

AdieuToLogic an hour ago | parent | next [-]

> I once upgraded a FreeBSD system from 8 to 12 with a single command.

The command you most likely used is freebsd-update[0]. There are other ways to update FreeBSD versions, but this is a well documented and commonly used one.

> I don’t recall having to reboot — might have needed to.

Updating across major versions requires a reboot. Nothing wrong with that, just clarifying is all.

> Most people who use containers a lot won’t find a home in FreeBSD, and that’s fine. I hope containers never come to the BSD family.

Strictly speaking, Linux containers are not needed in FreeBSD as jails provide similar functionality (better IMHO, but I am very biased towards FreeBSD). My preferred way to manage jails is with ezjail[1] FWIW.

> But then, most people who use FreeBSD know you don’t need containers to run multiple software stacks on the same OS, regardless of needing multiple runtimes or library versions.

I completely agree!

0 - https://docs.freebsd.org/en/books/handbook/cutting-edge/

1 - https://erdgeist.org/arts/software/ezjail/

sellmesoap 3 hours ago | parent | prev [-]

I haven't tried, but I heard podman runs on freebsd :D

movedx 3 hours ago | parent [-]

I think that’s true yeah.

xmcp123 3 hours ago | parent | prev [-]

Linux is not fucking mainstream

If anything is mainstream, it’s BSD, because OS X is BSD.

bigyabai 3 hours ago | parent | next [-]

OS X is XNU. BSD code is in the kernel and BSD tooling is in the userland, but the kernel isn't BSD in license or architecture.

lern_too_spel an hour ago | parent | prev [-]

Linux is the most-user kernel on consumer devices (Android) and servers by a very wide margin.

keyle 4 hours ago | parent | prev | next [-]

These rose tinted glasses are pretty strong. I found nothing but pain trying to run the BSDs on recent computers/setups.

There is 'different' as in 'alternative/edgy', and then there is 'different' as in 'won't implement/yagni' which becomes highly subjective.

movedx 3 hours ago | parent | next [-]

I’ve been using it in VMs just fine. Used it on my desktop just fine for a year. Used it on laptops just fine.

You might have just hit a bad hardware setup that’s outside the scope of support. It happens.

stackghost 3 hours ago | parent [-]

>Used it on laptops just fine.

Which laptop?

Did you use the battery, touchpad, and the wifi?

I find most BSD users who say they use it on a laptop are just using a laptop-form-factor machine like a thinkpad that is plugged in, with a mouse not the touchpad, and connected via ethernet 99.9% of the time. There's nothing wrong with this, but it bears little resemblance to what I consider "using a laptop".

My experience with distros including Open- and FreeBSD on laptops has been universally negative. OpenBSD in particular is very slow compared to Linux on the same hardware, to say nothing of awful touchpad drivers and battery management.

skydhash an hour ago | parent | next [-]

On OpenBSD right now with a Dell Latitude 7490. Works fine.

The reason I like the BSD is that they are easily understood. Have you tried to troubleshoot ALSA? Or use libvirt? Linux has a lot of features, but most of them are not really useful to to general computer user. It felt like a B2B SaaS, lot of little stuff that you wonder why they are included in the design or why they're even here in the first place.

hakfoo an hour ago | parent | prev | next [-]

For some reason I had a much easier time getting OpenBSD working on one specific laptop (a Thinkpad E585 where I had replaced the stock Wifi with an Intel card). A lot of Linux distributions got into weird states where they forgot where the SSD was, and there was chicken-and-egg about Wifi firmware.

OpenBSD at least booted far enough that I could shim the Wifi firmware in as needed. I probably picked the wrong Linux distribution to work with, since I've had okay luck with Debian and then Devuan on that machine's replacement (a L13)

zie an hour ago | parent [-]

probably because OpenBSD developers use laptops, so they port the OS to laptops all the time.

FreeBSD has a few laptop developers, but most are doing server work. There is a project currently underway to help get more laptops back into support again: https://github.com/FreeBSDFoundation/proj-laptop

mikem170 an hour ago | parent | prev [-]

I'm using openbsd on a several laptops at the moment, a dell x55, a thinkpad x230, and a thinkpad x270. Everything works on all of them - sleep, hibernate, wifi, touchpad, colume and brightness buttons, cpu throttling, etc.

On one of them I use a creative bt-w2 bluetooth dongle for audio output, openbsd removed software bluetooth support due to security concerns. The latest wifi standards are not supported on these models, which doesn't bother me. It's not the size of your network, it's what you do with it! I don't mind not having the latest flashy hardware - been there, done that.

I have to pay attention when I purchase hardware, and am happy to do so, because openbsd aligns much better with my priorities. For me that includes simplicity, security, documentation and especially stability through time - I don't want to have to rearrange my working configs every two years cuz of haphazard changes to things like audio, systemd, wayland, binary blobs, etc.

cerved 4 hours ago | parent | prev [-]

Never had any issues but I've only ever tried to run it on supermicro boards

st3fan 33 minutes ago | parent | prev | next [-]

"If someone wants hype or the latest shiny thing every month, they have Linux."

This is just such a bizarre view ... what do they think Linux really is? Maybe if you are on bleeding edge Arch as a hobbyist who follows the latest shiny windows managers or something like that. But those of us who run Linux in production do that on stable releases with proven tech that hasn't changed significantly in more than a decade. Or longer for some things.

The FreeBSD folks need a reality check. They are so out of touch with what Linux really is. It is hard to take these kind of articles seriously.

rhinoceraptor 2 hours ago | parent | prev | next [-]

I personally have been itching for a NixOS-style BSD or Illumos derivative. My main machine is currently NixOS with root on ZFS, but I would love to be running something where ZFS isn't an afterthought, I could use dtrace, the kernel has first class OS virtualization, and so on. I think that the declarative approach to package management is obviously the future, but I wish there were a non-Linux option.

karlgkk 41 minutes ago | parent | prev | next [-]

> let administrators see longevity as a feature, not a gamble

I get what you’re going for. But…

Please god no. Immutable images, servers are cattle not pets.

mistyvales 4 hours ago | parent | prev | next [-]

I run freeBSD for a NAS and a couple linux vm's under bhyve. Could I have just installed Ubuntu and been done with it? Probably. I did make some mistakes like setting a very low swap partition, forgetting to switch my RAID controller to IT mode which made me have to rebuild my raidz1 pool, changing my bhyves to UEFI so the internet works better. I made sure the jail I built for plex worked fine. It's been fun. At this point I should probably rebuild the whole damn thing, but I know it will run just fine as is.

movedx 3 hours ago | parent [-]

For years and years to come. You’ll never need to update that box, frankly.

sharts 2 hours ago | parent | prev | next [-]

Other than a few niche areas like Netflix and Playstation or even MacOS as some like to often put fourth as examples of how great it is…

yeah.

arthurfirst 4 hours ago | parent | prev | next [-]

I felt the same way in 1999.

Klonoar 9 minutes ago | parent | prev | next [-]

> If someone wants hype or the latest shiny thing every month, they have Linux.

Just. Run. Debian.

RantyDave 3 hours ago | parent | prev | next [-]

"a thousand-day uptime shouldn’t be folklore"

I reboot a lot. Mostly I want to know that should the system need to reboot for whatever reason, that it will all come back up again. I run a very lightly loaded site and I highly doubt anybody notices the minute (or so) loss of service caused by rebooting.

Pretty sure I don't feel bad about this.

klempner 2 hours ago | parent | next [-]

There's a weird fetishization of long uptimes. I suspect some of this dates from the bad old days when Windows would outright crash after 50 days of uptime.

In the modern era, a lightly (or at least stably) loaded system lasting for hundreds or even thousands of days without crashing or needing a reboot should be a baseline unremarkable expectation -- but that implies that you don't need security updates, which means the system needs to not be exposed to the internet.

On the other hand, every time you do a software update you put the system in a weird spot that is potentially subtly different from where it would be on a fresh reboot, unless you restart all of userspace (at which point you might as well just reboot).

And of course FreeBSD hasn't implemented kernel live patching -- but then, that isn't a "long uptime" solution anyway, the point of live patching is to keep the system running safely until your next maintenance window.

cesarb an hour ago | parent | next [-]

> There's a weird fetishization of long uptimes. I suspect some of this dates from the bad old days when Windows would outright crash after 50 days of uptime.

My recollection is that, usually, it crashed more often than that. The 50 days thing was IIRC only the time for it to be guaranteed to crash (due to some counter overflowing).

> In the modern era, a lightly (or at least stably) loaded system lasting for hundreds or even thousands of days without crashing or needing a reboot should be a baseline unremarkable expectation -- but that implies that you don't need security updates, which means the system needs to not be exposed to the internet.

Or that the part of the system which needs the security updates not be exposed to the Internet. Other than the TCP/IP stack, most of the kernel is not directly accessible from outside the system.

> On the other hand, every time you do a software update you put the system in a weird spot that is potentially subtly different from where it would be on a fresh reboot, unless you restart all of userspace (at which point you might as well just reboot).

You don't need a software update for that. Normal use of the system is enough to make it gradually diverge from its "clean" after-boot state. For instance, if you empty /tmp on boot, any temporary file is already a subtle difference from how it would be on a fresh reboot.

Personally, I consider having to reboot due to a security fix, or even a stability fix, to be a failure. It means that, while the system didn't fail (crash or be compromised), it was vulnerable to failure (crashing or being compromised). We should aim to do better than that.

fragmede 28 minutes ago | parent | prev [-]

It's from a bygone era. An era when you'd lose hours of work if you didn't go file -> save, (or ctrl-s, if you were obsessive). If you reboot, you lose all of your work, your configuration, that you haven't saved to disk. Computers were scarce, back in those days. There was one in the house, in the den, for the family. These days, I've got a dozen of them and everything autosaves. But so that's where that comes from.

arthurfirst 3 hours ago | parent | prev [-]

Regularly (every 3 years or so) had 1000+ days of uptime with FreeBSD rack servers on Supermicro mobos.

I built the servers myself and then shipped to colo half way around the world.

I got over 1400 once and then I needed to add a new disk. They ran for almost 13 years with some disk replacements, CPU upgrades, and memory additions

kiwijamo 2 hours ago | parent [-]

Genuine questions:

Do you ever apply kernel patches? I also run FreeBSD and reboot for any kernel patches and never can get my uptimes to 1,000 days before that.

Do you just run versions that don't get security patches? Security support EOL dates generally means I need to upgrade before 1,000 days too. For example the current stable release gets security patches only from June 10, 2025 to June 30, 2026 giving just over 360 days of active support.

I get FreeBSD is stable and get days of uptime, and I could easily do the same if I didn't bother upgrading etc, it's just that I can't see how that's done without putting your machine at risk. Perhaps only for airgapped machines?

toast0 an hour ago | parent [-]

> Do you ever apply kernel patches?

For my personal machines, I just run GENERIC kernels and that includes a lot, so I need to do a lot of updates. I also reboot every time I update the OS (even when it's an update that doesn't touch the kernel) so that I'm sure reboots will be fine... but I did setup my firewalls with carp and pfsync so I can reboot my firewall machines one at a time with minimal disruption.

For work machines, I use a crafted kernel config that only includes stuff we use, although so far I've usually had one config for all boxes, because it's simpler. If there's a security update for part of the kernel that we don't use, we don't need to update. Security update in a driver we don't have, no update; security update in tcp, probably update. Some security updates include mitigation steps to consider instead of or until updating... Sometimes those are reasonable too. Sometimes you do need to upgrade the whole fleet.

When there's an update that's useful but also has an effective mitigation, I would mitigate on all machines, run the update and reboot test on one or a few machines, and then typically install on the rest of the machines and if they reboot at some point, great, they don't need the mitigation anymore. If they are retired with 1000 days of uptime and a pending kernel update, that's fine too.

I would not update a machine just because support for the minor release it was on timed out. Only if there was an actual need. Including a security issue found in a later release that probably affects the older one or at least can't be ruled out. Yes, there's a risk of unpublished security issues in unsupported releases; but a supported release also has a risk of unpublished security issues too.

bitwize an hour ago | parent | prev | next [-]

More of a Net/Open guy myself, but the Qotom network appliance I mentioned a few posts back runs FreeBSD. I use it as a wifi bridge to provide backhaul for my office's wired LAN over the house wifi. There are gadgets you can buy for this, but I like my solution running stock FreeBSD + some configuration.

bobanrocky 3 hours ago | parent | prev | next [-]

Love the Sun E10k reference !!

- ex Sun

rhinoceraptor 2 hours ago | parent [-]

The E10k reminds me of Bryan Cantrill's story about the motivation for dtrace. Sun engineers were working day and night, trying to debug what seemed to be a Solaris kernel networking bug, on a benchmarking cluster of E10k machines. I won't spoil the end, but it's great:

https://www.youtube.com/watch?v=wTVfAMRj-7E&t=2640s

tuhgdetzhh 5 hours ago | parent | prev | next [-]

A love letter to the last operating system that isn’t trying to gaslight you. FreeBSD really is the anti-hype choice: no mascot-as-a-service, no quarterly identity crisis, just a system that quietly works until the heat death of the universe.

CalChris 5 hours ago | parent | next [-]

Speaking of better vendor support, why doesn’t it support Apple Silicon yet? Obviously, Asahi has led the way on this and their m1n1 boot loader can be used out of the box. But OpenBSD has supported Apple Silicon for three years now.

movedx 3 hours ago | parent [-]

Why does it have to? Why does everything have to supper everything? Why can’t a project have a focus on servers and that’s its “thing”?

Also it’s OSS — contribute that support if you’re so passionate about it.

bigyabai 3 hours ago | parent [-]

The original, unedited version of the grandparent was bemoaning the lack of vendor support behind FreeBSD so the parent's comment made a lot more sense in-context.

movedx 3 hours ago | parent | prev [-]

Sigh. Yes. It’s the boring choice and therefore the better choice a lot of the time. Not all of the time, but most of the time.

Impatience and lost skills is why it’s not a mainstream player.

kosolam 5 hours ago | parent | prev | next [-]

As a small user I find it hard to find a use case where I’d want a bsd for some reason. I even installed ghostbsd in a vm to try it but it seemed very similar to linux so I didn’t understand what’s the upside?

ggm 3 hours ago | parent | next [-]

A small thing, but the mechanistic approach to bundling packages into bigger meta state, is (in my personal opinion) better than the somewhat ad-hoc approach to both writing and including things in an apt/dpkg.

If the product is python, thats what it is. there is no python-additonal-headers or python-dev or bundle-which-happens-to-be-python-but-how-would-you-know.

There is python, and there are meta-ports which explicitly 'call' the python port.

The most notable example being X11. Its sub-parts are all very rational. fonts are fonts. libs are libs. drm is drm. drivers are drivers.

(yes, there is the port/pkg confusion. thats a bit annoying.)

cerved 4 hours ago | parent | prev | next [-]

ZFS and jails are two things FreeBSD does very well

sbseitz 2 hours ago | parent | next [-]

ZFS on Linux and BSD share the same code now. Hope this helps.

mshroyer 2 hours ago | parent [-]

Sure, but ZFS is much better integrated into FreeBSD. It supports ZFS on root with boot environments out of the box.

And when running a Samba server, it's helpful that FreeBSD supports NFSv4 ACLs when sitting between ZFS and SMB clients; on Linux, Samba has to hack around the lack of NFSv4 ACL support by stashing them in xattrs.

You can arguably get even better ZFS and SMB integration with an Illumos distribution, but for me FreeBSD hits the sweet spot between being nice to use and having the programs I need in its package library.

waynesonfire 2 hours ago | parent | prev [-]

and pf.

assimpleaspossi 3 hours ago | parent | prev | next [-]

You don't have to reinstall with every software upgrade. Reliability and long term uptime are the norm.

loeg 3 hours ago | parent [-]

These statements could equally describe Linux, macOS, or even Windows.

loeg 3 hours ago | parent | prev [-]

1990s nostalgia.

adastra22 5 hours ago | parent | prev | next [-]

I so wish that FreeBSD was GPL. I know this won't be a popular opinion, but I believe that success Linux has had is because of copyleft, and *BSD are riding on the coat tails of that.

But I don't like Linux. I use it daily, but I don't like it. I wish FreeBSD held the position Linux does in the market today. That would be heaven.

cesarb 4 hours ago | parent | next [-]

> but I believe that success Linux has had is because of copyleft

No, the success Linux has had is because it ran on the machines people had at home, and was very easy to try out.

An instructive example would be my own path into Linux: I started with DJGPP, but got annoyed because it couldn't multi-task (if you started a compilation within an IDE like Emacs, you had to wait until it finished before you could interact with the IDE again). So I wanted a real Unix, or something close enough to it.

The best option I found was Slackware. Back then, it could install directly into the MS-DOS partition (within the C:\LINUX directory, through the magic of the UMSDOS filesystem), and boot directly from MS-DOS (through the LOADLIN bootloader). That is: like DJGPP, it could be treated like a normal MS-DOS program (with the only caveat being that you had to reboot to get back to MS-DOS). No need to dedicate a partition to it. No need to take over the MBR or bootloader. It even worked when the disk used Ontrack Disk Manager (for those too young to have heard of it, older BIOS didn't understand large disks, so newer HDDs came bundled with software like that to workaround the BIOS limitations; Linux transparently understood the special partition scheme used by Ontrack).

It worked with all the hardware I had, and worked better than MS-DOS; after a while, I noticed I was spending all my time booted into Linux, and only then I dedicated a whole partition to it (and later, the whole disk). Of course, since by then I had already gotten used to Linux, I stayed in the Linux world.

What I've read later (somewhere in a couple of HN comments) was that, beyond not having all these cool tricks (UMSDOS, LOADLIN, support for Ontrack partitions), FreeBSD was also picky with its hardware choices. I'm not sure that the hardware I had would have been fully supported, and even if it were, I'd have to dedicate a whole disk (or, at least, a whole partition) to it, and it would also take over the boot process (in a way which probably would be incompatible with Ontrack).

sellmesoap 3 hours ago | parent [-]

I'd say with modern hardware, like the xe Intel iGPUs on 11th gen Intel and up got driver attention quickly. Some things like realtek 2.5gb NICs took a little while to integrate but I think realtek offered kernel modules. I remember NIC compatibility was sparse when I started playing with it around 1999-2000. What trips me up is command flags on gnu vs freebsd utils, ask me about the time I DOSed the Colo from the jump machine using the wrong packet argument interval.

toast0 4 hours ago | parent | prev | next [-]

What would FreeBSD as GPL give you? You could fork it and release FreeGPL with that license tomorrow. (Minus ZFS, but that's in contrib)

Some users of FreeBSD prefer more freedoms than GPL offers. The contributors must not be put off by providing more freedoms.

Places I've worked have contributed changes to FreeBSD and Linux, mostly for the same reason ... regardless of any necessity from distributing code under license, it's nicer to keep your fork close to upstream and sending your changes upstream helps keep things close.

unexpectedtrap an hour ago | parent [-]

IANAL, but you can’t actually just relicense code, even if it’s under BSD‐like license. What you can do is to release this code in the binary form without providing the source code.

assimpleaspossi 4 hours ago | parent | prev | next [-]

>>I believe that success Linux has had is because of copyleft, and *BSD are riding on the coat tails of that.

Apparently many here are unaware of the history and story as to what stalled FreeBSD in a long lawsuit involving ATT. You need to read up on that. Copyleft had nothing to do with it.

zie 35 minutes ago | parent | prev | next [-]

I don't understand this thinking. The GPL is more restrictive than the FreeBSD license. You have more freedoms with the FreeBSD license than you do with the GPL(of any version).

> I wish FreeBSD held the position Linux does in the market today. That would be heaven.

Well The BSD's were embattled with a lawsuit from AT&T at the time Linux came around, so it got a late start as it were, even if it's a lot older.

unexpectedtrap an hour ago | parent | prev | next [-]

I feel the same, because it seems that the only desktop-ready OS under GPL today is GNU/Linux, and it feels too bloated nowadays (not to mention that Linux is effectively stuck under GPLv2). Something like FreeBSD feels much lighter and better still being desktop‐ready. Looks like that guys from Hyperbola think the same and that’s why they are doing HyperbolaBSD. Btw there’s some progress in GNU Hurd, but they are still far from being desktop-ready.

pyvpx 4 hours ago | parent | prev | next [-]

It’s a nice belief for some but wholly divorced from historical facts and circumstances

CalChris 5 hours ago | parent | prev | next [-]

GCC vs LLVM. It isn’t the license.

bigfishrunning 5 hours ago | parent | next [-]

I don't know about that... Llvm didn't exist until 2003. The BSDs and Linux both existed for a long time before that, and Linux already had much more momentum at that point.

coaksford 2 hours ago | parent [-]

BSD was mired in the uncertainty of a lawsuit over some of their code at the time that Linux was getting started, and the FUD around that gave Linux a head start that BSD had up until that point, so you can't infer much about the reasons Linux's early success over BSD through that fog. If Linux had been dealing with the same problem that BSD had instead, BSD almost certainly would be in Linux's place right now.

jm4 6 minutes ago | parent [-]

Linux was dealing with SCO just a few years later. There was also a period where Microsoft was out to destroy Linux.

blueflow 5 hours ago | parent | prev [-]

I think that's less because of the license and more because people found patching gcc to be a big pain.

tom_alexander 3 hours ago | parent | next [-]

To be fair, GCC's design was motivated by the same thing as the license. They intentionally didn't modularize GCC so that it couldn't be used by non-free code.

> Anything that makes it easier to use GCC back ends without GCC front ends--or simply brings GCC a big step closer to a form that would make such usage easy--would endanger our leverage for causing new front ends to be free.

https://gcc.gnu.org/legacy-ml/gcc/2000-01/msg00572.html

CalChris 5 hours ago | parent | prev [-]

Correct, it’s not the license.

cerved 4 hours ago | parent | prev | next [-]

It'll never happen. You can't distribute ZFS under GPL

sbseitz 2 hours ago | parent | next [-]

Comes in binary form from Debian and Ubuntu. I can add it to any other distribution via DKMS. Same core ZFS code as BSD uses.

pabs3 an hour ago | parent | next [-]

Debian only distributes it in DKMS form, not binary form.

matthewmc3 2 hours ago | parent | prev [-]

Honest question - if it comes in binary form, how can you know it's the same core ZFS code BSD uses?

E39M5S62 2 hours ago | parent [-]

Same as anything else installed as a binary package - you trust the people packaging/providing the binary. If you don't, build it yourself. The source is publicly available.

pabs3 an hour ago | parent [-]

Or you build it yourself and verify you got the same checksum.

https://reproducible-builds.org/

dardeaup 4 hours ago | parent | prev [-]

Agreed. I'd say it goes much deeper than that in the case of FreeBSD though. It's just an ideological thing that can't be changed.

movedx 3 hours ago | parent | prev | next [-]

Linux is OK. It’s a mess compared to BSD, but it’s OK. It’s the lazy man’s solution. It’s mainly for people who only want to “docker compose up” and walk away. The art of the OS has been lost. People think the OS is something to be abstracted away as much as possible and it’s evil and hard to secure. Shame.

stackghost 3 hours ago | parent [-]

I'd offer in counterargument that Linux is for getting things done, whereas BSD seems to be largely for people who view the OS itself as the hobby.

I have zero interest in tinkering with my operating system. I mostly want it to just get out of my way, which Linux does well 95% of the time.

quesera 3 hours ago | parent [-]

That used to be the argument for Windows over Linux.

FreeBSD has always required far less tweaking or maintenance than Linux, though.

a-dub 5 hours ago | parent | prev | next [-]

freebsd didn't have the hardware support base that linux did and suffered a huge delay in rearchitecture when x86 smp hardware became widely available. (only one cpu could be in the kernel at a time, the "bkl", was a major impediment in the early 00s). freebsd had better resource scheduling at the time and a beloved networking stack, but linux caught up with cgroups etc. i think linux was also just a trendy vanguard of sorts as the world learned of open source software by and of the internet.

hnthrowaway0328 5 hours ago | parent | prev [-]

Can you please elaborate the str of Freebsd vs Linux?

alex1138 5 hours ago | parent | prev | next [-]

I know this is the noob perspective but they should try (yes, I'm already aware of GhostBSD) to make getting into the desktop a little bit easier, it can be very hard to bootstrap anything and learn if you're new to it

assimpleaspossi 3 hours ago | parent | next [-]

After you install the base system, install your favorite desktop by doing "pkg install <your_favorite_desktop>" and it's done.

What's so difficult?

alex1138 3 hours ago | parent [-]

"Before FreeBSD can render a graphical environment, it needs a kernel module to drive the graphics processor. Graphics drivers are a fast-moving, cross-platform target, which is why this is developed and distributed separately from the FreeBSD base system."

"To enable the driver, add the module to /etc/rc.conf file, by executing the following command: ..."

https://docs.freebsd.org/en/books/handbook/x11/

I get that this isn't brain surgery. But come on

assimpleaspossi 3 hours ago | parent [-]

And, again, "pkg install <your_favorite_desktop>" done. Quit pulling blurbs out of thin air when you don't know how it works.

quesera 3 hours ago | parent | next [-]

The truth is that FreeBSD doesn't want casual users, though.

The Linux (Ubuntu, etc) install experience leads to a usable desktop. Heck, the installer disc boots to a usable desktop.

Also no unsophisticated users even know the name of their favorite DE. Or what a DE is.

Requiring a text login and a shell command, even one as simple as "pkg install KDE" is a big ask for a casual user these days. Also, that command line will probably fail. :)

I write these things as a very big fan of FreeBSD! I think not catering to casual users keeps FreeBSD in a better technical place overall, but Linux is obviously much more popular. This carries risks too.

alex1138 an hour ago | parent [-]

Casual users become experienced users become contributors

I'm not saying Make Everything Easy. If there's real reasons not to have easy x11 onboarding, if FreeBSD really is intended to be an OS for experts (and I get that it may well be, for a variety of historical reasons), then fine

alex1138 3 hours ago | parent | prev [-]

Linking directly to documentation is thin air?

shevy-java 4 hours ago | parent | prev [-]

That's where Linux fails too IMO. Both GNOME and KDE really suck in my opinion. Or perhaps suck is too strong a word. I find both to be hugely problematic.

That does not mean they do not work, mind you - GNOME succeeds in dumbing things down that even 60 years old grandmas could use it (until they misclick and then are presented with 20 windows all put side to side). And KDE gives a lot of flexibility in tweaking it how you may want it (if we ignore Nate's donation widget). But it just is still waaaaaaay too complicated and convoluted to use. I am better off just describing my system in .yml files and then have ruby autogenerate any configuration value than struggle through annoying widgets to find some semi-random semi-new setting (or none such setting existing such as is the case in GNOME). I'd wish we could liberate these DEs from upstream developers and their dictatorship. I mean, we, can, e. g. patch out the code that shouldn't exist (like Nate's Robin Hood widget), but I mean on a global basis as-is. We as users should be in full control of EVERYTHING - every widget. Everything these widgets do, too. And everything they don't do right now but should do. Like in evince, I hate that I can't have tabs. That annoys me. I am aware that libpapers changes this, but boy ... just try to discuss this with GNOMEy devs. That's just a waste of time. I want to decide on everything here - upstream must not be able to cripple my system or influence it in no way I approve of.

jwrallie 2 hours ago | parent [-]

Hmm... I am sure your yaml config files would also not please your grandma. Anyway if you don't like change, there are other DEs apart from those two are more fitting. Try XFCE or Mate, they will look and behave the same years after setting them up.

shevy-java 4 hours ago | parent | prev [-]

> Culture matters too. One reason I stepped away from Linux was the noise, the debates that drowned out the joy of building.

No clue what he is babbling about. LFS/BLFS is active. FreeBSD doesn't have that. I am sorry but Linux is the better tinker-toy. I understand this upsets the BSD folks, but it is simply how it is. Granted, systemd and the corporatification took a huge toll into the Linux ecosystem but even now as it is in some ruins (KDE devs recently decreed that xorg will die and they will aid in the process of killing off xorg, by forcing everyone into wayland), it is still much more active as a tinker-toy. That's simply how it is.

I recall many years ago NetBSD on the mailing list pointed out that Linux now runs on more toasters than NetBSD. This is simply the power of tinkerification.

> Please keep FreeBSD the kind of place where thoughtful engineering is welcome without ego battles

K - for the three or four users worldwide.

> There’s also the practical side: keep the doors open with hardware vendors like Dell and HPE, so FreeBSD remains a first-class citizen.

Except that Linux supports more hardware. I am sorry FreeBSD people - there is reality. We can't offset and ignore it.

> My hope is simple: that you stay different. Not in the way that shouts for attention, but in the way that earns trust.

TempleOS also exists.

I think it is much more different than any of the BSDs.

> If someone wants hype or the latest shiny thing every month, they have Linux.

Right - and you don't have to go that route either. Imagine there is choice on Linux. I can run Linux without systemd - there is no problem with that. I don't need GNOME or KDE asking-for-donation begging devs killing xorg either. (Admittedly GTK and QT seem to be the only really surviving oldschool desktop GUIs and GTK is really unusuable nowadays.)

> the way the best of Unix always did, they should know they can find it here.

Yeah ok ... 500 out of 500 supercomputers running Linux ...

> And maybe, one day, someone will walk past a rack of servers, hear the steady, unhurried rhythm of a FreeBSD system still running

I used FreeBSD for a while until a certain event made me go back to Linux - my computer was shut off when I returned home. When I left, it was still turned on. It ran FreeBSD. This is of course episodical, but I never had that problem with Linux.

I think FreeBSD folks need to realise that Linux did some things better.

movedx 3 hours ago | parent [-]

> Yeah ok ... 500 out of 500 supercomputers running Linux ...

So what? Big whoop.