The DevDiscuss Podcast is coming back for a new season soon! As you might recall, we like to feature the actual voices from our community!
We'd love to know your responses to the following question for an episode we have in the works:
“If you've tried Linux and opted against using it, why is that?”
You can answer the question above by:
Calling our Google Voice at +1 (929)500-1513 and leave a message 📞
Sending a voice memo to pod@dev.to 🎙
OR, leaving a comment here 🗣
Your answer might be included in the episode 😉
Please send in your thoughts by Wednesday, January 27th at Midnight, ET (9 PM PT, 5 AM UTC)
P.S. Catch up on past episodes of DevDiscuss here
Top comments (36)
I used Linux on my primary laptop for quite some time, but to be really honest, using something like windows or macos suits me better because:
Inconsistent Theming
Whenever I apply a GTK or QT theme of my choice, some applications' visual elements break. A common example is Firefox, where the URL in the address bar sometimes has so low contrast that it becomes practically unusable. Also when I apply a theme, some applications remain unchanged, reminding me of the 90s windows look. This particularly happens on i3wm of similar window managers with QT applications. Sure this could be solved but this brings me to my 2nd point
Overwhelming amount of dials to play with
Sure customization is nice, but having a unified interface to tweak the same is better in my opinion. I don't exactly want to have 2 applications just to apply my GTK and QT themes, and another 2 to tweak my display and trackpad settings. A full blown desktop environment like GNOME with its settings application might solve this, but due to the theming inconsistencies, I find myself having another application to manage theming for applications that are not GTK
Flaky driver support
Usually everything works just fine out of the box, but this was not the case for my trackpad and my laptop's built in fingerprint scanner. The trackpad couldn't recognize multi finger gestures, so I found myself using the weird edge scroll function. No matter what I tried, I could not get it to work. Same for my fingerprint scanner, it showed in
lsusb
, but I couldn't get it to workNo secure boot
No application sandboxing
Coming from MacOS, which sandboxes all the apps, having raw access to the X11 socket was a huge security risk in my opinion. While this could be solved by using a newer display technology such as Wayland, most of the applications don't work with Wayland and fallback to XWayland which is no better than running a X11 server. While firejail might promise to solve this, it comes with a set of its on vulnerabilities as shown here and here
Easy root access
Being in sudoers is as good as being root. The following script could be injected into the path using
.bashrc
or similarThis script could easily get the user password and send it to some malicious party. And as apps can access your home directory,
.bashrc
could be used for more sophisticated attacksHey there, so I was looking through your reasons to make sure how much of them have truth, and how many of them are based on things you may not have heard or known of.
A note: I have very limited experience with MacOS so I will be approaching this from Linux and Windows 7, 8, 10 comparisons.
In short order here are the things that I found totally valid in your criticisms of Linux and with no easy fix:
Next, things that were found inaccurate or mostly subjective based are listed below:
You have many good points, I just wished to provide an alternative view as someone who bounces between both Windows and Linux on the regular. Both systems have their issues, and much of the problems with any operating system is how high a priority as a target audience for providers, and how biased others will be as it is a fairly popular system for developers that people will target with passionate opinions that the reader will have to sift through and will vary based on each person's experience. Thanks!
How would your example script be any different on MacOS vs Linux? Macs still use a sudoers file.
But macos has a different sudo prompt, and along with TouchID for sudo, it is really easy to spot such things. Also apps have to ask for permission for home folder access, making it difficult to inject it via bashrc or similar
Yes, it has a prompt that reads
Password:
instead of[sudo] password for {user}:
. It also runs zsh by default, but that doesn't matter, if you're going to have access to write to someone's home directory and also know how to script, it's just a matter of making it conditional, something like this:Well yes, but applications need explicit permission to access the home directory in MacOS, reducing the attack surface by a lot
On a Mac and a Debian box right now, and I can read other people's home directories but not write to them on both systems. I'm not sure what the difference is. If you're saying that some random GUI app that's a trojan has a better chance of writing to someone else's home directory on one system, then ok - I mean I don't really know how that would work, but I'll assume you're right for the sake of this thread.
What you were saying before about the difference in prompts somehow making one more secure than the other doesn't make sense to me though, and it looks like you're moving the goalposts a little.
Different systems will share some vulnerabilities and also have their own separate ones. MacOS is pitched as mostly being for single-user systems where you need physical access to do a lot of damage, where Linux is more likely to be multi-user from the get-go. Both approaches make compromises. There are root escalation vulnerabilities on both we haven't even heard of yet, I'm sure - but it's not as easy as "this script gets you root on Linux, MacOS is secure".
I might be wrong, but I meant writing to the logged in user's home directory. With a normally configured Linux box, applications could write to the same user's home directory without asking for explicit permissions, while with MacOS, this is not the case. MacOS asks for "Documents" permission before allowing an application to write in the home directory making the attack surface much less. I guess you could do some hardening to mitigate this
Maybe. I don't remember seeing that, but if it's the case, then if this is something bundled with a GUI app, people are probably just going to click "sure, ok" and if it's a CLI app, I doubt they'd get that prompt.
I currently don’t use Linux for desktop because...
Just to be clear I don’t hate desktop Linux. I just prefer my Macbook Pro as my daily driver.
If we’re talking about servers I use Linux all the time. For servers I prefer Ubuntu.
Distros I have tried...
Not trying to step on the toes of the podcast, but your first set of bullet points about the Macbook Pro -
Just to clarify a couple things.
"Macbook Pros have bezels - I mean, I'm using a 2020 one now and can clearly see about 1cm on each vertical and 1.5cm on the horizontals."
The 2020 MacBook Pro 16 inch has hardly any bezels. That's what I want looks amazing. Some bezels is ok but I just want a larger screen size and don't want wasted space.
"The majority of laptops don't have numpads"
I was actually looking at System76 laptops the other day because I really like PopOS but they all have numpads... Dell XPS are nice but I don't like Dell.
system76.com/laptops/gazelle
"The majority of laptops come with a higher than 1080p resolution"
Last time I was in the market for a Linux laptop all I could find is 1920x1080p displays. (This was a year ago so might be better this year) I wanted to buy a QLED display but heard they don't work good on Linux.
"probably about 20% of them (I guess) are 16x10"
I know the newer laptops this year are 16x10 I just don't want a 16x9 laptop I like the extra vertical space.
"You can install Linux on a Macbook Pro if it's all about the hardware"
You certainly can but doesn't mean it's going to work right.. I had an older laptop one time (maybe 5 years old) I got rid of Windows and put Linux on it (Ubuntu) and constantly ran into weird issues. So I bought a laptop that supported Linux. I bought the Dell XPS 13 (2019) the experience was completely different (In a good way).
If you installed Linux on a Macbook Pro would multitouch work? That would be interesting to know.
I'm not sure. I know I have a magic touchpad here that doesn't work properly on Windows or Arch beyond using two-finger scrolling. I never looked into it deeply because I find them uncomfortable to use compared to a mouse or keyboard.
On my Macbook Pro I use multitouch gesters all the time to switch workspaces. Three finger swipe left or right to switch workspaces. Three finger swipe up to see all the applications open on the current desktop. If I can get this feature on Linux then I would consider looking into switching.
Linux on the desktop isn't where it needs to be to be usable for me. Media playback is a royal headache, there's not anywhere near enough agreement on foundational matters, such as how to configure the kernel, let alone things like the desktop; support for super-high resolution monitors is still not where it needs to be; and some things have been allowed to proliferate well beyond what is realistic to maintain. Nobody wants to take the metaphorical bull by the horns and reduce the chaos. Sure, all the new ideas are great, but if nobody's maintaining them enough to achieve critical mass with any of them... is it even worth doing?
That being said, the command-line environment only has the proliferation of package managers and kernel configurations, something MUCH easier to deal with, and I can wholeheartedly recommend using. There are some incredibly powerful tools out there...
What do you mean by "there's not anywhere near enough agreement on foundational matters, such as how to configure the kernel, let alone things like the desktop"?
I configure my kernel based on my requirements and liking, the same applies for my desktop. If you feel uncomfortable take .config file from some major distro vendor like Ubuntu or Arch, you won't miss anything.
I'm currently running Sabayon Linux (Gentoo based distro) on 4k 144 PPI LED panel with KDE and it's perfect. Fonts are sharp, sizing is right. I'm running Radeon 5600XT with open source driver (mesa 21.0) playing Dota2 at 4k with 160 FPS. Video and Audio playback cannot be compared to Windows or MacOS. Everything is smooth with low latency and there's free (open-source) equalizer/effects panel called pulseeffects that has no match in either Windows or MacOs, even if I'm willing to pay for commercial product.
I was missing Visual Stido for a while but Rider got so much better that I haven't rebooted to Windows for several months now.
Clearly your idea of a Linux user differs from mine... I never configure the kernel, or even the loaded modules. I am coming from a standpoint of a Mac or Windows user here.
Windows and Mac users configure the kernel and load/unload modules (drivers in Windows world) all the time. It's just hidden behind dull graphical interfaces that are only capable of telling you "Oops, something went wrong during the installation. Please reboot and try again." in case there is a problem that can be fixed easily.
In Linux in almost all cases you don't even need to reboot to fix problems. Windows and MacOS just doesn't care to involve the user in understanding them because it looks like their fault. It's just a stupid PR trick to fault your computer needs rebooting and it has nothing to do with the OS.
There are tons of Linux OS distros that "just work" out of the box just like Windows and Linux. If they don't, it's in 99% cases a driver issue which can be attributed to ignorant vendors refusing to release API and documentation to build open-source driver. Linux kernel has tens of thousands of different drivers Windows and MacOS can only dream about to have. If you miss yours it's not linux kernel's fault since there was hundreds of thousands of volunteers that built drivers for your hardware before and they are probably waiting for your stupid vendor to release some information so they can build that much needed driver for your hardware so people can stop ranting about "stupid Linux does not suppor my sound/graphics/bluetooth/wifi card!"
Ah, I meant settings for compiling the kernel, rather than the sense you referred to. Silly language getting in the way.
The only thing I'm missing from Windows is Docker, the performance is quite noticable
Docker Desktop for windows has a WSL2 backend :)
Actually, VS Code is available on Linux, and is officially supported! See here: code.visualstudio.com/docs/setup/l...
Straight to the point:
Also, I can have all my favourite software in one place with WSL, which is sweet.
And Windows is easier to manage.
But the biggest fact is that, though I like customisability, I don't want too much of it, as it ends up being a distraction. More like what Dobby the House Elf in Harry Potter said:
Well, that's all from me...
I still use linux and very much appreciate the ease it provides for developers to setup their projects and get going but.....
I have tried various flavours like manjaro, ubuntu, mint, parrot, kali, zorin and each of them consumes more battery power even on low usage which is a hassle because you have to keep the battery in charging state as won't last more than 3-4 hrs. (i7 am talking abt windows 10 vs linux)
secondly I also do gaming and photo editing which isn't possible on Linux for some many games and softwares. adobe photoshop isn't available on Linux and most games don't provide a linux version .
with so many tuning parameters you can easily lead to something disastrous
I really do like working on a linux machine, but haven't done so in about two years.
I usually go for Ubuntu for work machines and Arch for private tinker machines.
I've used Linux since 90's, I really feel comfortable working on it. I actually use Manjaro KDE edition, and I don't like get in trouble following Youtube videos about theme customization nor geeky Desktop Environments (DE) like i3 and others. For every task I can't accomplish in Linux, I use Virtual Machines (VM) with Windows, Android or whatever Operative System (OS) I need.
Well it depends per distro, but driver support for graphics cards (See Nvidia) and having different size monitors really screwed me over big time.
In windows everything just works out of the box. No debugging required.
And for the occasional game, you can play most games well. But that requires extra work to.
And most software they use in school are mostly not on Linux, so Windows and Apple only. That's a big bummer too.
Let's be honest. With ATI/AMD graphics cards multi-monitor, HiDPI setup, scaling, compositing, desktop effects work all just great out of the box.
Who do you think fault it is? No wonder Linus shows middle finger to those companies...
Re: People having a hard-time finding MacBook Pro -esque hardware to run Linux on. I've got a suggestion - the Huawei Matebook X Pro
I've been running Arch on a Huawei Matebook X Pro for about a year or two now and man do I love this laptop.
I have the 2018 version - but its got many things going for it:
It is not cheap, I paid ~1.800 EUR for mine back then, but I still recommend it to anyone I can nowadays.