Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Compared to Linux distributions for me the most interesting difference of FreeBSD isn't the license or somewhat exclusive features like dtrace/ZFS. It is the release model which separates the "stable/LTS" base and the rolling 3rd party software.

In (for example) Debian stable I have a very reliable system but any annoying bugs in end user software will remain for the next several years. But going to a rolling release distro could result in unexpected troubleshooting sessions while I actually had to be productive instead.

So there are drawbacks of going to a full rolling or a full stable distro and imho the FreeBSD model is the best balance between both extremes. Why isn't there a Linux distro like this?



openSUSE is IMO relatively close to that, due to their superior packaging system (it's best one I know).

So if you use normal release (not tumbleweed) you are fixed to the package versions when suse was released, but you can go to OBS[1] where you can obtain latest version of software. Their 3sat dependency solver makes sure that dependencies are resolved correctly. Another interesting thing is that they group package upgrades into patches, with description and other details. You can for example issue zypper patch --have <cve> and instead everything that resolved specific vulnerability. I also love zypper ps showing which processes need to be restarted after the upgrade.

[1] http://software.opensuse.org which is like github for packages (it supports other distros as well) most packages are there in latest versions.


The wonderful thing about OBS is you can branch a package, make modifications to your personal version, and add that new repo as a source for zypper to pull from, incredibly easily. PPA's and Launchpad are orders of magnitude more complicated to do the same task.


>> Why isn't there a Linux distro like this?

Debian stable is that distro in my case.

I agree that you shouldn't have to put up with an annoying bug or missing functionality until the next stable release; that's what the backports[1] system is meant to address. And when you cannot find what you're looking for in the backports repository, making your own is relatively simple[2].

The way I see it, the FreeBSD ethos is perfectly applicable in Linux land. It just requires a little bit of extra discipline on our part.

[1] https://backports.debian.org

[2] https://wiki.debian.org/SimpleBackportCreation


Other package collections are available for Linux e.g. pkgsrc, Nix, the Linux port of Homebrew, ...


The BSD model is somewhat challenging for porters (maintainers of the 3rd party software). Making sure the software compiles on three different FreeBSD releases (old-stable, stable, development branch) is much more work than the usual Linux 1:1 model.


But on Linux you also have to check against RHEL/CentOS 6, 7, and some fresh distro. It's also quite a lot of effort.


The package repositories for CentOS 6 and 7 (and Fedora 23, 24, rawhide) are all distinct; each release is a git branch in a given package's repository. Whereas on FreeBSD, the head ports tree is shared between FreeBSD 9, 10, 11, and CURRENT. It's a distinction that makes a difference.


Arch based distributions are rolling systems. It's all a manner of the package manager not the OS




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: