loading...
Cover image for 🐧 Why I switched back from Windows to Linux (Arch/Manjaro)

🐧 Why I switched back from Windows to Linux (Arch/Manjaro)

lampewebdev profile image Michael "lampe" Lazarski ・5 min read

Disclaimer: This is my Setup and how I like to work. If you like to develop on Windows or OSX then this is totally fine and as long as it keeps you productive it is the best tool for you.

My problems with Windows

Windows 10 gets better with every update. With the new Terminal and WSL, it was a way more pleasant experience but it still had some flaws.

🐌 WSL(1) compared to a native Linux was at least for me 10x times slower. Even with WSL2 it was not much faster and working with docker and WSL was just a mess. I had to restart my machine after some hours of work because somewhere was a memory leak.

🙈 Currently, I'm working on a Laravel/PHP project and some PHP extension would not work with Windows. So I needed to run the backend in a VirtualBox and this would cause my ThinkPad T480 to bluescreen randomly.

💣 Also other development tools that only work on Unix system either needed a special setup or would not work at all with Windows. Sometimes they would work with WSL but for example symlinks would be broken or not work at all in WSL.

📮 One thing I could not get to work or sometimes it would work sometimes not is notifications in Windows. Randomly they would not show in the bottom right but when I would open the notification center I would see them. This happened mostly with notifications from browsers.

☎ The Windows Phone companion App was not working for me most of the time. When it did it would now show half of the notifications. I removed the App on my phone from every possible energy saving mod and all that stuff and It still would not work.

😵 The general flow of working did not feel right for me. It is maybe not a problem with Windows but just how my brain works. We are just not the best match. One example is when you press the key (No its not the Windows key just because it has the windows flag on it) and start to type the application you want to open, it would take ages to find anything and if it would find something it was the wrong thing. It was these small things that added up and made it not very pleasant to use.

🐧 Switching to Manjaro/Arch

First of all I'm not new to Linux. I was using Linux now for over 10 years. Back in the days when Ubuntu was actually good. Where you had to compile your Wifi drivers to make them work with Linux. Which by the way you don't have to do anymore. I was working on elementary OS at some point and even fixed the Ubuntu build system. I was installing Arch without any UI. One of my favourite distros was Archbang.

My workflow and my setup might not be the best setup for someone who has never used Linux. I have no problem with changing configuration files from the terminal. In a lot of cases I find it easier to do that then looking around in a UI. If you want to use Linux I would start with something easy to install like Ubuntu/Fedora/Mint/Manjaro. Something that has a UI to install your base system.

💻 Is hardware important?
Not as important as it was a few years ago. Now mostly everything is supported out of the box. Some vendor features may not work. I'm still disappointed in Lenovo and that the new fingerprint scanner is not working. Usually, Thinkpads are working out of the box with every Linux Distro. I have a T480 and I had to do 0 configurations regarding hardware. But you should do some research before buying or switching to Linux. Maybe your vendor is doing something strange or uses some strange hardware. It is also more common to see that Hardware vendors has hardware bugs which they solve in software. I don't like that trend at all.

🤔 Why did I go with Manjaro?
Manjaro is based on Arch Linux and it comes with all the goodies of arch. Just to name a few: The Arch wiki, Arch is a rolling release, The AUR and mostly vanilla packages. Manjaro on top has a UI to install your base system and I don't want to do that on my own because it was fun the first 10 times but at some point you just go with a graphical installer. That is the main reason I used Manjaro as my base. Usually, I would go with Antergos but sadly it is not developed anymore.

👣 Why do I use Gnome Shell?
It is the desktop that does most of the things I want out of the box.
Pressing and typing will search for Apps first and then maybe on the internet. +m opens the notifications panel. Where you have a calendar, weather and notifications. It has good extensions that I use and like. Gnome Tweaks lets me configure all the small things I miss by default. Like showing the minutes and hours in the top bar. It has a better Night Light feature where it removes the blue light from your screen. If you want to know about a deep dive into my setup. Comment down below and I can write about it more in detail!

