Which OS has the steep learning curve and is considered hardest?
- Gentoo ( I have been using it for 3 years now, until I have to switch to Ubuntu for research sake. I love it’s philosophy and I kinda feel even my lifestyle changed after Gentoo. Tried it’s successors, redstar, cosmic mod didn’t liked much.)
- Arch Linux ( when I got into Linux, everyone was like, I use arch btw. So tried it first with gnome, then kde, then i3, then i3 gaps and tui, then used openrc, then used runit. Helped me lot to install Gentoo. But Gentoo transformed me into something else)
- Nix OS ( I was hearing about it since 2022. I wanted to try, and now I am gonna install and use it. I’m planning)
My question is, which among these is considered to be hardest and thus by mastering it, one can master linux to atleast some part? (excluding network management, ofsec, netsec, forensics, etc)
You’re in a good position to “master” NixOS, but I don’t think it’ll help you to achieve your goal of getting better at Linux.
NixOS will help you with declarative systems (“mastering” NixOS will help you working with it’s sibling Guix for example), but because so many things are specific to the declarative configuration, it won’t help you in many other places (not with you current knowledge, apart from functional progamming I guess).
If you want to “master” linux, maybe check out linuxfromscratch.org
Edit 1 (spelling)
Is it so? Does it helps with FP paradigm? Meanwhile how you got to know I’m into FP?
Also I tried LFS many a times, but couldn’t complete fully. Same with AOSP. Same with porting existing ROMs for Android. I also wished to try Gentoo Android project, even when it’s abandoned. But I will try.
I can’t really add anything on the LFS, AOSP & ROM-porting part. But I know there’s Mobile NixOS, which might be a project you’re interested in.
Nix, the language you use to configure your system is a functional language (c.f. https://nixos.wiki/wiki/Overview_of_the_Nix_Language), that’s why I said it’d help you with FP. I didn’t know you were into functional programming, just lucky wording.
But if you get into the FP side of nix, then there’s so much more you can do. Here are some examples of projects that use nix/FP to help you with something:
Since nix (the language) is primarily used with nix (the tool/build system), most things you’ll will be doing are centered around building something.
It will cover most FP paradigms, but writing the apps themselves with a functional language can teach you more than setting up the build system for it.
Edit 1 (spelling)