I remember a story about Carmack going off the grid with a laptop and OpenBSD for a couple of weeks, and him being delighted about their documentation and the ability to build things without access to the web.
Carmack is a hero in the C community, and OpenBSD is also all about C and classic Unix, so he might just feel at home there.
A lot of people rename things and add comments as part of understanding a new code base. I do and I'm sure I'm not the only one on HN.
https://cvsweb.openbsd.org/src/sys/dev/ic/vga.c?rev=1.70&con... https://cvsweb.openbsd.org/src/sys/dev/ic/vga.c?rev=1.71&con...
Also to see that he would be so tactful about asking if the changes are welcome, even though he is who he is and knows it. I like to think there are people in their twenties or teens or even younger browsing HN and subconsciously absorbing the fact that this is how a programming god behaves.
Calling this a "very celebrity grocery list" story is a disservice.
Carmack's one of the most accomplished programmers in history in terms of innovation, skill, and longevity. His words and opinions also carry a fair bit of weight, even today. His contributions and technology choices matter in a way that a celebrity's grocery list do not.
If there's an injustice here, it's the fact that there are many Carmack-level coders out there, toiling away in relative obscurity, who don't have their contributions trumpeted in this way.
'Extreme' maybe an understatement here but it seems like HNers here love seeing the second coming of King Midas when everything he touches turns into gold.
I think you will find Carmack has contributed more to the hacker ecosystem than anyone else if you just take a very shallow peek.
I would suggest to start by reading the source code to Doom, it is surprisingly approachable and educational in several fields of math, geometry, data structures, and computer science. There are even books to help you understand it, heck, there are a dozen or more books about Id software and John Carmack, so there are many authors and readers who feel very differently from you, maybe you could consider the reason. There are many things in our field that would have happened eventually, no matter who did it, but much of Carmack’s contributions really would not have happened without him, he really is in a league of his own.
It’s really amazing to me that you feel so negatively towards people who have endearment for one of the hacker community’s greatest contributors. I can only guess that you might be very unhappy, for that I’m very sorry and I hope it turns around for you very soon.
But that's the thing. The real benefits from OpenBSD come when it's the only system you need. Who cares how simple and elegant the guest system is, if you need to maintain a linux installation to host it?
A project on the scale of OpenBSD can't possibly support all the hardware that's out there. And the system is under active development, so there are constant regressions in hardware support. That's fine for John Carmack: he can fire up ed and fix a kernel panic, that's how he winds down after work. But the vision that attracts me to OpenBSD is a box in a closet that Google doesn't have the key to, which sits there for 6 months receiving my email and serving my homepage, takes 10 minutes to update, then sits there for the next 6 months; maybe once every 5 years I'd need to read a manpage and port my smtpd.conf to a new syntax. Hardware regressions are what stop that from happening.
The OpenBSD developers are getting what they want, and good luck to them. The shame is that a little bit of coordination, where they chose one model of ThinkPad every other year and committed to supporting it for a decade, would make the system so much more useful for so many other people.
I don't think he's suggesting that as the long term way to use it but as an introduction to the system.
https://github.com/elad/openbsd-apu2
Mine is 4(?) years old, and has never crashed. I use it every day. If you want something newer, or have 10x the power budget:
There's very little that I can't do with it versus my Linux workstation, at least for my needs.
But the problem remains: eventually, the next upgrade will crash every time you boot it, and what will you do then?
If only that were true. And they do releases every six months. And you are not supposed to skip one, or you’re on your own.
Once you find the manual, you’ll realize it’s well-documented and simple, and that simply using it has great educational value.
If those things don’t appeal to you, it’s probably not the OS for you. It takes about an evening to figure this out, in my experience.
OpenBSD's manual pages and online FAQ combined have never failed to answer a question I've had about the base system. It's really that good.
The ArchWiki is close behind in usefulness, but that's maintained by its community and article quality varies.
Installing in a VM is not the best differentiation, since in many OSs these experience was streamlined and everything usually works out of the box, but the customization part is still a good example.
Of course in the end, you might get to a setup similar to other OSs - running a browser in a windows manager and a buch of other common tools (IDEs, editors, productivity apps), but the way you get there, and the amount of problems you encounter along the way is a major part of using an OS.
I think you can get a good impression in a few hours, and see how it's different. (For example, I had a similar experience with NixOS: In a few hours you see how radically different it is and learn how it fits you)
Or is that old information which i should forget?
(All Nvidia would have to do is build another binary; it's still chatting with the same driver blob internally so it's not really clear to me why they don't bother compiling it for FreeBSD.)
Binary compatibility is for userspace programs, not kernel modules.
Edit: I'm not having any FreeBSD systems in use right now, so i don't know if they changed the defaults. What i remember is at least the last two versions were compiled into GENERIC, so you didn't even had to compile your own kernel when that range backwards was enough.
Similar thing in NetBSD, a loooong time ago, even their own driver for 3Com905 relied on the equivalent of that functionality. That caught me by surprise, because i used NetBSD like Gentoo, found some Compat foobarjurassicBSD, wondered why i should use that at all, and had no working net. Fun! :-)
I believe something similar is done in Linux. The difference in experience may come from FreeBSD maintaining a stable KBI over a release version (e.g., stable/12), while Linux aggressively does not maintain any KBI stability; hence the need for DKMS/akmods.
This is unrelated to COMPAT_FREEBSD.
[0] https://youtu.be/MShbP3OpASA?t=2997 (time coded)
Which changes? Where? I'm looking at said EULA right now and I don't see anything related.
[0] https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVM...
AMD binary blob? You mean that amdgpu-pro thing? That doesn't exist on FreeBSD.
https://wiki.freebsd.org/Graphics/AMD-GPU-Matrix
edit: maybe should have added https://www.x.org/wiki/RadeonFeature/#index5h2 too
Stable meaning changes, in this context, right? freeBSD changes ABI compatibility with every version.
If you mean that they have old software (and old==stable if you think Debian) then that’s because of BSD licensing vs GPL. GPL can take from BSD but the other way around is not possible.
Stability of uptime? Yeah, they’re rock solid.
On the other hand, I found that OpenBSD has absolutely outstanding reliability and stability on hardware like my ThinkPad X220.
> Stable meaning changes, in this context, right? freeBSD changes ABI compatibility with every version.
Every major version, right? From becoming -Stable to ending its support lifecycle, I'd think a FreeBSD version and its ABIs are supported as long as many Linux distro LTS releases.
The only difference will be any shared libraries and potentially the libc. But if we're speaking from a pure technical perspective, the libc is not linux.
So, are you saying that they break libc ABI?
More of what I learned using Linux 0.99 applies to present-day OpenBSD than present-day Linux, and I can’t think of any breaking changes specific to the Linux side that weren’t clear regressions (except apt and dpkg. Those rock.)
I would describe that as having practical use.
pfSense is a wonderful firewall appliance. FreeNAS is a wonderful storage appliance. If you need pf or native ZFS, a BSD is probably your best way to get it.
If you want to run a random headless server to mess around with, you are probably going to have a harder time with any of the BSDs than you would with even bleeding-edge Linux distros. If you want to run a graphical desktop with 3D acceleration and HD video you will almost certainly have a harder time than any Linux user.
---
There are, of course, people who are happily using BSD-based desktops right now and I am certainly not denying them anything, but even they'd have to admit they would have been able to get most of the same experience with a lot less effort on a modern Linux.
Actually, I became a BSD user after just trying OpenBSD out of curiosity on my headless server after years of running Linux. The experience was so damn good.
> There are, of course, people who are happily using BSD-based desktops right now and I am certainly not denying them anything, but even they'd have to admit they would have been able to get most of the same experience with a lot less effort on a modern Linux.
It's the opposite for me. Modern Linux distros are a pain; I can't find one I really like. Whenever I ask people to recommend a distro that feels like OpenBSD, I get recommendations from people who obviously haven't used OpenBSD in two decades. Maybe they tried FreeBSD two decades ago, and then figured that some old Linux distro was kinda similar..
Frankly I don't think the Linux way of "ducktape a bunch of third party packages together" will ever produce a distro that comes close to being as pleasant as OpenBSD. At least they'd have to heavily patch things and diverge from upstream.
With the exception of MacOS? Darwin is BSD.
Are you sure you are talking about the right thing here?
On a different note. I am something of a Ubuntu fan and try to be more involved there. But then again the xBSDs where x = {Free, Open, Net, ...} are one of those things that always prods the back of your mind. It's a bit like topics in mathematics that always catch my attention, only to be forsaken for more mundane tasks. Then again, mathematics is a bit like the art of making everything mundane.