🏗 Development setup?
I use Visual Studio Code as my main Editor/IDE. Besides that I have the following browsers installed: Firefox, Firefox Nightly, Chromium, Chrome, Brave and Gnome empathy. Besides that I use git, docker, npm, yarn and all the other standard thing that are needed for web development. I use the Gnome Terminal with bash and oh-my-bash. I use gcolor3 it is a color picker build for gnome. Flameshot for making screenshots. The rest like slack, teams, figma and other apps I just open in Firefox or Chrome. Why should I run them locally? Electron will just eat my RAM 🤣. Again if you have question please comment down below!

💭 Misc thoughts
So In general it just feels more like home to me. I still have a second laptop with Windows which is mostly used for gaming. Of course it is not the perfect setup. I had to manually fix some things and optimize them. This also means that the T480 feels faster and snappier because except chrome nothing is eating into the 16gb of Ram. GSConnect or KDEConnect is a replacement software for Windows Phone and it works so much better. I see all the notifications and I can reply in almost every one of them. It still has some small bugs but at least it works.

🖼 Screenshot of my desktop
Alt Text

👋Say Hello! Instagram | Twitter | LinkedIn | Medium | Twitch | YouTube

Discussion

pic
Editor guide
Collapse
zacharythomasstone profile image
Zachary Stone

I have a SSD with Windows 10 and one with a distro of PopOS. I keep Windows 10 because, although game support is getting much better with Linux, it's still not quite there for me. Love PopOs and would want it as my daily driver if I could

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah I have a Razer Blade 15 with windows only but I only use it for gaming :D

I want to try PopOs some day :D

Collapse
zacharythomasstone profile image
Zachary Stone

PopOS is similar to Manjaro in that it has much better support for video cards built in.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Okay cool didnt know that. I thought its ubuntu based

Thread Thread
zacharythomasstone profile image
Zachary Stone

It is, but they added support for both Nvidia and AMD graphic cards. I'm not sure if it's a 1 to 1 correlation on how well the support is vs Manjaro. I tried Manjaro for a bit, but felt more confident with PopOs in the end. So don't quote me on that. But I do know it has much more support than unbuntu.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Since I have a intel GPU in the t480 I'm using I don't need to do any extra magic.

But I think the razer blade which has both intel and Nvidia I would then go with popOS

Thread Thread
perceival profile image
perceival

I like how smoothly interface works with Pop. It really feels faster than anything I've tried (maybe with an exception of Deepin). However I am unable to compile on Debian derivative fingerprint scanner driver (github.com/rindeal/libfprint-vfs_p...) while on Manjaro those are readily available AUR packages.
Hence compared to Windows the only things that do not work under Manjaro are: hibernation (but that stopped working under Windows as well with BIOS update probably), freefall HDD protection and LED indicating mic status.
BTW for AMD Wani both Pop and Manjaro loaded by default the same AMDGPU version.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah the fingerprint scanner on the t480 is also not working for me :/

Collapse
sebbdk profile image
Sebastian Vargr

Going out on a tangent here but..
I'm working on a raspberry pi home server at the moment .

It got me thinking, that given a Linux stack.
Maybe a raspberry would be a great developer companion.
It could do all the work, just mount a share from any client and code away in whatever environment you like.

There's probably a bunch of "what if's" to solve.
Like you would definitely need to setup the Pi to use a SSD of some sort
to get decent performance over the SD card.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

I think RAM and docker would be too much for the PI

but I'm just guessing.

Collapse
sebbdk profile image
Sebastian Vargr

Works for my home server, but I have not stress-tested it tho. :)

Collapse
cacarrpdxweb profile image
Christopher Carr

I'm running Deepin DE V20 on "RebornOS" -- which is a fork of the now-defunct Antergos. It's by the guy who did most of the Deepin work for Antergos back in the day. Comes with a few useful bells and whistles.

That Deepin V20 was quite buggy initially, but a recent update seems to have sorted things out. Pretty spiffy. Makes one wonder why Gnome can't look as polished.

If you really like Gnome, it's available, along with a bunch of other desktops:

rebornos.org/

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Oh Cool I did not know that someone is working on a fork of antegros!

Collapse
gayanhewa profile image
Gayan Hewa

