I’m a little bit underwhelmed, I thought that based off the fact so many people seem to make using this distro their personality I expected… well, more I guess?
Once the basic stuff is set-up, like wifi, a few basic packages, a desktop environment/window manager, and a bit of desktop environment and terminal customisation, then that’s it. Nothing special, just a Linux distribution with less default programs and occasionally having to look up how to install a hardware driver or something if you need to use bluetooth for the first time or something like that.
Am I missing something? How can I make using Arch Linux my personality when once it’s set up it’s just like any other computer?
What exactly is it that people obsess over? The desktop environment and terminal customisation? Setting up NetworkManager with nmcli? Using Vim to edit a .conf file?
The thrilling thing about arch is you get to put together your own user land applications, especially things that could form your desktop environment, audio stuff, etc.
I agree it is not that complicated. If you want more thrill, here is what I recommend:
gentoo Linux
has the option to compile everything from source. This isn’t just for bragging rights. This resolves a whole class of software breakages that can happen on other distros (especially when using old or less common applications).
NixOS
Takes it a step beyond gentoo and uses a functional, lazy approach in package management. Every package is fully reproducible, has a kind of isolated environment. Your entire setup is reproducible and declared with a single file.
---- below this line is torture. Not recommended
slackware
Idk how it works exactly, but package management looks like a manual pain
Linux from scratch
A book where you create your Linux installation from scratch, compiling every single component until you reach a working system
Notable mentions
nix sounds cool but it also sounds like a PAIN to use until it gets proper support
It has a lot more support than you think. As a gentoo user, I am jealous of nixos often seeing more support than gentoo, when gentoo is older and seemingly easier to support. But nix seems to have a bigger hype nowadays.
Gentoo, while source-based and having an interesting approach with USE flags, does not come with NixOS’ strengths.
I’d even say that Gentoo’s packaging might be better in some aspects than that of nixpkgs, which does feature options that you can change via overrides but generally isn’t as modular as Gentoo’s system. But the mistake a lot of people – and I’d say you as well – make is that they look at the wrong parts for comparison, and don’t understand what makes NixOS so powerful. It’s not the sheer amount of packages or how they’re built, but rather the module system, the declarative nature and the option for rollbacks at the “package manager” level. Yes, these features come with increased complexity. However, I recommend not to look into what people have published in GitHub as their configurations, as these are rather general and as such more complicated than one needs for casual use.
Slackware avoids the issue of package management completely.
You just install the entire repository up front, which resolves all dependencies.
If you need software that isn’t in the repo, you can install it any way you like from wherever you like, there’s no real package manager that gets in the way. Usually you compile it with Sbopkg, a helper script very similar to Arch’s AUR helpers. It comes with rudimentary dependency resolution in the form of queue files, which just list what needs to be installed in the correct order for any given source package, and then does it for you.
A more modern approach I follow is to use Flatpaks.
Void is far from torture. It is just as easy to set up as Arch, if not more so.
I agree, I organized the post wrong. Void should’ve been up, but it’s also a notable mention that I can’t write a lot about since I did not do too much with it.
I use it daily, which things won’t work? Honestly it’s “just a distribution”, you’ll have the same experience with it as OP has with Arch.
Bunch of random small things gave me issues. Sdkman (kinda like a Java version manager) and transmission on arm64 on wireguard would not work either.
I ran transmission and WireGuard for ages before I recently switched my server over to x86, worked fine?
Idk about Sdkman though, I don’t do Java development, but if it’s written in Java itself I fail to understand why it wouldn’t work 🤔
My setup was really weird. I was running it under a network namespace. Maybe that’s why? The app would run like normal, but it would not successfully create any connections. I replicated the same setup on glibc and it worked.