Personally, I think this is a good call. People have a tendency to go with what they know and feel competent in. As people move more and more toward using laptops as their primary or only workstation device, the chances that admins or enthusiasts will choose FreeBSD as their go-to server diminishes if FreeBSD isn't what they're doing their primary computing through. Constant context switching is also made more difficult when you're using a very similar, yet oh so slightly different system, where many familiar commands are present, do basically the same thing, but take different arguments, have the same arguments do different things, or behave in very subtly different ways from your main computing device. Of course, I'm assuming the admin or enthusiast is using Linux on their main machine.
I actually think the structure of BSD projects could be better suited to building laptop support than something more fragmentary like Linux. It doesn't have the same resources, but it can wield those resources in a more concerted manner to support specific models very well, in a way that the structure of the Linux project doesn't facilitate nearly so well.
As a long term FreeBSD user (since 2.0) and advocate, my view is that FreeBSD should focus on its niche as a rock-solid server operating system. For most developers buying a MacBook and SSH-ing into a server is probably the right answer (or running a VM if you really need something local). The level of effort to match the MacBook user experience feels like a lost cause (Linux has been trying to do this for decades with significantly more resources) and it would feel more useful to use this funding to focus on the server side.
I'm so much on the cliff on this, whilst they should focus it's becoming more painful by the year to run stuff on FreeBSD since there is so may Linux:isms in most opensource projects today that it's almost as hard to compile on FreeBSD as it was to compile on Windows 20 years ago.
Only a month or two back I gave up on compiling Samba myself (mostly worked w/o issues in the past just with ./configure && make), relying on package/ports instead.
Modern dotnet versions are finally available (but the compilation instructions looked headache inducing), node.js filesystem watching seems broken/nonexistant (using webpack -w i had to enable some polling mode).
I love FreeBSD but Linux has EEE'd the OSS ecosystem. (Embrace, Extend, Extinguish)
> or running a VM if you really need something local
I agree, we often overlook the fact that virtualization made enormous progress in the last decades on consumer hardware.
So if I want to run FreeBSD on my laptop I might have to boot Linux first (I know...). Simply because few OS can afford the luxury of broad hardware support nowadays.
FreeBSD is still a very competitive OS but it might start lagging is some aspects behind the most innovative Linux distributions such as NixOS.
My wish would be some work on configuration management and automation since it might be a low hanging fruit for such an integrated OS developed by a single entity.
The ability to daily drive an operating system on the machine sitting on your desk helps get contributions that also help it be a better server operating system.
For the last 5 years, I have replaced FreeBSD on servers with Linux. The main reason is that Linux, is a lot less work. The time spent on upgrading for example Debian is significantly less than FreeBSD which has a cumbersome process which requires some manual human interaction a few times during the process. Another thing is that behaviour of some applications I write are different on FreeBSD compared to Linux. One pain point I recently struggled with was RocksDB with Rust, data got corrupted.. But the same code works great with Linux.
I really like FreeBSD, but I do not have time for it anymore. I really think FreeBSD is important, and I appriciate all the great work. But it needs to help me save my time.
I think spending effort and money on getting it to run better on laptops will not help adaptation. We have macs, which are a lot better than anything else at the moment. Even Linux on a laptop is a painful experience.
FreeBSD upgrade and packaging will change a lot in 15.0.
Currently - up to 14.x - the freebsd-update(8) command is used for upgrades - and yes - it can require manual intervention - but one can also use it in unattended mode like that:
But the FreeBSD 15.x will use PKGBASE concept [1] and [2] and parts of the system will be 'just' pkg(8) packages and also maintained by pkg(8) - so FreeBSD Base System upgrades will be just pkg(8) commands - just like now with non system packages.
Agreed. I used to run FreeBSD as a desktop OS way back when (early 2000s), but there's really no reason other than cachet to use it instead of Linux. It is a nicely coherent system with good documentation, but it also has its share of bonkers idiosyncrasies (e.g. root and other users having a different shell by default, and both of these defaults being awful).
For what it's worth, the default root shell is now /bin/sh instead of csh. I think that's true as of 14.0. /bin/sh is also a better interactive shell than it used to be, though yeah, I don't use it to do anything other than install my preferred shell.
Right, but isn't the default non-root shell still tcsh? Zsh and ksh are both under BSD(-compatible) licenses, and it would be a huge usability upgrade if they could just set one of those as the default shell for everyone.
My family have a secret holiday destination. It has unspoiled beaches,
friendly locals, cheap beer, amazing restaurants. When people ask
where we went for summer we lie. "Oh we went to Ibiza again". Some
things are best kept for yourself, not to be popular. We don't want
"those sorts" dragging the whole show down to the lowest common
denominator.
So listen to the parent poster, and trust me, BSD is a piece of
crap. It barely works. the documentation sucks. And it definitely is
no use for servers, desktops, laptops or embedded systems.
Go where the crowds are! Linux has something for everyone, with over 8
million lines of code in the kernel! You never know, you might even
meet a celebrity like Lennart Poettering hanging around your hotel.
Yeah, that’s just, like, your opinion, man. For me, FreeBSD is rock-solid server and workstation OS. Documentation is very good, the Handbook is great, and most of the time the manual pages is all that you need. The ports collection is large and it’s not very hard to package your own software as a port. The OS is predictable and this is something I value highly.
>like Lennart Poettering hanging around your hotel.
Yeah or Ricard ask you to clean he's feet at the pool.
And absolutely with you, please Linux user don't try FreeBSD it's terrible, no device drivers, no docker and ZERO Linux compatibility, and as Linus himself said: ZFS is really not that special. Dear Fedoras and Arch-Fellas, just don't touch it ;)
I think that a major problem is that you can't legally force vendors to open source the drivers they distribute. Most importantly wifi drivers which are critical to making an operating system that people can actually use.
Isn't Android plagued by all manner of proprietary dependencies for hardware support?
I don't understand all of the pressures on vendors in the Linux case, but at least one of them is that they can't upstream their drivers (and thus unload some of their maintenance burden on the Linux kernel team) unless they license them in a way that's considered suitable by upstream. If they don't do that, they're more likely to be broken by Linux changes, and it makes distributing their drivers more annoying because they have to do that on their own. I also vaguely recall that there are some other ways that proprietary drivers have more limited access to the Linux kernel, of access more liable to get broken by upstream, but idrk.
But isn't the biggest incentive for releasing your drivers as F/OSS (so you can upstream, making maintenance easier) still there in the FreeBSD case?
having no drivers and having drivers that no longer work because the source isn't available and the maintainers can't update them is functionality identical.
It's a tautology that only open-source drivers will be part of the codebase of an open-source OS.
It's also more or less a given that first-party code will be better-integrated into an OS than third-party code is. That was a prevailing element of the discourse surrounding the outage CrowdStrike induced on Windows weeks ago, for instance. That's not a proposition unique to open-source operating systems. Indeed, what is unique to open-source is that is possible for outside vendors (or individuals) to put their code through a process that eventually gets it that maximal level of integration.
Forcing hardware vendor to disclose all information necessary to build drivers is something that is perfectly plausible to enact for example in the frame of a right to repair/maintain the hardware customers buy.
Note that it doesn’t need to be forcing to open source the vendor own implementation of any driver.
Yes, this is very plausible considering laws are in the making that forbid bricking of a device by stopping software support or remotely disabling it etc. Seems the only way to fix that is providing enough info to maintain yourself.
> you can't legally force vendors to open source the drivers they distribute
You can't, no, but that is looking at the wrong end of the problem.
What you can do is say, "we are the government of $X and we buy $Y billion of $currency of equipment per year, every year, and we will only buy from vendors who make all their drivers and firmware FOSS."
Then vendors will fall over one another in their haste to get a slice of that pie.
This is how we got desktop power management: the US Gov't Energy Star initiative.
This is why A/UX happened and how Apple got into UNIX: the US Army required POSIX as a condition of purchase.
Many organisations build FreeBSD firewalls. I don’t know how it’s now, but for example the Swedish armed forces were using a software called Färist which was based on FreeBSD. I helped set it up during an exercise when I was a wee conscript.
Microsoft triumphed back than because it try to conquer students, desktops, old big-iron Unix players fall because they ignore it, so the move is logic but the main issue for FreeBSD are not much laptop/wifi but mere modern iron generic support and power management just for the hw, for the software the issue is that maintaining a FreeBSD desktop means more work to keep the system up to date than Arch.
Since they have no license issues they should focused on:
- zfs crypto root (native or geli, does not matter) by default, supported in the installer;
- boot environments support with zfs clones, as normal way to update the system;
- zfs integrated jails for software development (like IllumOS zones) focused on exposing a controlled set of package in a local cloned FHS to offer the equivalent of NixOS/Guix shell;
- easy creation of custom images, as easy as NixOS;
- curated minimalistic desktop offer (Emacs/EXWM, i3 or another tiling WM, fluxbox with ALL relevant modern desktop stuff (like dunst already there for notifications, udiskie for manage removable storage, a nice network manager GUI of some kind, ...) and a good XFCE setup by default. There is no need for more, but there is a big need of sane defaults and meta-packages selections.
These would be the real "basic stuff we need to succeed" like the SUN OpenSolaris Indiana move back then, ditching from the old SXDE/SXCE model for a modern FLOSS familiar one, but with the best tools GNU/Linux do not have.
I could be alone in this, but I think getting containers (OCI, Docker) running on FreeBSD seems like a better direction - I totally get that Docker is a Linux kernel thing but the idea of a file system with layers, registries etc could be a thing right?
I love FreeBSD but cannot really use it in a production environment until I can deploy containers on it as that is pretty much the defacto for our workflow.
Hi! You may be pleased to hear that this is an active area of development, in fact there is currently a testing project for Podman on FreeBSD, you can find out more here https://github.com/oci-playground/freebsd-podman-testing
It would, however, be immensely useful to complete the work to run containerd with OCI images on top of jails, to the point that it's just a `pkg install`.
Can / does asterisk-BSD share many hardware drivers with Linux? IMHO that's the only way asterisk-BSD is to have any hope of catching up in the laptop space.
$750000 seems very little amount for this task. I think they should somehow attract companies to invest in FreeBSD development.
Apart from laptop support, FreeBSD is missing important things on server side suck as lack of support for Kubernetes. This is hindering FreeBSD adoption, too.
Jails are akin to containers, not kubernetes. The value of k8s over just docker or whatever container runtime is in the lifecycle management, service mesh, scaling, monitoring, etc.
Even without Kubernetes this kinda was indicative of the FreeBSD community missing the point, jails are neat but docker added a lot of ease of use above the how you basically managed jails manually (at least according to official instructions), people just kept mentioning that the capability had been there but missed that the ease of use was what charmed developers.
Also hurting it was that the Docker story on FreeBSD is had attempts to make it "native", through the Linux emulation layer with ZFS native functionality to handle the VFS parts and while that could have been elegant it required cutting edge and afaik never got really production ready (There's apparently docker port now via VirtualBox).
I actually think the structure of BSD projects could be better suited to building laptop support than something more fragmentary like Linux. It doesn't have the same resources, but it can wield those resources in a more concerted manner to support specific models very well, in a way that the structure of the Linux project doesn't facilitate nearly so well.
Could be interesting if handled well.
reply