Live data from Hacker News

Ask HN: Can we talk about FreeBSD vs. Linux?

news.ycombinator.com

21–30 of 221 posts

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#22
BSD is often just a little bit different. Hard to be unbiased. Some people prefer GNU make, some like bsdmake.

- kqueue is a very powerful event loop similar to epoll [1]

- the FreeBSD ports collection is very simple to use as far as compiling from source goes. I only really prefer Debian's apt-get and Gentoo's emerge

- the FreeBSD Handbook is a very well-maintained text [2]. I freely admit OpenBSD has the best man pages ever written, but the Handbook is good too. Not bleeding-edge talk like the gentoo-wiki or archwiki, just reliable information.

[1] https://www.freebsd.org/cgi/man.cgi?query=kqueue&sektion=2

[2] https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#23

As a Debian user who started on Gentoo, I think the linked article was very interesting in terms of at least getting an idea of what the differences in design are. I've never used a BSD or even looked into it... given what I read there, it seems like it'd be a lot nicer in at least one sense, since Debian releases die off and release-upgrade can be either perfect or very painful. On the other hand, I do love how smal…

>On the other hand, I do love how small and unassuming a basic Linux installation is There is no "basic linux installation". Every distro is its own thing. Size seems like a really odd thing to bring up since every mainstream linux distro's "basic" installation is larger than the full OS of any of the four BSDs.

So your contention is that there is no basic installation... followed by the assertion that the basic installation, which does not exist, is larger than that of any BSD. Sorry, I'm going to have a hard time taking this seriously. And, frankly, your statement about the "full OS" is meaningless, as unless you consider the "full OS" to be only the base system, it includes every possible package, which very obviously is NOT going to be smaller than anything you could consider a basic Linux installation.

I meant small in terms of packages. The kernel, a shell, and not much else unless you specify it. Obviously you will specify something else, but the point was that I'm used to specifying exactly what else I want, so I have that habit to break/relearn.

The point you ignored or missed is that as a Linux user with no BSD exposure there's a basic difference in philosophy that creates several kinds of tradeoffs that I find compelling and interesting. I'm not "bringing up" anything in terms of absolute pros and cons, I'm highlighting what I consider noteworthy differences in terms of learning more about things I have not used.

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#24
I have few experience with Linux distros other than Ubuntu, so I'm only comparing FreeBSD with Ubuntu. Linux distros are so diverse I don't think you can just compare all of them with FreeBSD anyway.

I have both FreeBSD servers and Ubuntu servers. Thing I like the most with FreeBSD is its further separation (compared with Ubuntu) of OS (kernel and world) from third-party software. In Ubuntu every package comes in multiple versions for different releases, in FreeBSD there's only one version.

There's no "because I want git 1.8 so I have to upgrade to Ubuntu 14.04", in FreeBSD you can install the latest version of git on all supported OS versions. (In my experience even a slightly outdated OS version can run latest third-party software quite smoothly)

Software in FreeBSD Ports (its system getting third-party software) catch up with upstream releases very quickly. You might think they have less testing than that is in Ubuntu/Debian, but I don't know if it's really the case. Though I rarely encounter bugs with these cutting-edge software in FreeBSD.

I speak mainly from the experience with Ubuntu, I'm not so familiar with other Linux distros.

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#25

I have few experience with Linux distros other than Ubuntu, so I'm only comparing FreeBSD with Ubuntu. Linux distros are so diverse I don't think you can just compare all of them with FreeBSD anyway. I have both FreeBSD servers and Ubuntu servers. Thing I like the most with FreeBSD is its further separation (compared with Ubuntu) of OS (kernel and world) from third-party software. In Ubuntu every package comes in mul…

Wait what? You are stating an Ubuntu thing about versions that are non-specific to Linux and to a Distro.