Brings back memories. I used to spend so much time hacking around Linux. I even have a spare x230 running arch, I barely have the time to use it though. Since osx being the primary setup for work, I have started to use it for personal dev tasks too. Apart from the hardware being overly priced as hell. Its a decent mix of usability and a unix like env. Anyways, good luck with the switch and enjoy.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Nice to hear :)
And yeah the x230 was a great laptop :D
I was usuing OSX for like 2 years. It is kind of okay :D but nothing special ;)

Thanks enjoying it now for over 2 weeks :D

Collapse
wrldwzrd89 profile image
Eric Ahnell

This gives me a reason to look at options for Linux more than I have before trying some. I too am looking at switching - though I'd keep my Mac, only because I still need it for Mac-specific stuff.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

If you have an old laptop just try Linux on that :)

We have iPhones and Mac's because of Safari.
Since Safari handles a lot of modern stuff poorly or different we call it now the new IE :D

Collapse
wrldwzrd89 profile image
Eric Ahnell

I actually have no laptops - only desktops, but the combination of distribution and hardware I chose is known to work. I located the hardware and am creating a USB boot disk as I type this.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Just try before you buy(in) is what i meant :D

Thread Thread
wrldwzrd89 profile image
Eric Ahnell

I’ve completed the distribution selection process and prepared the computer it will be installed on. All I need now is that mouse I ordered from Amazon to arrive.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Good luck and have fun :)

Collapse
fluffynuts profile image
Davyd McColl

I agree with the line "as long as it keeps you productive it is the best tool for you". My primary desktop at home is a Gentoo box and my work machine is Windows -- mainly because we still do some .net work that doesn't play nicely with Mono, and I'm hoping .net 5 (probably 6, considering the latest news) will fix that. But for now, my work machine is Windows because it lets me get stuff done -- even though the stuff that I do which doesn't need Windows (like the Vue/TS frontend for our site) builds and tests way faster on my older , 4-core home machine (about 7 years old: i7 3770k vs 6-core i7-8750 Windows laptop: mod) and I really prefer the entire environment I have there.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Your laptop and OS is just a tool like a hammer 🔨👍

the company I work for right now has the same problem with old .Dot stuff.

Yes in general building stuff is way faster on Linux at least from my experience.

Collapse
fluffynuts profile image
Davyd McColl

Yeah, we have a few people using macs too, so I'm always trying to look for ways to be platform-agnostic, but also remember that our hardware and software are just tools to enable us to make stuff (:

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah I also have used OSX for like 2 years. :D

To be honest I would love not to care too much about the OS at all anymore. I just want it out of my way.

And for me that's Gnome Shell :D

Thread Thread
fluffynuts profile image
Davyd McColl

My thoughts exactly. I'm not a fan of GNOME -- but my preferences should mean absolutely nothing on your machine (:

Thread Thread
fluffynuts profile image
Davyd McColl

(I used to use GNOME 2, but I don't like the direction it went -- fortunately, on Linux, I can choose something else, so yay!)

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

you have so many options :D

At some point, I was using something like i3 :D

Collapse
pekempy profile image
pekempy

EndeavourOS is a nice successor to Antergos for GUI arch installs too. I would recommend checking it out.
The only thing I miss is a few windows programs, and game support, but the latter is improving regularly with Proton.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah proton is amazing from a development perspective.

I also hope that wine or some virtualization will be fast enough so you can run windows app without a too big performance hit on Linux

Collapse
juslintek profile image
Linas

Always though electron is better at memory management then browsers, because it should optimise it for specific app... Oh well. Guess will try going back to browsers. Probably will try moving everything to Safari for best performance. 😊 As well didn't knew oh-my-bash exists. Wonder if powerlevel10k supports it (should be faster then zsh).

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Electron is basically chrome :D So yeah it eats a lot of RAM :D

oh-my-bash has powerline. It's not 100% the same but almost.

Collapse
bushblade profile image
Will Adams

But you're using VS Code, that runs in electron.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah I'm waiting for the browser version :D

I mean I try to run everything I can not in Electron.
If I can run it in the browser I run in in the browser
If not then I run electron app version.

Thread Thread
siy profile image
Sergiy Yevtushenko

Perhaps this is what you're looking for: theia-ide.org/

Thread Thread
toby profile image
toby

Also, microsoft codespaces, or GitHub codespaces (2 products that do the same thing almost)

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Yeah I need to check them both but I'm skeptic that you can replicate the dev expierience 1 to 1 :D

Collapse
wolfiton profile image
wolfiton

Linux is great and I am also a Linux lover but the graphic tooling is not there yet and if you need to work with blender and affinity products(photoshop alternative and illustrator) than you will need to dual boot.

I will have to do that soon unfortunately.

I just wanted to add this for anyone that is a frontend dev or graphic designer.

Also as much as I like Inkscape the interface is not as clear and doesn't have a lot of tutorials like the other products.

Thanks for writing this article and your experience @michael "lampe"Lazarski

PS: Affinity was also asked to make their software compatible with Linux but they responded with a NO!.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Yes thats true.

I don't do much graphic stuff but yeah all the adobe stuff does not work in Linux and Wine or virtualization makes adobe products even slower when they already are.

We just changed to Figma which works in the browser so at least mockups can be done on Linux or in the browser.

I know a designer who prefers Gimp to Photoshop but I would say he is the exception to the rule.

In the long run, this will be solved by webapps but sadly not in the near future.

At least we have Figma and Blender now :)

