News for hackers. Stuff that matters.
Re:FreeBSD 12.0 is now available by Koshkin on Tuesday December 11, 2018 @04:44PM (#18659211)
To be fair, there is very little difference between Linux and BSDs these days, and the choice between them is mostly the matter of personal preference. Yes, Linux is more popular and enjoys somewhat better support by third-party vendors (which could in some cases be limited to a small set of distributions), which is why it is usually a safe choice; otherwise there not much reason to choose one over another.
Re:FreeBSD 12.0 is now available by siffland on Tuesday December 11, 2018 @05:09PM (#18659434)
FreeBSD is an entire operating system. Linux is just a kernel used in hundreds of different distros. It is correct that they are both UNIX like derivatives. FreeBSD is based on the BSD license, Linux on the GPL (this is important if you want to make something proprietary, like the PS4).

Most major Linux distros have different package managers and you download binary updates. They supply their own kernel with backports and custom compiled to stay in sync with the rest of their userland. In FreeBSD the kernel and userland are in sync so you dont have this issue.

Linux has better driver support due to more exposure to hardware.

You can go one for quite a while about how different they are, so they are very different. But you are right it is user preference.

(I excluded systemd and init to avoid a holy war)

Re:FreeBSD 12.0 is now available by loeg on Tuesday December 11, 2018 @07:34PM (#18660345)
> In FreeBSD the kernel and userland are in sync so you dont have this issue.

This is true for the base system, but not necessarily true for ports / pkg. You can end up with an inconsistent pkg collection, unfortunately.

Re:FreeBSD 12.0 is now available by umanwizard on Wednesday December 12, 2018 @02:40AM (#18662061)
Of course, but this is true for any OS. Some random freeware you download isn't magically going to be in sync with your release of Windows, either.

In FreeBSD at least there is a real, fully-featured, usable OS out of the box, all consistent, in one source tree at /usr/src which is quite easy to read, change, and build. Unlike most GNU/Linux distros where each random thing like "grep" is its own package developed by its own separate group of people.

Re:FreeBSD 12.0 is now available by loeg on Thursday December 13, 2018 @11:37PM (#18678508)
Allow me to clarify: the way FreeBSD ports are built, updated, and pushed to mirrors means that ABI compatibility may sneak in accidentally and that updating subsets of your installed package base is unreliable and may introduce, e.g., applications that depend on missing SONAMEs.

Linux distros avoid this problem by separating the process of committing to an individual port/source package; building that individual package, and possibly rebuilding dependencies; and pushing out updates, which are atomic and can contain an updated library and all of its dependencies. My experience is that Linux package managers (dnf/rpm anyway) are better at catching operations that would introduce broken ABIs, as well.

In contrast, the FreeBSD ports model is to invoke poudriere periodically and rebuild all ports at once, then push the entire set out to mirrors. There is no automation that checks for ABI changes in libraries, and pkg(1) does not do a great job of confirming that a library upgrade does not break installed programs (or other libraries) via SONAME bump; much less symbol changes not reflected in SONAME.

Re:FreeBSD 12.0 is now available by toast0 on Tuesday December 11, 2018 @08:21PM (#18660589)
Sure, but you would never run into having the wrong version of ifconfig, because it's not distributed through ports, it's in in the same repo as the kernel, so they are distributed together.
Re:FreeBSD 12.0 is now available by loeg on Tuesday December 11, 2018 @09:45PM (#18660985)
Yep, I believe that is consistent with my earlier comment :-).
Re:FreeBSD 12.0 is now available by siffland on Wednesday December 12, 2018 @09:26AM (#18664113)
What is awesome with FreeBSD is when you can do a

rm -Rf /var/db/pkg/* /usr/local/* /usr/ports/distfiles/*

reboot the system and all the non OS packages (installed via ports and packages) are gone and you can start over (reboot is probably optional).

Re:FreeBSD 12.0 is now available by Koshkin on Tuesday December 11, 2018 @05:33PM (#18659622)
> Linux is just a kernel

Well, this mantra is really getting old - because when people say "Linux" they almost never talk about Linux-the-kernel. Which is also why, for instance, nobody calls Android "Linux", but when referring to Ubuntu, Slackware, etc., they do.

Re:FreeBSD 12.0 is now available by umanwizard on Tuesday December 11, 2018 @05:53PM (#18659752)
You are misunderstanding. It actually makes a huge difference.

Let's compare apples to apples: Ubuntu vs. FreeBSD.

In Ubuntu there is a kernel made by one group (the Linux project), a bunch of userland tools and C compiler made by another group (the GNU project), desktop environment made by the GNOME project, etc. etc.

Whereas FreeBSD is just FreeBSD. It is one project, in one source tree, maintained by one group of people. (The biggest exception to this is the C compiler -- it is a third-party project which gets imported into the main tree. But that's a minor thing compared to Ubuntu which does this for everything.)

Re:FreeBSD 12.0 is now available by laumars on Tuesday December 11, 2018 @06:58PM (#18660157)
That's not really the best of examples because the C compiler and desktop environments are not part of FreeBSD's base system, let alone developed by FreeBSD devs. In that regard Ubuntu and FreeBSD are similar.

I'd have probably gone with init daemons, ABIs and other core systems. Maybe mention how some of the base CLI tools differ (eg GNU has slightly different flags and rules for ordering them for `cp`, `find`, `ps`, etc).

FreeBSD is a bit of a gateway drug in that it's the most like GNU of all the BSDs. Had you use OpenBSD as your point of comparison then the differences would have been easier to describe. But ultimately you're always going to get some cross-pollination across all the POSIX platforms (eg GNU/Linux uses OpenBSD's OpenSSH; FreeBSD has a bunch of GNU tools; and all of the above platforms will run most DEs, Apache projects, etc). That's a good thing though - it was the point of POSIX.

I just wish there wasn't so many differences with syscalls - but that's moan about a very specific problem I'm having on a current hobby project.

Re:FreeBSD 12.0 is now available by umanwizard on Wednesday December 12, 2018 @02:34AM (#18662034)
The C compiler is in fact part of the FreeBSD base system (if it weren't, you would need to install a port just to update from source. You don't.) You are right that it's one of the few pieces that is developed outside the project (and periodically imported into the tree).

It is, on the other hand, fully supported. Bugs in the C compiler are considered bugs in the OS and will be fixed.

I don't need a desktop environment or care about having one, so it not being part of the core OS doesn't bother me.

I'll copy-and-paste my thoughts on why I like FreeBSD from an earlier comment I made:

"Every one I have used installs the source code to the entire OS in /usr/src and make it very easy to change and recompile the system. On the BSDs I mentioned, if you don't understand how something works or you want to fix some bug, it's usually pretty easy to go find the source code, read it and learn how it works, and fix it. On most Linux-based OSs you would have to go figure out which random organization makes the component that has a bug (Linux project for the kernel, GNU for a lot of utilities, zillions of others for everything else), figure out how to download and build the source and install it into your distro (which is probably totally unsupported since your distro will expect to be using RPMs or DEBs rather than random stuff installed from tarballs...)

This is the most salient feature of the modern pc BSDs to me. It's impossible to describe how different it feels to be truly in control of your system and understand/change it however you want."

Re:FreeBSD 12.0 is now available by laumars on Wednesday December 12, 2018 @02:47AM (#18662102)
Preaching to the choir there; im a fully paid up FreeBSD contributor and use it on several personal systems. It’s a great platform to use :)

The reason I brought the DE into the equation was simply because it was being compared against Ubuntu. I don’t really think Ubuntu is the best case study there either to be honest but I’m just following on from the post that preceded me.

Re:FreeBSD 12.0 is now available by Koshkin on Tuesday December 11, 2018 @07:51PM (#18660442)
> the C compiler

Or any desktop environment, for that matter, or much of everything else of any importance for the end user.

Re:FreeBSD 12.0 is now available by laumars on Wednesday December 12, 2018 @02:15AM (#18661972)
This is literally what I just said. Including the desktop environment example.
Re:FreeBSD 12.0 is now available by umanwizard on Tuesday December 11, 2018 @05:59PM (#18659790)
How much have you used {Free,Open,Net}BSD? I find the experience to be completely different from that of using any of the Linux distros I've tried, and I'm wondering what you find similar about them...
Re:FreeBSD 12.0 is now available by beezle on Tuesday December 11, 2018 @06:41PM (#18660065)
Slakware historically has been closest to a BSD feel of the Linux distros
Re:FreeBSD 12.0 is now available by GalacticDomin8r on Tuesday December 11, 2018 @08:46PM (#18660696)
Maybe the init system in the 90's was similar when Slack was compared to contemporary Linux distros. There is very little modern resemblance. I wish this perception would go away. Spend a day with both and I'd put money on an honest person never making this claim again.
Re:FreeBSD 12.0 is now available by beezle on Friday December 14, 2018 @11:41PM (#18687082)
Late in reply - I switched off from Slack to FreeBSD around 2006. Perhaps things have changed, but Slackware generally followed the BSD conventions of what goes where as opposed to say RedHat.
Re:FreeBSD 12.0 is now available by Koshkin on Tuesday December 11, 2018 @07:52PM (#18660446)
> completely different

No way.