I had been a long time Windows user, at home (W10) and work(7/Server/Datacenter). Windows had been getting just more and more intrusive like a malware since the last couple years. I hope they do something to stop that.
I have recently moved to Fedora and it is just awesome. Pretty much everything works like amazing. Its not a complete replacement if you are gaming, nvidia drivers are a bit painful to install but everything else just works. Its been stable even after an update to Fedora 24->25. I am so amazed at how far linux has come. I am so satisfied with it that i am not moving back to Windows for home usage.
I hope Microsoft stops with auto-update, otherwise the alternatives are also catching up fast if you are not a gamer.
"Everything just works" so long as your expectations around "everything" are essentially set by a desktop computer experience designed in 2005.
Linux on desktops is fine (except from a physical security standpoint), but primitive in terms of UX. And it's still dependent on Mozilla or Google for its browsing experience.
And if you want a portable computer (which by the way are demonstrably more secure in the face of physical tampering) you basically relegate yourself to terrible battery life, poor display support, dicey sleep support, and the fixes for these often compromise performance.
I really wish Linux users would stop softballing their desktop vendors and kernel maintainers so much. It's just not competitive!
It's not primitive in terms of UX. You just need to spend more time configuring it. Some will argue that that means it's primitive, but I don't think so.
The point about portable computers is also false. You just need to pick a machine with hardware manufactured by friendly vendors who help write drivers. Why would you want to support anyone else?
Battery life? My x230 with tpm installed gets 6 hours of battery life on the stock battery.
Display support? I'm using a 2560x1440 monitor with the mini displayport on my x230 right now and have had no issues with it whatsoever. Plays Quake 3 great too, no tearing. Debian Jessie.
Sleep support?
/etc/systemd/logind.conf
HandleLidSwitch=suspend
Performance issues? My system idles at 200mb. Good luck getting macOS or Windows to do that. And to preempt the bias card, I use a Mac for work and love it to death. I think most of your points were applicable in 2005. The terrain has changed and the mainstream Linux distributions are now very stable and usable daily driver systems.
Linux is more than competitive, it's just not targeted at inexperienced users. Which is fine. Not everyone has the need or want to configure their computer to suit them. Some people just need a computer that works. That's why macOS and Windows exist.
Yup, bleeding-edge laptop support is still a toss-up, but it's getting better, IMHO!
I think that's where this sentiment often comes from: people who cut their teeth on XF86Config tweaking and compiling NVidia kernel modules from source and shopping for just the right PCMCIA wireless adapter are now amazed when a fresh Ubuntu install has working 3D-accelerated graphics, 802.11n (with GUI for configuration), Bluetooth, etc. (And yes, we have Freedesktop.org/systemd/NetworkManager and friends to thank for a lot of this.)
Maybe the bar was just really low, and you've got a strong argument if you say it shouldn't be anymore, but we are making progress...
> And if you want a portable computer (which by the way are demonstrably more secure in the face of physical tampering) you basically relegate yourself to terrible battery life, poor display support, dicey sleep support, and the fixes for these often compromise performance.
This depends a lot on how well supported your hardware is. I run Linux Mint (MATE) on a Thinkpad T430 and have had 0 issues with displays, sleep, battery life, you name it.
"And it's still dependent on Mozilla or Google for its browsing experience."
Is that your way of saying that you cannot run proprietary stuff like IE or Safari and that .. is a bad thing? I don't know a single person using Edge/IE anywhere around me, so I have trouble parsing and understanding this statement.
That's a nice set of rose-coloured glasses you have there. Hey, here's something I can do on my linux desktop that I can't do on my win10 desktop: change the way it looks! Yeah, I know, primitive UX, right!?
And you're right, linux does sometimes require fiddling during installation to install drivers to make hardware work... because as we all know, windows requires no drivers at installation time! All hardware 'just works' without drivers on windows, right? And you never have to be on your toes lest your driver installer sideload some shovelware you didn't want - what a 'modern' UX experience! Yes, please, my mouse driver needs to have it's own service visible in the dock that also phones home separate to all the other items I install. How very modern!
Every desktop env has something that sucks about it, and windows has plenty (remember the clusterfuck that was 'removing the Start button'?). Similarly, if you don't like traditional desktops then there's plenty of alternatives in ^nix-land, like tiling window managers.
I agree with you, that the experience a lot of times not as efficient and that its not for laptops. I had some weird problems on 2015 Macbook pro (max config.) where the linux is not able to shutdown the system, and the whole experience requires a lot of experimenting.
Apart from the above points that you mentioned its definitely not getting you the out-fo-box working functionality that windows gives. But i think i am willing to suffer that much to have a system with more control and an OS which doesn't installs random apps without my permission like Windows 10 does[1].
Although I agree that the "out of the box" experience is still not great on linux, I would ague that it's much more competitive. Most things do work out of the box. And at the end of the day, I have full control of my machine, and the software is being pushed by a group of people who don't see me as "the product". I can't say that about Windows or Mac.
If you do any creative work, Linux is pretty much a desert. Adobe software doesn't run on Linux, capture one doesn't either, so as a photographer I have no choice but windows (cheap hardware and malware os) or OS X (hyper expensive old generation hardware with passable os).
Davinci resolve seems to have a Linux version but not enough for someone who does more than video.
Not necessarily. I've read from several who have successfully replaced Photoshop with The GIMP. (I've done this, though I still do photo work in LR). Inkscape has come a long way, and there are multiple, competing (and very competent) Lightroom replacements for digital darkroom work.
I don't know how fleshed out the DTP side of things are but as a amateur photographer and graphic designer I've been able to get away without having Adobe anything (except Lightroom) installed for the past few years at home and at work.
You will have to learn a new UI though, but I find this is easier to do than it sounds because most of the open-source software doesn't try so hard to map things to their equivalent real world process. (I found that the hardest thing about Photoshop was its terminology and workflow, which was built to be familiar to film photographers and print media people)
> If you do any creative work, Linux is pretty much a desert. Adobe software doesn't run on Linux, capture one doesn't either, so as a photographer I have no choice but windows (cheap hardware and malware os) or OS X (hyper expensive old generation hardware with passable os).
Huh? Linux is still one of top platforms for any kind of highend professional video work. Software like Lightworks, CG renderers and designers, etc. Is that not "creative" work?
Capture One may or may not work with Wine; all the tests in the database are old.
Just out of curiosity, though, as a photographer, what does Linux do better than macOS? Apart from the hardware (and my 2012 MBP works great for development and raw processing), I can't see what is compelling about Linux. I ran Linux on my Thinkpad T42 for years (Debian, Gentoo, Ubuntu), and macOS is so much nicer.
I know about this already, but the point is that end user experience for me had been getting worse than Windows7 for example (not talking about the UX here).
The fact that i have to use powershell or service control center to control the stuff is just not nice.
I think an end-user should not be forced to go to regedit to stop Microsoft to install crapware like candy-crush etc.
If you can get ahold of the Windows 10 LTSB (Long-term servicing branch) distribution, it's actually really nice. Windows without the store, the cruft, the forced updates, and the telemetry. Unfortunately I believe you need MSDN or an enterprise volume licensing deal to have access to it.
Being heavily involved in setting up standard developer workstations, I consider this to be the only practical approach.
It's way beyond any specific config item (including telemetry). This is a sure way to get to a stable and consistent configuration.
A few comments:
- It is better to split such a mega-script into a set of named scripts, so admins can mix-and-match their own configuration set.
- The configuration set scripts should be re-entrant, that is, one can run it few times in a row, achieving the same stable result. This is an important principle because those scripts evolve over time until they are are stable, so the re-entrancy enabled the re-configuration game.
- Some configuration items are system-based while other are user-account-based. This means that the latter should be invoked automatically once a new user account is created.
- VM is your friend. Wash, rinse, repeat.
- It is not always wise to replace automation (PowerShell) invocations with direct registry modifications. Tradeoffs should be obvious.
- MDT setups should avoid direct system configuration wherever possible, and rely on configuration scripts instead.
- One of the features still not possible to script is setting the policy startup/shutdown/login/logout scripts. One can provide this manually in a base workstation image.
- Esp. on Windows systems prior to Windows 10: make sure PowerShell is stable - version and module-wise.
Right. One should ensure that simply re-invoking the script will not break anything by itself. The end result between invocations may be different if scripts are modified between invocations, as getting configuration right is a tricky business.
I would also change the default policy in Windows Firewall to drop all outgoing traffic, and then enable access on application basis, and for basic things such as DNS and DHCP.
Windows 10 will still spam the DNS server for telemetry hostnames, and there seems to be nothing that you can do about that.
And really, if you can, you should switch to a better OS that doesnt require you to work against it.
I seriously doubt that Windows 10 is doing anything so grave as to require you to run some arbitrary PowerShell script you found on the Internet with elevated privileges. If you do not understand every single command in this thing, you should avoid it, and if you understand every single command in this, you don't need it.
Just to give the other point here. I do understand every line of it and agreed with most of it. I had previously hunt down a lot of those switches manually, now I have a custom fork of this script disabling the stuff that bothers me and keeping those I like. Also, its very presumptuous of you to assume no one need this. If windows welcomed choices like this before it would be a better development environment.
There's another category. Those of us who manually did this already, are annoyed we didn't write down all the steps, but are glad to find this posted here.
> you understand every single command in this, you don't need it.
Just because I understand/know how to verify them doesn't mean I can write them down myself in the same time, so no, I don't "need" it, but it is useful to have and to compare to what I'm usually doing.
Pff don't be paranoid. If there is something malicious in this script then, a) it will be fairly obvious; all this does is modify registry values, and b) someone else will probably post about it - it would be pretty big news!
Besides you clearly need to read it anyway - it does stuff that not everyone will want, like disabling the lock screen.
Edit: In fact I'd be curious if there has ever been an actual instance of `curl ... | sudo sh` being malicious. I mean it's an obvious attack vector but it's also obvious. I've never heard of anyone actually using it.
Do you understand every single line of code in Windows 10? No. Then you can't make the claim it's not doing anything grave. I'm not saying it is. I'm just saying your argument is illogical and inconsistent.
But that's my point. I don't understand every single line of code in Windows. When I run Windows, I'm deciding to trust it. If you've stopped deciding to trust it, then adding more untrusted code (code that relies heavily on undocumented registry flags and the behavior of Windows itself) is like trying to put out a fire with lighter fluid. And this script doesn't have to be malicious to be bad.
Then get Debian or Fedora. I'm serious, if the OS is doing things so bad you're willing to execute untrusted code with elevated privileges to modify the OS, you've already lost.
I tend to agree. Things like this will most likely break in the future.
They will be undone, they can cause deeper issues in the OS, and they can in some cases cause vulnerabilities.
I see this a lot with chrome. People will load it up with extensions, then blame the browser when something doesn't work.
I'm not saying don't ever use it, but remember this if you start having weird issues, or one day the changes are undone.
It doesn't mean MS is out to get you, they just don't support those who are changing undocumented internals and don't need to announce hen they change some undocumented internal registry entry.
I understand pretty much everything in here (and have manually disabled most of the things this disables in the past), but the script serves as a useful checklist and shortcut. That's it's value.
"If you do not understand every single command in this thing, you should avoid it, and if you understand every single command in this, you don't need it."
" if you understand every single command in this, you don't need it." - Oh, I don't need it, but it's kind of convenient to have a reference of them, all in one repo.
If I don't understand every single line of code and algorithm in any piece of OSS I use, do you feel as though I don't need it? Not starting a flamewar with this question, I'm genuinely curious
> If you do not understand every single command in this thing, you should avoid it, and if you understand every single command in this, you don't need it.
So... you're saying that if you do know all this stuff, then you should manually type it all in a shell window (or hunt down in a gui) on every win10 box you want to administer?
There's a difference between running a signed executable from a source you trust versus running something you don't trust. There's a difference between running code with ordinary privileges and running code with elevated privileges. The best-case scenario is signed code from a trusted source with ordinary privileges.
Safe but sometimes you have to execute it restart and execute it again for seemingly no reason but it works and won't damage anything. Run powershell as admin.
EDIT: A cursory glance of the script doesn't show anything dangerous. It may do thinks you don't want though but PowerShell's pretty decent to understand what's going on even if you don't know the commands specifically.
It doesn't have to be malicious to be dangerous, it can just be wrong. Nobody's running a test suite on these things whenever a Windows update comes down, nobody's testing them on a wide array of Windows configurations, and from the ones I've seen before, they can cause problems with your PC.
Be careful, this breaks things. I ran this when I first switched to Windows 10, and I found that it killed search in the start menu, certain control panel applets that relied on the metro framework, and somehow, VSS.
I don't consider win10 telemetry that bad. You can dial it down a lot until it's just sending crash data when thing go bad. Pretty much all OSes have this.
What I really don't like however is Microsoft pushing garbage like candy crush to my machine without my consent.
What's the problem with telemetry in general? For almost all of the important products I use I like to send usage info -- my expectation is that they're more likely to improve features that I use as a result.
And if you use a web app, e.g., Google Apps, they get all this data plus more (and completely not anonymized).
The biggest part of the problem is not being able to turn it off. I don't think most people would be bothered by the basic telemetry if this was an option for non-enterprise / education users.
That and not being able to see what it's sending out. I recently took a close look at the Privacy control panel on my iPhone. Not only does it give the option of turning off telemetry and ad data, but it also shows you exactly what is being sent back to the mothership.
That's not true. Install and run wireshark then dial all you want, there will always be traffic every other minute or so to one of Redmond's servers from just idling.
Did you actually try this or is this based on one of those articles about the open beta of Windows 10 that had a lot more telemetry you couldn't disable?
Will you consider it bad if it sends a crash of your executable with all debug info/source code in it to Microsoft? How about it you are developing a competing product to microsoft one?
The low level of telemetry you're talking about is only available in Windows 10 Enterprise (good luck finding it) or Server editions, you need to set a GPO to get it.
We shouldn't have to fight the OS, this is ridiculous.
Before moving definitively to Linux I'm considering installing a proxy on my router, bloc all ports except one and just redirect Firefox and a few apps that need connectivity to this port.
I'm not a network guy though, might be complicated.
You'll either fight it because it doesn't manage power property on your new laptop or you'll fight it because it shows bing on your start menu or sends telemetry about what apps you run.
I'm not going to argue which is "worse" but I sure prefer to switch a few reg keys to stay ahead of Microsoft, to scouring forums trying to figure out what well hidden lever I need to pull to just get the hardware working.
You'll be fighting the OS either way - I'm picking this (easy) fight.
Stuff like this is fundamentally unworkable when the people pushing software updates are your adversaries. They already do stuff like ignore DNS settings and firewall rules to send harvested data back to microsoft. They will almost certainly break anything this does in the future too...
Exactly. Windows 10 has a hard coded whitelist of IPs and donain names in the kernel mode part of the OS (it's 64bit, it's signed, you can't modify it) - those IPs and domains will be ignored from your hosts file or firewall rules. Good luck with an hardware firewall attached to your Win10 notebook. ...unrealistic, so it's wise to stay with Win7 (minus some telemetry updates). I hope Android/Fuchsia, and other desktop OS come along until 2020, or MSFT CEO gets fired and they make a 180 degree u-turn.
As someone who uses the big three desktops daily, freedom is just one facet. I also want an operating system that respects my time. None of the free operating systems out there do that.
Considering the state of Ubuntu, probably the "easiest" to use desktop out there at the moment, my freedom is second to my ability to get a working desktop.
> I'd rather struggle with some Windows warts than reverse engineer my drivers.
I'd guess that any *nix user who reverse engineer their own drivers in 2017 does so because they want to and/or have a job that pays them to do so (most likely handsomely).
For the rest of us at least mainstream Linux distros are almost as easy as Windows if not easier in some cases (until you come to MS Office, AutoCAD etc which is a whole different story, mostly unrelated to drivers IMO.)
It's no struggle; someone wrote a PowerShell script and posted it to Hacker News!
More serious answer: I do use other OSs. But I keep using Windows because I want access to the fruits of millions of man-hours spent in Redmond and elsewhere developing for the Windows platform. It's a non-trivial body of work.
Tell that to my employer! Sometimes we don't get to choose our OS, but my personal PC is running Ubuntu. This script is a treasure trove of commands that just killed off over a dozen annoying and undesirable Windows behaviours that I haven't had the time to hunt down.
No that's the only caveat. I much prefer to use scripts, as these programs are a bit of a black box. But at least they're digitally signed and recommended by the wider Windows 'powertoy' community so you're allowed to trust them.
I hope Microsoft stops with auto-update, otherwise the alternatives are also catching up fast if you are not a gamer.
Linux on desktops is fine (except from a physical security standpoint), but primitive in terms of UX. And it's still dependent on Mozilla or Google for its browsing experience.
And if you want a portable computer (which by the way are demonstrably more secure in the face of physical tampering) you basically relegate yourself to terrible battery life, poor display support, dicey sleep support, and the fixes for these often compromise performance.
I really wish Linux users would stop softballing their desktop vendors and kernel maintainers so much. It's just not competitive!
The point about portable computers is also false. You just need to pick a machine with hardware manufactured by friendly vendors who help write drivers. Why would you want to support anyone else?
Battery life? My x230 with tpm installed gets 6 hours of battery life on the stock battery.
Display support? I'm using a 2560x1440 monitor with the mini displayport on my x230 right now and have had no issues with it whatsoever. Plays Quake 3 great too, no tearing. Debian Jessie.
Sleep support?
/etc/systemd/logind.conf
HandleLidSwitch=suspend
Performance issues? My system idles at 200mb. Good luck getting macOS or Windows to do that. And to preempt the bias card, I use a Mac for work and love it to death. I think most of your points were applicable in 2005. The terrain has changed and the mainstream Linux distributions are now very stable and usable daily driver systems.
Linux is more than competitive, it's just not targeted at inexperienced users. Which is fine. Not everyone has the need or want to configure their computer to suit them. Some people just need a computer that works. That's why macOS and Windows exist.
I think that's where this sentiment often comes from: people who cut their teeth on XF86Config tweaking and compiling NVidia kernel modules from source and shopping for just the right PCMCIA wireless adapter are now amazed when a fresh Ubuntu install has working 3D-accelerated graphics, 802.11n (with GUI for configuration), Bluetooth, etc. (And yes, we have Freedesktop.org/systemd/NetworkManager and friends to thank for a lot of this.)
Maybe the bar was just really low, and you've got a strong argument if you say it shouldn't be anymore, but we are making progress...
This depends a lot on how well supported your hardware is. I run Linux Mint (MATE) on a Thinkpad T430 and have had 0 issues with displays, sleep, battery life, you name it.
Is that your way of saying that you cannot run proprietary stuff like IE or Safari and that .. is a bad thing? I don't know a single person using Edge/IE anywhere around me, so I have trouble parsing and understanding this statement.
And you're right, linux does sometimes require fiddling during installation to install drivers to make hardware work... because as we all know, windows requires no drivers at installation time! All hardware 'just works' without drivers on windows, right? And you never have to be on your toes lest your driver installer sideload some shovelware you didn't want - what a 'modern' UX experience! Yes, please, my mouse driver needs to have it's own service visible in the dock that also phones home separate to all the other items I install. How very modern!
Every desktop env has something that sucks about it, and windows has plenty (remember the clusterfuck that was 'removing the Start button'?). Similarly, if you don't like traditional desktops then there's plenty of alternatives in ^nix-land, like tiling window managers.
Apart from the above points that you mentioned its definitely not getting you the out-fo-box working functionality that windows gives. But i think i am willing to suffer that much to have a system with more control and an OS which doesn't installs random apps without my permission like Windows 10 does[1].
[1] http://winaero.com/blog/fix-windows-10-installs-apps-like-ca...
Battery on linux if perfectly fine.
Same people who love tiling window managers... you're the 1%!
Dead Comment
Davinci resolve seems to have a Linux version but not enough for someone who does more than video.
I don't know how fleshed out the DTP side of things are but as a amateur photographer and graphic designer I've been able to get away without having Adobe anything (except Lightroom) installed for the past few years at home and at work.
You will have to learn a new UI though, but I find this is easier to do than it sounds because most of the open-source software doesn't try so hard to map things to their equivalent real world process. (I found that the hardest thing about Photoshop was its terminology and workflow, which was built to be familiar to film photographers and print media people)
Huh? Linux is still one of top platforms for any kind of highend professional video work. Software like Lightworks, CG renderers and designers, etc. Is that not "creative" work?
Capture One may or may not work with Wine; all the tests in the database are old.
Just out of curiosity, though, as a photographer, what does Linux do better than macOS? Apart from the hardware (and my 2012 MBP works great for development and raw processing), I can't see what is compelling about Linux. I ran Linux on my Thinkpad T42 for years (Debian, Gentoo, Ubuntu), and macOS is so much nicer.
Photoshop is the industry standard, yes, but 'creative work' extends beyond digital design.
I know about this already, but the point is that end user experience for me had been getting worse than Windows7 for example (not talking about the UX here). The fact that i have to use powershell or service control center to control the stuff is just not nice. I think an end-user should not be forced to go to regedit to stop Microsoft to install crapware like candy-crush etc.
Why the hell anyone would want that on a server is beyond me.
A few comments:
- It is better to split such a mega-script into a set of named scripts, so admins can mix-and-match their own configuration set. - The configuration set scripts should be re-entrant, that is, one can run it few times in a row, achieving the same stable result. This is an important principle because those scripts evolve over time until they are are stable, so the re-entrancy enabled the re-configuration game.
- Some configuration items are system-based while other are user-account-based. This means that the latter should be invoked automatically once a new user account is created.
- VM is your friend. Wash, rinse, repeat.
- It is not always wise to replace automation (PowerShell) invocations with direct registry modifications. Tradeoffs should be obvious.
- MDT setups should avoid direct system configuration wherever possible, and rely on configuration scripts instead.
- One of the features still not possible to script is setting the policy startup/shutdown/login/logout scripts. One can provide this manually in a base workstation image.
- Esp. on Windows systems prior to Windows 10: make sure PowerShell is stable - version and module-wise.
I would also change the default policy in Windows Firewall to drop all outgoing traffic, and then enable access on application basis, and for basic things such as DNS and DHCP.
Windows 10 will still spam the DNS server for telemetry hostnames, and there seems to be nothing that you can do about that.
And really, if you can, you should switch to a better OS that doesnt require you to work against it.
https://www.reddit.com/r/TronScript
Just because I understand/know how to verify them doesn't mean I can write them down myself in the same time, so no, I don't "need" it, but it is useful to have and to compare to what I'm usually doing.
Besides you clearly need to read it anyway - it does stuff that not everyone will want, like disabling the lock screen.
Edit: In fact I'd be curious if there has ever been an actual instance of `curl ... | sudo sh` being malicious. I mean it's an obvious attack vector but it's also obvious. I've never heard of anyone actually using it.
They will be undone, they can cause deeper issues in the OS, and they can in some cases cause vulnerabilities.
I see this a lot with chrome. People will load it up with extensions, then blame the browser when something doesn't work.
I'm not saying don't ever use it, but remember this if you start having weird issues, or one day the changes are undone.
It doesn't mean MS is out to get you, they just don't support those who are changing undocumented internals and don't need to announce hen they change some undocumented internal registry entry.
"If you do not understand every single command in this thing, you should avoid it, and if you understand every single command in this, you don't need it."
It's so universally applicable!
Tool users, remember?
So... you're saying that if you do know all this stuff, then you should manually type it all in a shell window (or hunt down in a gui) on every win10 box you want to administer?
EDIT: A cursory glance of the script doesn't show anything dangerous. It may do thinks you don't want though but PowerShell's pretty decent to understand what's going on even if you don't know the commands specifically.
You can not check the source code of windows.
Who of those could have something to hide?
Dead Comment
What I really don't like however is Microsoft pushing garbage like candy crush to my machine without my consent.
And if you use a web app, e.g., Google Apps, they get all this data plus more (and completely not anonymized).
That and not being able to see what it's sending out. I recently took a close look at the Privacy control panel on my iPhone. Not only does it give the option of turning off telemetry and ad data, but it also shows you exactly what is being sent back to the mothership.
This is what Windows 10 needs.
A big one is that some people are on metered connections and that telemetry can cost money.
Deleted Comment
Did you actually try this or is this based on one of those articles about the open beta of Windows 10 that had a lot more telemetry you couldn't disable?
Before moving definitively to Linux I'm considering installing a proxy on my router, bloc all ports except one and just redirect Firefox and a few apps that need connectivity to this port.
I'm not a network guy though, might be complicated.
I know what you mean, but as a Linux user, I feel like I'm spending a fair amount of time fighting the OS, too..
I'm not going to argue which is "worse" but I sure prefer to switch a few reg keys to stay ahead of Microsoft, to scouring forums trying to figure out what well hidden lever I need to pull to just get the hardware working.
You'll be fighting the OS either way - I'm picking this (easy) fight.
Considering the state of Ubuntu, probably the "easiest" to use desktop out there at the moment, my freedom is second to my ability to get a working desktop.
Reminds me of this video (Free as in free time; the freedom less mentioned by free software evangelists.) by Louis Rossmann: https://www.youtube.com/watch?v=KOjCJXHJhPg
I'm not the kind of guy who would found a Free Software Foundation because of some Xerox printer drivers.
I'd guess that any *nix user who reverse engineer their own drivers in 2017 does so because they want to and/or have a job that pays them to do so (most likely handsomely).
For the rest of us at least mainstream Linux distros are almost as easy as Windows if not easier in some cases (until you come to MS Office, AutoCAD etc which is a whole different story, mostly unrelated to drivers IMO.)
More serious answer: I do use other OSs. But I keep using Windows because I want access to the fruits of millions of man-hours spent in Redmond and elsewhere developing for the Windows platform. It's a non-trivial body of work.
EDIT: ps. I know Linux has great, more or less equivalent, free or very cheap software available but I'm too lazy to learn that other software.
EDIT2: I think perhaps a lot of windows users might fall into my category.
[1] https://www.safer-networking.org/spybot-anti-beacon/