Rolling release distros (Arch Linux, OpenSUSE Tumbleweed, and Gentoo. n.wikipedia.org/wiki/Rolling_release

I like BSD but I prefer Linux BOTH are good. BSD is just a different flavor of NIX.

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#26
The culture is different. The most noticeable thing is of course simply size. FreeBSD is by far the largest of the BSDs, but it is a much smaller community than Linux. That means that it is easier to get involved, easier to follow what is going on - eg look at the commit log[1] - you can follow it pretty well, vs the Linux commits where each is a large merge of a nested set of commits[2].

Sometimes small size means things can change faster, eg NetBSD has had 64 bit time_t since 2012, while 32 bit Linux still has no roadmap to fix this (the BSDs are also have a different compatibility model). Other times it of course means that less is done and things take longer. You will often hear people say the BSDs are better designed, as perhaps prioritising limited resources leads to more design, or maybe there are just fewer people who need to solve a problem fast but not so well.

Including (some) userspace means that the tools are less bloated than the GNU ones which were designed pre Linux as portable tools, before the Gnu project had a kernel - remember GNU was the cathedral in the cathedral and the bazaar.

[1] https://github.com/freebsd/freebsd/commits/master

[2] https://github.com/torvalds/linux/commits/master

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#27
Like others have said, being unbiased is difficult, but I'll try. First, Linux v FreeBSD is really tough, so I will instead approach this from Debian v FreeBSD.

I really like how easy Debian on the desktop is: install it, apt-get install xfce, and I have a nice desktop. It's very easy to add Adobe Flash, Steam, Skype, etc.

The FreeBSD desktop isn't as nice. You can add things like Flash and Skype on FreeBSD, but you have to fight harder and often use the Linux emulator. We're missing nouveau, I've had some kernel panics with the nvidia binary drivers (caused by nvidia's own shoddy code, not FreeBSD's fault), there's a lot of missing and unstable features due to developers primarily targeting Linux these days (Thunar's file refresh is glitchy and often fails to update, Thunar volman only really works with udev/Linux, mousepad crashes when you open a file an even multiple of 4KiB due to a bug in their code and a quirk of Linux mmap, livbte-based terminals tend to crash sometimes when you open them due to a bug somewhere between libvte and FreeBSD's /bin/sh, file-roller explodes when you try and extract large archives, Firefox has freezing issues with loading gigantic images unless you set MOZ_DISABLE_IMAGE_OPTIMIZE=1 in your environment, on and on.)

And it's also not really configured well out of the box for the desktop. I have to make this org.freedesktop.consolekit.pkla file and add entries to it in order to get the restart and shutdown buttons in Xfce to work. I have to create a fontconfig/fonts.conf file and substitute Helvetica with Sans in order to get Firefox to anti-alias text on web pages. And so on.

You are also doing all the setup from scratch. You install xorg, you install your video drivers, you set up xorg.conf, you create .xinitrc, you install a display manager if you want one, etc. This is both good and bad. It's great if you love tweaking your system, it's bad if you just want to throw it on a box and run it.

Moving on ... I really, really appreciate Debian's branches. If you install Wheezy, you can get security updates for packages, but not get version bumps. With FreeBSD, you have to choose between "the packages made at release time", or "the absolute bleeding edge." These updates can and do break workflows, especially on the desktop (Firefox pushed Australis on me, ibus moved to this braindead, slow-as-molasses super+space IME changer, etc.) The actual package installs are about the same for binary (apt-get vs pkg), but I much prefer FreeBSD's ports for building software (which is great when you need to patch software bugs.)

But if you're patient and good at fixing problems, you can end up with a rock-solid desktop. And hey, maybe PC-BSD will save you all of the above steps, too. I kind of look at FreeBSD vs PC-BSD as I do Debian vs Ubuntu: I'd rather know how things work than have it all done for me.

In terms of features, I really like FreeBSD's ZFS, even though it does eat a lot of RAM. Snapshots, whole-disk encryption on root, encrypted swap, mirroring/striping/RAID even across different disks, easy resilvering, etc. I also really like pf a whole lot more than iptables, as I find the syntax a whole lot more readable and flexible, although I will lament that FreeBSD's pf ships with ALTQ (QoS) off by default. I prefer the base system being maintained by the FreeBSD team. I like the consistency, the minimalism, and the great documentation.

Whenever I spot a difference between FreeBSD and Linux, I almost always favor the former's design: /dev/random behavior, jails vs cgroups, SO_NOSIGPIPE socket opt instead of needing the MSG_NOSIGNAL flag, etc.

I like that FreeBSD avoids a lot of the 'licensing wars' BS of Linux. I have Firefox instead of Iceweasel, I have cdrtools instead of cdrkit (I continue to this day to have issues with burning on Linux), I have ZFS instead of btrfs, we had sound mixing in an OSS fork instead of ALSA, and just in general I favor the BSD/MIT/ISC licenses to the GPL.

I very much like that FreeBSD is much more conservative about major changes, and open to choice, so we don't get things like systemd, Pulseaudio, etc pushed on us before they are ready for production. I used to love this about Debian as well, but they've really lost their way as of late in pushing systemd on everyone before it was ready. I greatly value stability over whiz-bang bleeding edge features. I like that FreeBSD is run by a democratically elected core team instead of by a benevolent dictator (I don't have to read what crazy thing Linus or Theo said today in the news.) I like that FreeBSD isn't balkanized into hundreds of different distros. I love not having people telling me to say "GNU/FreeBSD" whenever I mention FreeBSD. I like that third-parties like Redhat don't exert so much control over upstream.

I like the community of FreeBSD more, as it feels that most of the members are more technically oriented. Distros like Ubuntu have brought in a lot of users with little to no experience nor interest in learning the unix way of doing things. I'm not saying this is a bad thing, or that I think less of eg Ubuntu users, just that I prefer the company of sysadmins and developers over gamers and web surfers. I dislike that I can't really discuss the OS with anyone in real life, because it's too niche.

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#28
For those of us that are more interested in FreeBSD due to the whole Systemd 'controversy', look at the other HN link about the 'FreeBSD: the next 10 years' presentation. They clearly state that FreeBSD is in the same position and it seems that they are not hostile towards the concept of Systemd. Personally I hope that FreeBSD will choose a solution that does not involve QR codes (not mandatory).

Re: Ask HN: Can we talk about FreeBSD vs. Linux?

#29
What has kept me from using FreeBSD (or other bsds) in the past on my laptop was lack of nvidia optimus support. Last time I checked, there still wasn't a bumblebee port. Nevertheless, I have always wanted to try it for longer periods. Perhaps I should try to contribute if it's feasible.
Post reply on HN