My Journey in switching to Linux
For the past 6 months, I have been daily driving Linux as my primary operating system. This is my journey regarding the switch.
Reasons for switch
- Windows is increasingly not respecting user choices. I have had too many popups during system start to reset my default to Microsoft recommended settings i.e) use Edge, use Bing & backup to OneDrive. Links from certain Microsoft apps started to open in Edge instead of my default browser.
- Windows 11 is pushing online services everywhere including start menu & Taskbar. MSN news, Copilot, Microsoft Account, OneDrive, etc… These online services bring with them ads and privacy implications.
- Windows was collecting more and more telemetry with each update. Windows Recall was a privacy nightmare with respect to data collection.
Preparing for the switch
In preparing for the switch, I was listing the programs I use that are not available in Linux. The alternatives are also available on Windows as well which makes it easier to try them before making the Linux switch.
- MS Paint - Switched to Pinta. GIMP which most people recommended is too complex for simple tasks.
- Clipchamp - I switched to Flowblade. Still miss some features from Clipchamp. But for my needs Flowblade is good.
- Visual Studio - Started using VS code and dotnet cli more. Tried Rider, but still using VS Code mostly. For my needs on .NET Web API development, Linux, dotnet CLI and VS Code works fine. But you will need Windows and Visual Studio for WPF or WinForms.
- Github Desktop - This is an amazing GUI for Git. I have been using it for a very long time. It is not officially available on Linux but a third party port is present. I started using git bash and git features that are built into the IDE.
- MS Office - Libre Office of course.
Starting with Fedora
Fedora was a popular recommendation in the Linux forums and sub reddit. I decided to give it a try. It was for the most part okay but I ran into some major issues.
- HEIC Support - Photos taken with HEIC format won’t open at all initially. Even after I got it working, there was no thumbnails. I did switch the photo format on my phone to JPEG for compatibility. But I already had a bunch of existing photos that won’t show thumbnails. From what I understand, Fedora does not support proprietary codecs for HEIC which causes the issues.
- NTFS Support - I had a harddisk partition on NTFS and Fedora will only read from it and not write to it.
Distro hopping
At this point, I decided to switch to Ubuntu. I had briefly used Ubuntu during my college days and decided to give it another try. The HEIC and NTFS issues were not present with Ubuntu. Though, I did eventually reformat the NTFS to ext4.
Using Ubuntu
I did not have much issues with app compatibility as most of the software I use are supported in Linux or had a web app. And for the unsupported apps, the alternatives I choose earlier worked well.
I did face two hardware issues. One with my laptops’s fingerprint scanner not working. Looks like it does not have drivers for Linux and I decided to not to use it.
The second issue I had is when I dock my laptop to my BenQ monitor and close the lid, the OS would become slow and stutter. After a lot of troubleshooting, I modified the following config for systemD which seems to resolve the issue.
/etc/systemd/logind.conf
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore
I also made the following changes based on various resources which I found useful.
- Enabled Flatpack and installed gnome software - Makes it easier to install apps. Still keep snaps for things like Hugo. Always prefer the format with first party support.
- Installed Android Studio through Jetbrains Toolbox - It is a lot easier than installing it from Google source.
- In case of any issues with opening and closing from a mounted partition check Flatpack and Snap permissions first.
- Always restart after installing updates. It does not take as much time as Windows.
- Create an install script for all the applications you want to install. Useful when switching / reinstalling OS.