Collapse
wolfiton profile image
wolfiton

I agree with you Figam rocks but blender might be a problem with OpenCL in my case doesn't work.

I always liked working with it by rendering on GPU.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Strange but last time I used blender it was in university which is almost 10 years ago.

But I know people who use blender on Linux and also as rendering machines with linux in the cloud

Thread Thread
wolfiton profile image
wolfiton

I guess it depends on each case. In the old days when cycles and blender 2.72 where famous these problems were not present. But they are now unfortunately.

The era of Vulkan and mesa made some changes and also the lack of support from AMD makes everything worse.

So in short Blender 2.8 doesn't recognize my video card no matter what I do. I also installed OpenCL.

So this is a good thing for everyone to keep in mind GPU might not work.

Thanks for the quick follow up.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Okay that sucks :/

I hope AMD will up there game with the new GPU's as they did with the new CPU's when it comes to open source if they really want to compete with Intel. Especially in the server market it is important to have good Linux support.

Collapse
leoheck profile image
Leandro Heck

The question is. Why you switch back to windows in the first place?

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

I changed companies and the Laptop I got had windows 10 preinstalled so I gave it a try

Collapse
leoheck profile image
Leandro Heck

Oh, that is sad dude. Companies should not enforce dumb OS choices like these. Even tools like text editors should not be enforced.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

It was not enforced by the company.

We have all OS'es and all kinds of setups.

It was just the notebook they gave me :D

Collapse
praveenmak profile image
Praveen Mak

Hi,

Have you connected your laptop to large size monitor ?
Manjaro drivers does not work , I have spent weeks on getting it to work. But with no success

Collapse
gelie profile image
Gavin Elie

I am using Manjaro 20 XFCE with a dual monitor setup, Lenovo T470 laptop and Dell 24" monitor. It worked out of the box although I had a slight challenge with closing the laptop lid. Solved it by editing a conf file. Manjaro KDE edition was flawless. I have not tested Gnome yet.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

I'm right now moving so I have no monitors at home

but normally it worked out of the box.

Collapse
carlsixsmith profile image
Carl Sixsmith

I really enjoyed experimenting with Linux, but for work I’m too reliant on dotnet, VS code is good, but it’s not visual studio and it had issues debugging. I can’t afford the time to spend fixing it when there’s a deadline to hit so back to windows.

Will give it another go, as generally it was a much better experience (especially docker)

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

For .NET I would still use windows.

It's just to integrate into the Windows Eco System.

It comes back to usuing the right tools for the right job.

Also dual booting is a thing :)

Collapse
carlsixsmith profile image
Carl Sixsmith

Dotnet not .NET

It worked wonderfully (apart from the debugging issues).

I’m looking forward to retrying it once I’ve got some more time to dedicate to working through the niggles.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Okay I thought that DotNet and .NET are the same things?

But I never worked with either of them nor came to close to it :)

Thread Thread
carlsixsmith profile image
Carl Sixsmith

