And stuff like this is why I've never stuck with FreeBSD when I've tried it. I screw around with debugging issues all day at work. Why would I want to try to figure out why something as fundamental as wifi isn't working in my spare time?
And stuff like this is why I've never stuck with FreeBSD when I've tried it. I screw around with debugging issues all day at work. Why would I want to try to figure out why something as fundamental as wifi isn't working in my spare time?
Yes, if you absolutely need 802.11ac wifi in particular, FreeBSD isn't a great choice. But many modern 802.11n NICs (and 802.11ac NICs, in 802.11n mode) "just work" out of the box, including the 'iwm' devices mentioned in the article, on more recent versions of FreeBSD.
FreeBSD 12.0 dates to 2018 — this is like installing Fedora 29 in 2020.
Why in the world would it lack support for one of the most ubiquitous, not to mention fastest, wireless standards? I mean, it’s been out since 2013.
Boots up immediatley, no annoying MacOS updates or having to install XCode while having multiple versions of core unix packages, because it pre-installs a bunch of out-of-date ones you replace immediately with brew. This causes problems, especially for newbies new to working with terminals, as it falls back onto the old ones when stuff isn't linked or set up properly.
Nothing beats having a clean minimal /usr directory with only the stuff you decide to install and extremely fast startups with good battery use.
I get Macbooks for work but use a Linux one on the side (which I used for 5+ yrs when I was working freelance) and I plan to convince my boss to let me get a thinkpad or dell for the next laptop update.
Incidentally I ran all of those distros on a T430... which still works fine when I boot it up. Thinkpads are great linux machines, and just great easily repairable machines in general.
The way I see it, a system is a stack: that is you put a number of layers on top of each other.
The kernel is a layer at the very bottom, on top of which you stack a distribution. This distribution is managed through a package manager. On top of this distribution you could stack a user package manager.
In this view, you cannot compare apt or yum to home brew, they don’t belong to the same layer.
If you think about it, that makes sense. User package managers have to rely on the underlying layer to provide tools for e.g. compiling user packages.
Now I agree that in real life, the limit between layers can be more blurry:
- system package managers distribute end users softwares. Because most desktops are single user so having an extra layer is often not necessary.
- some system package managers are re-purposed to be stacked as user package managers. E.g. you can use gentoo prefix.
Still, to have a clear picture in mind the layers should be considered.
That being said, there are a bunch of user package managers you can also use on Linux. Have a look at spack for instance. I think the nix package manager can be used like that also.
Not all. Nix and guix allow you to install packages into your own profile as an unprivileged user. Best of all, packages that are installed by multiple users are shared in the Nix store.
The sole case that leaves are cases in which your company doesn't allow you the necessary privileges to install software which is an organizational challenge not a technical one.
That said something like nix can allow you to install software per user.
Our wifi support isn't 100% and this is a weakness. I believe that desktop usability is a large part of why Linux is as successful as it is today, and the modern laptop is so similar to the modern server that it's a bit of a moot distinction.
I have FreeBSD running on my home desktop workstation and everything is working fine, but I wouldn't try to install it on my laptop. Laptop hardware is just too variable and non-standard. Touchscreens, esoteric Wi-Fi chipsets, fingerprint readers, brightness controls, bluetooth, power management, suspend on lid close... I'd be quite surprised if FreeBSD supported all of this out of the box, so I stick with Ubuntu.
As far as laptops, it all tends to be a bit specific to the model. There aren't too many different wifi chipsets these days; bluetooth is pretty simple from the software side of things. Power management and lid suspend work on most systems (as they say, resume is the hard part). Brightness controls should also work well. I don't know about fingerprint readers. Recently we landed Thinkpad PrivacyGuard support from software, for example. It's not particularly significant in isolation, just as an example of random modern laptop features that might exist in only a handful of models, which we still try to support in FreeBSD.
I do. I think you misread the comment you replied to in an uncharitable way if you arrived at the conclusion that your subsequent reply was responsive.
> Nobody can give 100% of the context needed to satisfy everyone that might be reading it.
That was never the criticism. Your response is a non sequitur.
Our resume support is hit or miss, to be completely fair. I don't even try to use it myself due to bad experiences in the early days with Linux in 2000's and lack of need. Shutdown and startup is fast enough for my travel laptop that I don't care; and my workstation I never turn off. But I recognize a lot of people do really care about suspend/resume, and it works for some people but not everyone.
https://wiki.freebsd.org/Laptops#T-Z
And for the T470s in particular (yes, it's somewhat sparse, and the links suggest a non-ideal amount of effort required, but purportedly it seems to work at the end): https://wiki.freebsd.org/Laptops/Thinkpad_T470s
I've recently tried NixOS and I'm impressed. Have you considered adopting Nix into FreeBSD?
I don't know anything about Nix. So the short but perhaps unsatisfying answer is that I have not considered adopting Nix.
Binary drivers executing on the CPU are a no-go for me. OTOH, I consider device firmware blobs user(OS)-loaded on power-on to be strictly safer than a stored blob, though less convenient in some ways.
Devices these days have firmware, usually on flash-able storage, as they don't make it right the first time. Would you rather have a wifi chipset, that can be permanently infected after an exploit / evil-maid / malware on PC, or one that can equally be exploited, but is as clean as ever after a power cycle, because the OS needs to load firmware every time?
http://lkml.iu.edu/hypermail/linux/kernel/1808.0/04276.html
I know, because I've immediately bought an usb wifi dongle for my desktop with this chipset. (and it is working perfectly OOB with every linux kernel for me since then).
Look how far we've come. Linux was the alternative OS just ~15 years ago. Now it's one of the mainstream OSes.
TBH, I'd like to see one of the BSDs to become one of the mainstream OSes too. :)
edit: Except macOS ofc. :)
For userspace what matters is ART, ISO C, ISO C++ and Android NDK APIs.
But other than having more claim to the UNIX title than Linux and having some BSD userland, it's really not technically a BSD at all. I'll grant you it's arguably a distant descendant of BSD under the surface or in your shell.
It's cool that the Mac community used some BSD code way back when — that's why we use a permissive license — but they've forked whatever they took; they never work to integrate their changes back upstream. To the extent that they're a BSD, they're a very very divergent fork of a historical BSD. And that's fine, for them. I don't know if that makes them a BSD or not in some ontological sense.
This is why I personally force GPLv3 licenses in my own projects, even if it's fairly small.
MIT is a beautiful license but, unfortunately this happens when idealism collides head-on with private corporations.
The limited exception is Clang/LLVM, where to some extent they are the upstream.
(A clarification: I also like the MIT license, but the majority of BSD is published under the so-named BSD license, with some number of other clauses. You might already know that, and if so, sorry for repeating the explanation; I wasn't sure from your comment. They're both permissive, but not identical licenses.)
Some old people keep talking about the crazy idea of owning computers and installing OSes.
IIRC, they recently discontinued the link and related data sharing though.
...on servers. It's still far, far from "mainstream" for desktops.
Still, that's a really big deal. I work for what is firmly a Microsoft shop, and nobody bat's an eyelid now if we use Linux VMs (as long as they're cloud-based).
I think 3 things in particular have driven the rise of Linux as a mainstream server OS:
1. docker/containerisation. Sure, Windows containers exist, but have you ever seen one in the wild?
2. The shift to the cloud, in conjunction with (3)
3. The rise of DevOps, in tandem with (2)
I have. What is done on .NET stays on Windows, for UNIX like OSes we get to use Java.
Yes there is .NET Core, it is the future, not all MS shops are buying into it due to the current limitations, waiting to see how .NET 5 will actually look like.
I'm also very surprised you'd claim that not all Microsoft shops are buying into dotnet core - I've seen the very opposite; every client I've worked with has known dotnet framework has been superceded by core, and has been eager to move. A decent portion of this is driven by certain containerisation, which (realistically) means dotnet on Linux.
The only real limitation with dotnet core has been the lack of managed C++ support - a niche use case, and only relevant on Windows, but even this has been resolved in dotnet core 3.1.
Considering the not insubstantial performance improvements in dotnet core, and of course the benefit of cross-platform code, I'm really interested to hear about the limitations of dotnet core you've found (the switch for me and all the enterprise clients I've worked with has been great)?
The kind of enterprises where deployments on IIS, with AD infrastructure on premises, Windows on all company layers are still the name of the game, with some Linux servers for running SAP and a couple of other Java based services.
What is missing from .NET Core 3.1?
Besides what I have listed above, EF 6 on Core doesn't support the Visual Studio graphical tooling nor the EF 6 .NET Framework EF providers, WPF/Forms designers are still WIP and have issues with commercial component libraries, WCF well, no one is looking forward to rewrite their working code with gRPC.
And many are still a little burned with Silverlight and how the whole WinRT, UAP, UWP story went.
Back in the .NET Code 2.0 days, I had a project to rewrite a .NET Application into Java, because the customer in question saw a better business value in doing so than investing in .NET Core. Mainly because .NET Core didn't had support for some critical libraries being used in the .NET Application, while the libraries vendor did support a Java counterpart for them.
Yes, they will eventually move to .NET Core, when it makes business sense to allocate budget to do so.
That is just my experience, others will vary.
Desktops themselves are far from mainstream! The vast majority must be owned by gamers and video editors; both groups use predominantly non-Linux for reasons mostly unrelated to support that is or isn't in the kernel.
(and macOS can't really be called a BSD derivative; it is a mostly different OS that has taken some of its code from FreeBSD)
Some people are motivated by the allure of fringe projects. There's usually a lot of exploration and learning involved with those projects, which can be very rewarding. Not to mention you gain a deeper appreciation for the unbelievable amount of work that goes into the projects.
If I gave you a new Mac or PC, you could spend hours "screwing around" with it tweaking and customizing it, Linux even more so. If you absolutely need 802.11ac, then FreeBSD is not the right OS for T480s. But how many people actually require that speed?
Don't forget this, which translated means suspend/resume doesn't work.
FWIW, suspend/resume is probably the worst, fiddliest thing about free OSs on a laptop.
Sadly I agree.
My requirements for a laptop are:
1. Working suspend resume
2. Good touch pad with working palm rejection
3. Good battery life
Sadly the only laptop that meets these requirements to my satisfaction is my macbook.
For you.
I don't mind TrackPoint on thinkpads at all. In fact I would probably prefer that usually.
Everybody's got different tastes. It's not a problem.
For example the trackpoint on my T70 actually drifts backwards in the opposite direction after you let go, and this is typical for trackpoints in my experience. It's just not a very good pointing device.
I don't recall having to jump through hoops when I originally setup the machine about 3 years ago.
I have Linux on the three machines I use. But on each it's via a VM. I run Windows and MacOS on the machines. Where I work this is common as well. It's surely pretty prevalent. The other way a lot of people work on Linux where I work is on a VM on AWS.
I'm typing this from an Arch instance running in VMWare Fusion on a macOS host. It's a bit annoying though -- the trackpad is emulated as a scroll wheel, making everything janky, and I can't use my host's full 32gb of RAM...
I almost never do anything but run VMWare on the host -- the only reason I haven't given back my MBP and asked work to buy me a Linux machine is because I'm waiting for the 32gb Dell XPS 13 to come out, supposedly sometime this month.
I don't have experience with Darwin; maybe the experience is better there.
That being said, I am very unhappy with windows 10 at work, and would much rather have some older windows version. At some point windows probably will become shitty enough that linux might seem like a viable alternative.
NVidia, closed blob - no way to fix, contact support
> audio doesn't work without stuttering,
can't remember problems with audio last 5 years.
Lots of work places are Windows / Office effectively only. Many places have a SOE that is windows only. At home I play games sometimes. Again, that drives Windows.
Also drivers, power issues and various other issues still crop up on Linux more than Windows or MacOS.
Also, working on a VM is nice in a way because it means if it gets stuffed up, just start again quickly.
The mere fact that you’re running a computer with *nix, and you get to tell everyone about it, outweighs the fact that 50% of your day is spent figuring out how to get common tasks working on it.
Would love to read a piece akin to “I’ve been running Ubuntu on a ThinkPad for two years without issue” which is a standard the other main OSes have established
Theoretically 802.11a is the same speed as 802.11g, but in practice it drops off super quickly and means a “simple” page (like gmail/outlook) is loading in 30s-1m.
Not sure if that was a factor or just that being less popular there was less investment to make it "better".
I don't think I ever saw a card supporting 802.11a exclusively, it was part of a chip supporting multiple standards. And then you would always use 802.11g.
This ignores the historical fact that 802.11a cards predate 802.11g by multiple years - A-only cards were available in 2001 when the initial draft of the G standard was announced.
802.11g was still a draft. There were serious issues to use cards from different vendors to talk to each other, and 802.11b cards were common.
Anyway, 802.11a frequency didn't play well with walls (or other solids), added to the shorter range compared with 802.11b (and g), in 2003 b was king and g was introduced early because of the higher speed.
Nope, that never happened to me. I use 802.11a for the same reason as OP (Intel card on FreeBSD plus a 5GHz only network), an iperf3 test reports a perfectly stable 22.2 mbit/s. More than enough for surfing, in fact Tor limits the bandwidth more than this Wi-Fi :)
I tried it again more recently, and was very pleasantly surprised - it's not as fast at the web, but at least for web pages (as opposed to downloading files) the difference was much less noticeable.