From about 2005 to 2012 i ran everything on FreeBSD, laptop, desktop and every server I had at two companies.
Eventually I moved where I did not have CTO authority (Beggars and choosers) and by 2015 I realised that I was spending more time configuring drivers and trying to get the display manger just right than actually delivering value.
What I really wanted about 2010 was a company that sold a laptop pre installed with FreeBSD that just worked - kept the drivers and everything else Shipshape and Bristol fashion . I thought then I would happily pay a annual fee for it - I guess Tim Cook has that fee now.
I was forced into using Windows for 1yr when I started at Ubisoft. (Visual Studio, MS office, Skype!! grumble).
Eventually I got tired of doing all of my infrastructure development in a VM, so I wiped out my desktop OS and stuck FreeBSD on it (I was also on a tirade against systemd at the time). -- I was given a crappy PC to run windows/skype/office on.
Overall, aside from how absolutely horrendously slow the browser was (and, it's even slower on OpenBSD which is what I stuck on my laptop)- it was significantly less 'breaky' than my windows machine was.
Windows had crapped out a whole bunch of times; randomly stopping devices from working and needing a reboot to fix, the VM software(s) had completely wrecked the networking stack in the OS- it was really painful.
But FreeBSD (once set up) made that desktop the most solid it had ever been.
I ran FreeBSD on all my personal laptops from 2015-2018 and I didn't notice any difference in speeds on Chromium between personal and work laptops.
All my personal laptops are Windows now (partially for some low-key gaming and partially ease of use). I thought I'd like using Hyper-V but it's a pain in the ass to configure static ips. So I do all my development in a Fedora VM on Linode...
In writing this up I realize there's not really great reason to be using Windows after all. More and more important software is available in the browser (i.e. Figma finally made Sketch/macOS less of an issue, Google Docs is Google Docs).
I was using Firefox at the time, but it was noticeably slower than on linux or windows.
> In writing this up I realize there's not really great reason to be using Windows after all. More and more important software is available in the browser (i.e. Figma finally made Sketch/macOS less of an issue, Google Docs is Google Docs).
I'm also surprised by how "agnostic" you can be these days due to the ubiquity of web-apps. A chromebook is a legitimately usable thing for the majority of people it feels like.
I think my question is - did Apple hoover up all the commercial demand for a managed FreeBSD desktop - or is the structural difference between BSD license and GPL what makes all the difference ?
Reword it as - is Stallman right?
Or
Can I launch a FreeBSD laptop company and expect enough buyers?
This feels both useful (should I need to do desktop FreeBSD) and like a walk down memory lane (from when this was how you had to manage Linux, too). Thank you for both.
And thank you to all the countless developers who have made this level of fiddling mostly a thing of the past. At least this blog did not have to mention modelines.
FreeBSD feels more difficult to use in this sense even compared to Net/OpenBSD. While some of this configuring is strictly unnecessary (changing the keyboard layout in xorg.conf is only relevant if you aren't using a DE with that functionality), FreeBSD seems more ... finicky with GPU drivers and their DRM/KMS compat layer from Linux than Net/Open.
On NetBSD you can usually just "starts" and get an accelerated X session with no config, from just a "full sets" install. You usually have to install at least some extra kernel modules in FreeBSD.
It's an unfortunate consequence of GPL licensing of some of the linuxkpi parts, which graphics drivers use. I believe the amount of problematic code is slowly decreasing, so eventually things will get back to normal.
FreeBSD is such a great OS and has a very powerful kernel. So much potential, it is sad to see Linux is the only unix OS that gets traction. They've had Jails in BSD long before Docker was a thing. Debian GNU/kFreeBSD was promising but it probably just doesn't make sense to maintain that project given lack of attention. :(
Those are systems for Apple to control you and their devices that you paid for, not for you to control any device that you own. Therefore, the only traction they've really gotten is with one single user - Apple.
Probably worth pointing out a significant portion of the BSD "personality" in the XNU kernel is just straight FreeBSD. You could kind of say XNU is a superset of the FreeBSD kernel.
On top of that, the unix userland resembles FreeBSD, although it's pretty eclectic in choices, e.g. it ships with GNU grep and GNU make by default IIRC while I think FreeBSD uses BSD grep and make by default?
(Darwin is pretty eclectic overall -- some portions are more NetBSDish. Kernel is mostly Free I think)
IME, most of the basic shell commands are either directly from FreeBSD or a project in the BSD universe. For example tar is from libarchive, a distinct project (see https://github.com/libarchive/libarchive) that DragonflyBSD, FreeBSD, NetBSD, and macOS import and track. (But oddly not OpenBSD, which has evolved the 4.4BSD-Lite implementation.)
Yeah, I'm just an idiot. I guess I was just thinking of GNU make.
On the other hand, it looks like (at least on Catalina?) it ships with GNU diffutils, so patch, cmp, diff are all GNU utilities. I'm going to sheepishly pretend like this proves my point somehow :-)
A little late to the party, but- MacOS has actually beaten FreeBSD to the punch by shipping with bsdgrep as grep for years at this point.
FreeBSD should be able to switch before 13.0, but the bsdgrep developer is a slacker. It's only missing a couple of GNU extensions that are somewhat surprisingly (to me) common.
> it is sad to see Linux is the only unix OS that gets traction
I would guess that there are more BSD users than there ever have been in 2020.
FreeBSD (like *BSD in general) may be a niche OS, but there are probably millions of users and thousands of developers; certainly enough to keep the platform going.
Not everything has to be mainstream, after all; there is probably a "medium tail" of operating systems which BSD is a solid part of.
> The difference is that with the BSDs everyone can take and don't bother to contribute upstream, e.g. Apple and Sony.
This depends on the use case of the company.
A lot of companies learned that simply forking the project and not giving back is a good pathway to pain because now you have to carry your internal patches forward, as well as a larger and larger diff against the base OS itself as it changes.
If you forked (e.g.) FreeBSD 9 and based your product off of it, and the project is now at version 12.x (with 13.x in 2021Q1), then that's a lot to keep up with internally.
It's better to use the base OS, and the documented APIs, for one's secret sauce, and give back everything else. This is what vendors like Netflix, Dell-EMC Isilon, NetApp, etc. do. You'll also see quite a few patches from Microsoft and Amazon as they want to sell their cloud services for as many guest OSes as possible. Hardware vendors (Chelsio, Mellanox, Cavium) also throw in support so that hardware companies will use their products with-in appliances.
Others, like Sony with the PS4 and PS5, mostly seem to operate in user land and so do not do much kernel-level stuff (except perhaps booting code) that would need to be back ported.
Probably because they don't care with stay current: the PS4 isn't going to change much after initial development, so why should the base OS? Similarly now that the PS5 has shipped, I doubt there will be much OS development there.
If FreeBSD (or Linux) weren't around, then they'd simply purchase/license an embedded OS (QNX?) and use that.
Isn't that argument put to bed by the fact that all of the BSDs still exist, are actively maintained including new features and are used by many individuals/corps in a diverse range of cases?
There is hardly a reason to install them other than wanting free beer OS without GPL-strings attached or being a systemd hater, and then suffer a desktop experiece that feels like stuck in early 2000.
Conferences related to BSDs usually boil down to running the same code in newer hardware or filesystems.
And the traction it gets is mostly in closed source projects where the code may not be contributed back. For example Orbis OS, the OS of the Playstation 4 and quite possible 5 as well.
Can you or someone explain to me or link me reasons why BSD is a preferable choice to linux? What kind of advantages and disadvantages are there to the OS?
What do I love about FreeBSD? You can bring back to life old hardware and put it to do useful things (this is also true with other BSDs and low footprint Linux distros, but so far my experience with FreeBSD has been superb). At the moment the only machine I'm running it is a ThinkPad X230 and everything works perfectly and the documentation is top notch. The FreeBSD Handbook is an excellent place to start for newcomers. vermaden's guide on setting up automount (who also wrote automount) on FreeBSD has been really really useful, thanks a lot for that! One gotcha that I've learnt about FreeBSD is that you have to run RELEASE in order to be able to upgrade the system!
Not at all. WiFi worked out of the box. However I had to use the i915kms driver from ports as I could get the video working as it was with the previous version of FreeBSD that I was using (I can't recall the version). These are the steps that I had to do after trying many i915kms drivers (both the basic one included and also the ones available from pkg):
1. Get the ports.
2. cd /usr/ports/graphics/drm-kmod; make install
3. Add: kld_list="${kld_list} /boot/modules/i915kms.ko" in /etc/rc.conf
4. Optionally install the `mesa-demos` package and run `glx-gears` to test acceleration.
I think there were some changes to the i915kms driver because the previous version I was using (non-stable) the driver was working absolutely fine. Hope that helps if you're experiencing the same issue!
Something that strikes me about FreeBSD is you need a certain amount of knowledge going in. On Linux, you can set up a desktop pretty easily. Then you can find out more advanced stuff later on. BSD just dumps you into a shell. You have to know to install this or that metapackage to get a graphical display going and the concepts are different enough from Linux land so that it takes you a while to get going and feel comfortable
Ah that is not quite accurate. Sure many linux distros will install a desktop environment for you. FreeBSD will require you to install a package for the one of your choice which should also install all dependencies. As noted elsewhere, X pretty much works now with no additional config update unless you have a very unusual setup. That shouldn't be too high a hurdle as even on linux you will need to know how to install packages at some point too.
And if you don't want to do that, you can try something like GhostBSD which is based on FreeBSD with the MATE desktop.
I found the FreeBSD handbook to be extremely helpful in both installing the system and trying to navigate my way around it. It's what made me finally comfortable moving around in *nix systems when I was in a "install every weird operating system that exists" phase.
Well, as a FreeBSD user earlier this year I tried about 3 distros to install anew [ previously arch ] from a thumbdrive. None would bring up the install screen properly [ I suppose my monitor has the wrong input or something... ] and IIRC one that would would not let me complete partitioning without errors. [ Not to be overly critical of linux, but I ran out
of time... ]
Even worse, in Firefox, I see the title of the submission appear to be on a newline underneath the upvote arrow. The special characters are making the height of the div to be 33px
It seems that the issue is the "LatinModernMathJax_Monospace-Regular" font being broken. This font is part of the "mathjax2" package, which is a dependency of my PDF reader.
For my own learning, the poster "vermanden" is (ab)using the U+1F600 to U+1F6FF table of Mayan/mathematical symbols (except for the first right arrow, it's another set) which you can reference here: https://www.utf8-chartable.de/unicode-utf8-table.pl
It breaks down like so in hex mode:
E2 80 93 20 ->
F0 9D 9A 9F v
F0 9D 9A 8E e
F0 9D 9A 9B r
F0 9D 9A 96 m
F0 9D 9A 8A a
F0 9D 9A 8D d
F0 9D 9A 8E e
F0 9D 9A 97 n
2018 is indeed the date of the 'original' post but the later adde UPDATES are from other dates. For example UPDATE 4 is from today. Maybe I should also add the date to that 'UPDATES'? :)
Eventually I moved where I did not have CTO authority (Beggars and choosers) and by 2015 I realised that I was spending more time configuring drivers and trying to get the display manger just right than actually delivering value.
What I really wanted about 2010 was a company that sold a laptop pre installed with FreeBSD that just worked - kept the drivers and everything else Shipshape and Bristol fashion . I thought then I would happily pay a annual fee for it - I guess Tim Cook has that fee now.
I was forced into using Windows for 1yr when I started at Ubisoft. (Visual Studio, MS office, Skype!! grumble).
Eventually I got tired of doing all of my infrastructure development in a VM, so I wiped out my desktop OS and stuck FreeBSD on it (I was also on a tirade against systemd at the time). -- I was given a crappy PC to run windows/skype/office on.
Overall, aside from how absolutely horrendously slow the browser was (and, it's even slower on OpenBSD which is what I stuck on my laptop)- it was significantly less 'breaky' than my windows machine was.
Windows had crapped out a whole bunch of times; randomly stopping devices from working and needing a reboot to fix, the VM software(s) had completely wrecked the networking stack in the OS- it was really painful.
But FreeBSD (once set up) made that desktop the most solid it had ever been.
All my personal laptops are Windows now (partially for some low-key gaming and partially ease of use). I thought I'd like using Hyper-V but it's a pain in the ass to configure static ips. So I do all my development in a Fedora VM on Linode...
In writing this up I realize there's not really great reason to be using Windows after all. More and more important software is available in the browser (i.e. Figma finally made Sketch/macOS less of an issue, Google Docs is Google Docs).
Maybe I'll switch back to FreeBSD.
> In writing this up I realize there's not really great reason to be using Windows after all. More and more important software is available in the browser (i.e. Figma finally made Sketch/macOS less of an issue, Google Docs is Google Docs).
I'm also surprised by how "agnostic" you can be these days due to the ubiquity of web-apps. A chromebook is a legitimately usable thing for the majority of people it feels like.
Reword it as - is Stallman right?
Or
Can I launch a FreeBSD laptop company and expect enough buyers?
And thank you to all the countless developers who have made this level of fiddling mostly a thing of the past. At least this blog did not have to mention modelines.
On NetBSD you can usually just "starts" and get an accelerated X session with no config, from just a "full sets" install. You usually have to install at least some extra kernel modules in FreeBSD.
Only Synaptics touchpad had 'tap to click' disabled.
I create these configs to be sure that X11 will start the way I want it to start, not that all of it is needed.
Darwin (macOS, iOS, iPadOS, tvOS, watchOS)?
And I guess that technically Minix is one of the most successful Unix-like systems. [1]
[1] https://www.cs.vu.nl/~ast/intel/
Those are systems for Apple to control you and their devices that you paid for, not for you to control any device that you own. Therefore, the only traction they've really gotten is with one single user - Apple.
> macOS
For now.
(Relax everybody, I'm at least half kidding.)
You can't change much about how MacOS works under the hood anymore. If you don't like how it works, tough.
The device and OS are not yours.
Also why no one could pay me enough to rely on Apple hardware or software at this point for anything but entertainment.
On top of that, the unix userland resembles FreeBSD, although it's pretty eclectic in choices, e.g. it ships with GNU grep and GNU make by default IIRC while I think FreeBSD uses BSD grep and make by default?
(Darwin is pretty eclectic overall -- some portions are more NetBSDish. Kernel is mostly Free I think)
IME, most of the basic shell commands are either directly from FreeBSD or a project in the BSD universe. For example tar is from libarchive, a distinct project (see https://github.com/libarchive/libarchive) that DragonflyBSD, FreeBSD, NetBSD, and macOS import and track. (But oddly not OpenBSD, which has evolved the 4.4BSD-Lite implementation.)
According to a 2012 accounting at http://meta.ath0.com/2012/02/05/apples-great-gpl-purge/ (via https://news.ycombinator.com/item?id=3559990), macOS was down to 16 GPL packages in macOS 10.12 from 47 in macOS 10.5.
Yep, it still is. On Big Sur on M1:
On the other hand, it looks like (at least on Catalina?) it ships with GNU diffutils, so patch, cmp, diff are all GNU utilities. I'm going to sheepishly pretend like this proves my point somehow :-)
FreeBSD should be able to switch before 13.0, but the bsdgrep developer is a slacker. It's only missing a couple of GNU extensions that are somewhat surprisingly (to me) common.
I would guess that there are more BSD users than there ever have been in 2020.
FreeBSD (like *BSD in general) may be a niche OS, but there are probably millions of users and thousands of developers; certainly enough to keep the platform going.
Not everything has to be mainstream, after all; there is probably a "medium tail" of operating systems which BSD is a solid part of.
If Linux never happened, we would still all be using HP-UX, Solaris, Aix, Tru64, and all the other clones that integrated some form of BSD code.
> If 386BSD had been available when I started on Linux, Linux would probably never had happened.
This depends on the use case of the company.
A lot of companies learned that simply forking the project and not giving back is a good pathway to pain because now you have to carry your internal patches forward, as well as a larger and larger diff against the base OS itself as it changes.
If you forked (e.g.) FreeBSD 9 and based your product off of it, and the project is now at version 12.x (with 13.x in 2021Q1), then that's a lot to keep up with internally.
It's better to use the base OS, and the documented APIs, for one's secret sauce, and give back everything else. This is what vendors like Netflix, Dell-EMC Isilon, NetApp, etc. do. You'll also see quite a few patches from Microsoft and Amazon as they want to sell their cloud services for as many guest OSes as possible. Hardware vendors (Chelsio, Mellanox, Cavium) also throw in support so that hardware companies will use their products with-in appliances.
Others, like Sony with the PS4 and PS5, mostly seem to operate in user land and so do not do much kernel-level stuff (except perhaps booting code) that would need to be back ported.
If FreeBSD (or Linux) weren't around, then they'd simply purchase/license an embedded OS (QNX?) and use that.
There is hardly a reason to install them other than wanting free beer OS without GPL-strings attached or being a systemd hater, and then suffer a desktop experiece that feels like stuck in early 2000.
Conferences related to BSDs usually boil down to running the same code in newer hardware or filesystems.
You know why you never seen a Google Server OS? Because you just have to give code back to the community if you REDISTRIBUTE your code.
>Conferences related to BSDs usually boil down to running the same code in newer hardware or filesystems.
That's complete and utter BS, you really sound like a hater but not a systemd one.
1. Get the ports.
2. cd /usr/ports/graphics/drm-kmod; make install
3. Add: kld_list="${kld_list} /boot/modules/i915kms.ko" in /etc/rc.conf
4. Optionally install the `mesa-demos` package and run `glx-gears` to test acceleration.
I think there were some changes to the i915kms driver because the previous version I was using (non-stable) the driver was working absolutely fine. Hope that helps if you're experiencing the same issue!
Edit: Blank lines between instructions.
https://twitter.com/vermaden/status/1317864099053785090
And if you don't want to do that, you can try something like GhostBSD which is based on FreeBSD with the MATE desktop.
https://www.freebsd.org/doc/handbook/index.html
False. OpenBSD assk you at the install process if you want to launch Xenodm from Xenocara at boot.
You get fvwm, right, but X is totally configured.
I have found running sway on Debian testing really refreshing. Everything is simpler in configuration and usage.
http://i.imgur.com/nuA4TBe.png
Version 83.0 on Arch Linux
It seems that the issue is the "LatinModernMathJax_Monospace-Regular" font being broken. This font is part of the "mathjax2" package, which is a dependency of my PDF reader.
It breaks down like so in hex mode:
Kinda funny to see a simplistic and technology embracing site like HN 'broken' due to insufficient input sanitization ;-)