Newer generations of macbooks just won't work at all. There's no workaround for recent sound (unless it gets reverse engineered) or wifi (unless you rewrite Linux stack to work around broken firmware) devices, and it's likely to only get worse. Here's a good collection for hardware support: https://github.com/Dunedan/mbp-2016-linux
This is not representative of non-apple brands.
On the other hand, on the pre-2016 models, the components in use are largely off-the-shelf components, much like other manufacturers.
The major difference between Apple laptops and other vendors laptops is that the variation of components in use is significantly smaller on the Apple range, while 'non-apple brands' encompasses a huge variety of different hardware.
I would suspect that if you bought any random laptop, you'd have high odds of picking one that has various components that are not well supported, with even less online support available for you than if you tried it on Apple hardware. If only because the number of people using Apple hardware is so damn high, and the number of people on your particular component configuration is significantly smaller.
[1] https://fedoramagazine.org/coming-soon-fedora-on-lenovo-lapt...
I guess, but my 2007 and 2010 laptops still work OK.
It's true that Macbooks are an extreme case, but as far as I can tell, there is not a laptop which runs Linux out of the box where tinkering won't be necessary.
Let's take another extreme case: I purchased a System76 Galago Pro, which came shipped with PopOS, a Debian-based Linux distro which is maintained by System76 specifically with the intent of providing better hardware support and quality assurance testing. This is the absolute best case scenario for a Linux laptop.
Two months in, I still haven't figured out how to get my webcam working on Zoom calls, and fonts display pixelated despite having a HiDPI screen (equivalent to MacOS Retina). I had to tinker with settings to get audio to not sound muffled, and connecting to WiFi took more tries than can be attributed to network instability (I'm not sure why it started working, to be honest).
To System76's credit, this is the absolute best experience I've ever had with a Linux laptop. Everything else has worked out of the box so far. In competition with other Linux laptops, including Dell systems which come preinstalled with Linux, System76's laptops win unequivocally in my experience. This is no small achievement, and if you're getting a Linux laptop, I wouldn't hesitate to recommend them.
But competing with Windows and MacOS, I think this Linux experience is only competitive with the low-end of Windows installations (i.e. cheap netbooks where it's clear the companies didn't spend much time on getting the configuration right). A higher-end Windows laptop or any Mac laptop will require little-to-no tinkering to get things working.
It’s like I live in parallel universe of Linux hardware support to some of you.
Now the Surface Pro on the other hand, was a disastrous time sink.
Sleep and suspend just work. Battery life is good - typically 5-7 hours. Before this I had no problems with a Thinkpad and even on a MacBook Air (2012).
Maybe I'm just so used to Linux now that I don't notice problems since I've been on it since 1998-ish except for a short stint on OS X.
Dell support is terrible so I can't recommend the XPS. When I had a problem with the battery they wouldn't replace it under warranty since I was not in the country where I bought it, which is total BS.
A lot of these issues are minor, and easily fixed, so I suspect the "parallel universe" effect is indicative of a willingness to overlook small issues. The font issue I found is hardly critical, for example, and I suspect a lot of developers would just live with it.
I do make sure that the hardware is compatible with Linux beforehand. This typically involves buying prior generation hardware (which works out because you can get them for much less), and avoiding Nvidia hardware entirely.
Hp x360 requires zero fiddling, works out the box.
Dell precision 5570 requires zero fiddling, works out of the box.
Samsung Chronos 7 requires zero fiddling, works out of the box.
Every laptop in the past 6 years worked with Linux straight out the gate. Including acpi sleep, graphics acceleration, and wireless networking. Compare that to spending 8 hours last night trying to get windows 10 to run on a 7 year old system
IDK, I finally broke down and replaced my rickety ~8 year old laptop and everything (aside from the fingerprint reader) worked right out the box -- surprisingly since it is also a fairly new model so I expected some tinkering while the drivers caught up to mainline linux.
Actually...I can't remember the last time (other than Gnome being stupid with defaults) I've had to mess with a basic install and I've been using linux as my primary OS since around '00.
Very much not true these days. Linux on laptops is (in overwhelming majority) a great experience today. I suggest you just try out one of the live images for Ubuntu or Fedora.
On a tangential note I'm surprised that it's still relatively common on HN to see comments like "Linux on desktop doesn't work" or "Java is slow". That was 20 years ago. The world has moved on.
Same thing with Java. Sure, it's not as slow as it was 20 years ago, but it's still slow and painful in comparison to compiled languages.
I've used Linux actively for 30 years or more, and I've never had a "great experience" once with it. It's a tool that I have to beat into submission to get it to do whatever ridiculous workflow someone dreamed up that can't be done on a real operating system.
"The Linux kernel was conceived and created in 1991"
Something tells me your opinion about Java is stronger than your experience. Java IS a compiled language. It just happens at runtime. https://www.oracle.com/technical-resources/articles/java/arc...
I see this as yet another example of people here repeating a severely outdated statements about the JVM ecosystem.
I'm under the impression that you are not interested in educating yourself on the topic, however if I'm mistaken, have a look at some reasons why Java can be as fast or faster than c/cpp:
- TLAB (thread-local allocation buffer)
- Escape analysis
- Mono- and bi-morphic callsite optimizations
- JIT in general (dead code elimination, implicit null checks, CHA-based optimizations, etc).
Also, you don't have to use Oracle JVMs. There's IBM's J9, OpenJDK-based Zulu, or commercial JVM from Azul (Zing).
And no, the actual HFT stuff is written in C++.
This is how I know you have no idea what you're talking about.
Source: been working on low-latency HFT Java apps for shops like Goldman Sachs, Morgan Stanley, UBS and others for 10+ years.
Not going to reply any more. Not worth it.
Not worth it, indeed.
By running more-commonly-used software on more-commonly-used hardware, you're more likely to find that someone has built in the driver support you need into the OS.
I've run Ubuntu, Fedora, and Manjaro on various Thinkpads and XPSs and it's always Just Worked. I also have Ubuntu running on an old (2012?) macintosh air and that also Just Works.
It's currently running Mint and lives behind my TV as a basic media player/streaming PC. It's about as fast as you'd imagine given its age, but networking is fine, it can output 1920x1080 and stereo sound out of the HDMI port, and it does just fine with both the bluetooth keyboard and Logitech MX Master mouse (via their proprietary little USB receiver).
None of that stuff needed any weird setup or hoop-jumping. All of the tweaking I did was just UI stuff--finding a balance between performance and making it pretty/intuitive enough for others in the house to use it without headaches.
Every time I try it, I end up fixing a bunch of minor and sometimes major problems that take an amount of effort significantly higher than it would to just get things working on MacOS or Windows.
I have seen notable progress every time I try it though. In fact, my latest attempt is mostly an exception to my experience of all of the other times I've tried it.
I have only been running Linux Mint for about 3 weeks, but so far I only have two issues. One of them is significant, and the other one isn't really that big of a deal.
The significant issue is that my Gigabit Ethernet seems much slower than it was on Window when I attempt to download large files. However, my Wireless AC seems to be fine so its not the end of the world.
The minor issue is that Steam refuses to launch most games on my primary monitor the first time I open them. Even after opening and configuring the games individually, some of them still refuse to run on the correct monitor unless I set the resolution to something lower than the Monitor's native resolution. This happens both for games that are native to Linux and games that are running with Proton.
I think this time around the downsides are outweighed by the benefits of running Linux as a primary OS, so I am planning on sticking with it for a long time, but either of these issues would be a valid deal breaker for any reasonable person.
Your post seems to imply that its a myth that Linux doesn't deliver a near perfect desktop experience. If you haven't had any problems that's great. I'm sure a ton of people have no issues or almost no issues. A great desktop OS should serve all common use cases with virtually no issues that require a non-layman's level of technical knowledge to fix. Based on my experience with MacOS, Windows, and Linux, none of them are perfect, but the latter has the most work to do to meet that standard.
Well, I have used Linux as a desktop OS consistently since 22 years now. I started with Thinkpads and they did work well for me, and that's what defines my expectations today - that a laptop works without glitch. And the last two laptops I god were supplied by the respective organizations IT department, so they took care that it works.
On the other hand, I am kinda stuck with an Thinkpad X220 because I like the size, the matte display, the great keyboard, and to read my email or work on something in the train, I absolutely do not need more power than it has.
The key for all that is to buy compatible hardware, and research it before spending the money, not after.
The X220 was an amazing machine. I've had a couple of Thinkpad T series over the years and they were my favorite laptops. The keyboards were great.
I'm hoping the trend of more vendors selling Linux laptops will continue. I think there's a good chance that large companies supporting the OS will lead to a more maintenance free / a more stable experience for a wider range of use cases.
I don't dislike Linux. I simply wish it worked better for my purposes. IMO the best OS would have Windows' Mouse drivers and gaming support, MacOS early-mid 2010's Workflow/UI and touchpad drivers, and Linux's everything else. I work with all 3 major OSs on a daily basis and there are things that each of them does better than the others. Interestingly, the thing I find to be poorly implemented on all 3 is Multi-Monitor support.
I mean, I've run into all kinds of issues trying to install Windows as well, including digging through random vendors' websites looking for drivers. But most people's experience is fine, because the laptop vendor provided all of that out-of-the-box.
It isn’t. But it still has some rough edges for sure. It highly depends on the hardware you are using. MacBooks are not manufactured to make it easy for alternative OSes.
OP is also trying to use the i3 window manager. It’s barebones, labor intensive and meant for tinkerers and advanced users. If you want an easy plug and play experience you should use a desktop environment.
In this case, MBP is uncommon HW for Linux users, and things may not work that well. I imagine windows 10 would have similar problems there.
Microsoft allows resellers to use “supported by windows” marketing material on their hardware they sell only if they pass a stringent set of automated tests. So a windows hw provider wouldn’t “have similar problems here” because their consumer hardware would have been designed and tested for windows.
Microsoft set the standard in quality assurance for backwards compatibility
I can assure you it is not 1999 anymore and things are a lot smoother today when you're not trying to coax proprietary black-box appliances into doing things they were explicitely designed not to do.
You'd still have problems on other machines with things like winmodems and integrated graphics, so you'd have to get into downloading driver modules or rebuilding kernels.
If you want CentOS or Red Hat, I've had good luck picking any Ubuntu Dell that is also listed as being tested and certified for Red Hat at https://access.redhat.com/ecosystem/search/#/ecosystem/Red%2.... The only real hassle has been when I wanted to use an Nvidia driver, which requires a driver reinstall after kernel updates, although I believe you can now avoid this with DKMS. I expect that Fedora would also work without issue on any of these.
FWIW these laptops were rock solid and ran Linux just fine. Sleep also seemed to work as well(I'd have tried hibernation if I knew how. That's my preferred mode on Windows to save unnecessary power consumption).
I was quite impressed and while my personal daily needs are fully Windows-based, I would not hesitate to recommend those laptops to anyone who wants to get away from Windows.
I know I don't want to play around with my desktop just get work done and for Macbooks, its either macOS or Windows with WSL2 which the former gets out of the way and "just works" and no need for tweaking.
But 3 years ago I tried Fedora on an Asus N56VZ and it's been flawless. Well, less issues than Windows anyway. That's my definition of flawless.
I will admit it's a bit of a hardware and distro lottery though.
Macbooks have become increasingly difficult for Linux to work on, in some cases it has been made more difficult.
Just took my 7yr old laptop that wouldn't boot windows in reasonable time and installed a brand new Ubuntu to give away to a non technical person.
Had another machine, a strong one with i7 and dedicated card running windows8. Wanted to upgrade it to windows10. The installer bricked my bios. After people who actually know what they're doing reflashed my bios, the windows installation was theoretically working but it took literally 10 minutes to start up a browser. Meanwhile Linux was fine booted from pendrive. I gave it to a friend to get the disk replaced. He wiped everything clean and reinstalled and got it working.
I guess I'm biased and that's why I'm getting the opposite experience to what should happen... ;)