Considering Starting Linux
I have been using Windows my entire life, but since I got my Steam Deck I’ve been considering trying to get into Linux.
I obviously don’t have much of an idea where to begin, other than that I’m currently also trying to learn Javascript. I'd like a basic workstation I can code on and mess with, that doesn't run more than a couple hundred. Could use some recommendations for hardware plus where to begin.
You are viewing a single comment
Try NixOS. Snowflake is a good start.
Having a mutable Distro may be better suited than immutable. Containers are annoying.
But having a system that does what it is supposed to do, and if you remove a package its gone and if you add one its there is a big thing.
Did you seriously recommend nixos to a person who never use linux?
Yes. If you are new, no reason why you should use "sudo apt install xyz".
NixOS has a GUI setup, a GUI package manager etc.
Never recommend any random "supposedly working" Distro. It will break some day, get cluttered with useless files, have broken dependencies or whatever. I broke every Distro before.
I am on Fedora Kinoite now, which I consider a good Distro for most people especially beginners (the ublue variants). I guess layering all the development stuff could work. Using Containers for everything does not work well with IDEs, you need to run these in the container too...
So in the end for someone that wants to code I would not use any random traditional Distro as in my experience all break. But a real immutable distro might also not fit if you need to layer so much.
So why not NixOS? Its very easy to setup and you need to learn everything new anyways.
As a NixOS user, I will definitely not recommend beginners to use this distro. It's just a poorly documented, not user-friendly Linux.
I use it because I really hate .config and dotfiles, like why do I need to edit several files for just one thing?
Standalone nix installation and Home-manager would be fine though, I still not recommend them because at least I cannot tell if the binary I'm executing right now is installed from Nix or apt or whatever until I execute
which
Overwhelming someone who's learning something new will increase their chance of giving up. Not only they have to learn how to use Linux in general, now they'll have to learn about nixos declarative configuration model on top of that. When they eventually get stuck with some issue (which is normal when learning something new), there are less resource to help them on the internet because they're using a niche distro.
This happens on Ubuntu too. Just that there the best tip will be "try reinstalling the system", because traditional distros are so unmanaged, that they pile up unused files and packages over time, and simply random things happen.
Believe me, I broke Ubuntu, Linux Mint, Manjaro, Fedora. MXLinux was so old that I my Nextcloud was not compatible. I was a beginner and every Distro sucked.
If i would have just learned any of the managed Distro models (rpm-ostree, A/B root, transactional-update, NixOS, ...) I wouldnt have needed to switch
Distrohopping makes no sense, you should try Desktops but the Distro should just work.
Install Debian, and if you've got a reasonable powerful computer, install NixOS in a virtual machine. Then, when it breaks and you get frustrated, you aren't down to zero OSes.
I would never recommend installing Debian. Everything is soo manual. Fedora has the way better user experience with everything preconfigured.
I agree, one friend installed Debian because he saw that everyone recommended it, but he couldn't understand how to make VirtualBox work, even less when I explained the reason to him. He ended up returning to Windows because of more issues and he didn't like troubleshooting as much as I do lol
I'd say Linux Mint is pretty good too, Debian alone may be harder for new people who wants a system that just works out of the box.
Ah. You haven't tried installing it since 1902.
I literally upgraded 6 PCs to Debian 12 and it was a pain in the ass
I'm honestly baffled
They dont even have a "sudo apt system-upgrade", while this is a fully automateable process.
I needed to follow some random blogpost because I could not find any official (big advertized) documentation.