Dotnet is natively cross platform. It’s Microsoft’s way of keeping developers who have 20 years invested in c# on board in the new world order of Linux servers, docker containers and cloud services.

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

Okay thank you for the information.

Collapse
conectionist profile image
conectionist

I've used Windows most of "Desktop" life (about 15 consecutive years). Then I decided to give Linux a shot. It was better in many ways. But after a while it became obvious that was worse in other ways.
So after about 3 years of Linux, I realized that neither OS was ultimately better than the other. They both have their good parts and their ugly parts. (I won't get into details unless anybody is curious).
So I came to the conclusion that the best solution was actually a hybrid one (i.e. dual-boot).
Now I have the best of both worlds!

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Or have 2 laptops as I do :D

T480 and a Razer Blade

But yeah dual boot is also an option ;)

Collapse
conectionist profile image
conectionist

Or that :D

Collapse
manuelojeda profile image
Manuel Ojeda

Totally agreed, Windows is doing a great job to unify the development in the Microsoft OS but the flaws makes you go back into native Linux.
I'm a full stack dev too, mainly doing PHP/Laravel and I was using Laragon at the beginning but the problem happens when I was trying to use some plugins and installs that only works on Unix (like Image Optimizers). Tried WSL and I like it a lot at the beginning but then the performance was bad, poorly Developer Experience, then I went full Ubuntu and since then 0 issues doing code in there and I love working in Linux (6 months ago).

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

HaHa sounds like you had almost the same experience as me :D

Have fun with Linux :)

Collapse
manuelojeda profile image
Manuel Ojeda

Thanks, lets say that using WSL was my training before going full Linux 😎

Thread Thread
lampewebdev profile image
Michael "lampe" Lazarski Author

HaHa yeah at least to understand the system a little bit :D
It is a good start :D

Also to understand server ;)

Collapse
gcnu profile image
seenu

Mine is opposite:
I am windows user from beginning and tried linux many times (still i propose it in office) but back to windows 10 and i am very happy.

the only complaint about windows (10) is antimalware scanning which slows down system with CPU usage when running composer install, yarn etc.

otherthan that it has perfect setup, especially with laragon i don't need to waste much time and i use babun so i run mostly linux commands only on a windows pc comfortably.

WSL never impressed me and found many issues with it but overall, i would stick with windows only except for antimalware.

biggest issue with linux is permissions when a pc is shared between multiple users (not admins) in regards to /var/www/html folder, again related to composer install, yarn etc.

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

I think you don't need to use laravel in /var/www/html since this is a shared folder.

You should install and run all of this anyway in docker.

We are using vessel where I just start some docker container.

Collapse
gcnu profile image
seenu

since i work with beginners, i don't want to overwhelm them with docker (already they need to learn a bunch)

and i use /var/www/html because it is shared folder, multiple users use same pc with their own login but need to access same folders (to avoid cloning projects again and again) and with /var/www/html they don't need another webserver (like php artisan serve) also we work on frontend/html projects too

Collapse
perceival profile image
perceival

Thanks for GSConnect! I've noticed it but didn't realize the purpose. Also eager to try oh-my-bash. From my side I would like to recommend CLight. Neither of the laptops I am running Manjaro on has ALS but with CLight I never touch brightness adjustment buttons.
My setup:
dev-to-uploads.s3.amazonaws.com/i/...

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

Nice setup :D

I need to check Clight :D

But usually, I either have max brightness or min brightness 🤣

Collapse
moopet profile image
Ben Sinclair

As far as Manjaro being the easier to install, the last time I installed Arch it took the same time or less, and I had to make about 3 decisions in that time. It's straightforward, just lacking the GUIosity. I did it from a bootable image.

I tried Manjaro for a while but didn't like the way it wasn't exactly Arch. Some things wouldn't work. All the good "extras" it comes with are a pacman away, and all the bad ones, well I don't want them. I don't want sponsorship from Microsoft Office on my desktop. Nothing like that.

Collapse
herawais profile image
Muhammad Awais

The thing I like the most about linux is I can customize it As I want.
And "Always on top" option in Linux I love this feature the most

Collapse
lampewebdev profile image
Michael "lampe" Lazarski Author

yeah and it has great themes and the UX/UI is getting better and better