So, my longest running Linux install, since May of this year, has just finally imploded. I had such high hopes.
My Linux development environment has somehow got itself in a mess after applying some OS updates. I’ve attempted to fix it by finding out what has actually broken. I’ve tried everything I know how to do / try and everything has failed to address the issue. So instead of a 4 hour coding session, I’ve had 4 hours of scratching my head and attempting to fix my development environment.
I was only last week talking about how reliable this installation has been. So incredibly frustrating. When I’m firing up a machine to do some work and this happens to your OS, your productivity is net zero. I’ve ended up fiddling with Linux rather than working.
In fact all the additional complexity Linux is bringing to some of my development projects has forced me to drop supporting it altogether. Being such a small development company means I just don’t have the capacity to maintain the application for Windows, MacOS and Linux. Even the Linux build process has been more problematic than the others.
I have 2 Windows machines in my build agent farm. One with 64Gb RAM and one with 16Gb RAM. I also have an M1 Mac Mini with 8Gb RAM as a mac build agent. The Linux build running on the box with 16Gb RAM fails to complete as it runs out of memory. I had to move that to a VM on my main box and allocate 32 Gb of RAM. Half the hosts RAM. Those builds worked until that VM install of PopOS ran some updates and imploded. Fortunately I had a snapshot of the VM to roll back to. No such luck on the PopOS install on the physical box though.
The long and short of it is that whilst Linux is free as in beer, the costs to my business for all this extra work is not free and it’s not negligible. I just can’t justify all of these headaches that seem to follow my Linux experience around like a bad smell.
I’m genuinely confused over my experience with Linux. It just never lasts long in my hands without something eventually going wrong that I can’t recover from. This time it made it from May to September, just 4 months. I’m not even really doing much with the OS. Install it, install and configure dev environment. Do some work … occasionally apply the OS updates using the standard tools for the distro, such as Pop Shop for instance. I don’t do anything else with these installs. No games, no email, no browsing, just work. Eventually, it just dies on me and I can’t recover. Rinse and repeat this experience.
My shortest experience with Arch Linux. It took an ungodly length of time to install it, most of a day in fact. Got it installed, and configured run it up a couple of times. The very first batch of updates and it then failed to boot ever again. 8 hours of installation hell for 20 mins of use before it bricked itself.
I think I’m done with even trying Linux for desktop any more. I think I literally just decided that as I typed that sentence. This doesn’t make me happy. I’m just confused why so many have long histories using this and I have a universally dreadful experience, every time. I’ve tried Arch, Mine, Elementary, PopOS, Ubuntu, Fedora. I’m just gonna walk away I think.
Fixing .NET 6 SDK on Linux
I have now fortunately fixed my Linux install of the .NET SDK. Following these steps fixed it for my installation.
sudo apt remove --purge --autoremove *dotnet*
2. Edit or create this file
/etc/apt/preferences and include this text:
Package: *net* Pin: origin packages.microsoft.com Pin-Priority: 1001
Then reinstall the SDK - sudo apt install dotnet-sdk-6.0