Logo

dev-resources.site

for different kinds of informations.

I Changed My Mind - NixOS is NOT the Best Linux

Published at
8/11/2024
Categories
linux
archlinux
nixos
productivity
Author
jasper-clarke
Author
13 person written this
jasper-clarke
open
I Changed My Mind - NixOS is NOT the Best Linux

Well I didn't expect to be writing this post, ever.

Most of my posts on here have just been NixOS and praising its glory to all but recently I have been greatly disliking NixOS more and more.

But what does this mean for you? It could mean nothing, or it could mean everything...

NixOS Pros

I can't say NixOS isn't great, it has so many amazingly useful features that just make using Linux so much easier.

  1. All packages are version locked. (Easy to roll back versions)
  2. All package dependencies are per package so version conflicts are prevented.
  3. Thousands of services are now easily configurable from the ground up thanks to NixOS Options.
  4. It provides a similar format to docker in that your whole system is a container that can be perfectly and precisely replicated anywhere!

These have been the reasons I stuck with NixOS for the past year.
But the way NixOS does some of these things has also been its downfall for me.

NixOS Cons

The greatest problem I have experienced with NixOS is actually development.
Working with anything that requires external libraries like C, Java or even Rust has been so much of a pain I have just given up on projects because of it.

But what is the problem exactly?
NixOS makes it very difficult to simply, install a library and have it accessible to the rest of your system.

On Arch setting up a OpenGL environment for C is as easy as:

sudo pacman -S gcc cmake make glfw glew libglv
Enter fullscreen mode Exit fullscreen mode

On NixOS you can't just add these packages to your package list and call it a day, you need to setup whatever LD_LIBRARY_PATHs are and even then I couldn't get it to work.

It turns a simple idea of, "Hey I'm going to have a crack at some C and write a OpenGL program", to, "I literally don't understand how to even get this setup, at this point I haven't even wrote any code and I'm burnt out".

I got so fed up I started looking into switching Distro's entirely.
"Where did that lead you, back to me" - Arch Linux"

Arch, dangerous but simple

Now don't worry I'm not actually abandoning NixOS. But I will be using an Arch Virtual Machine to do any kind of graphics or library dependent development.

Thanks to my guide on installing Arch is was really easy to setup and like I illustrated earlier it took my around 30 seconds to get my environment ready and I could just start coding, wonderful!

Arch does make it slightly more tedious to setup the actual operating system, but its a sacrifice I can make for being able to quickly spin up any development environment I want.

Conclusion

Arch makes the operating system tedious, but the development environment easy.
NixOS makes the operating system easy, but the development environment torture.

It really seems like there is no perfect Linux distribution. Not yet at least.

Until next time, thank for tuning in.
Jasper out.

nixos Article's
30 articles in total
Favicon
How to Set Up Kanata on NixOS: A Step-by-Step Guide
Favicon
NixOS - A Unique Linux Distribution
Favicon
NixOS Full Disk Encryption with USB/SD-Card/Password Unlock
Favicon
Choosing my distro: Ubuntu, NixOS, Elementary OS or Pop!_OS
Favicon
Nix first steps
Favicon
OpenResty on NixOS for an API Gateway
Favicon
Why Consider NixOS for Your Environment?
Favicon
Managing NixOS on DigitalOcean with Colmena
Favicon
I Changed My Mind - NixOS is NOT the Best Linux
Favicon
Backup GitHub Repositories with gidek
Favicon
Packing Custom Fonts for NixOS
Favicon
Managing NixOS Secrets via SOPS, sops-nix and opsops
Favicon
Running NixOS Guests on QEMU
Favicon
Archiving PostgreSQL Backups on NixOS
Favicon
The Ultimate NixOS Homelab Guide - Flakes, Modules and Fail2Ban w/ Cloudflare
Favicon
The radical concept of NixOS and why I love it!
Favicon
The Ultimate NixOS Homelab Guide - The Install
Favicon
The One Man Stack
Favicon
I use NixOS for my home-server, and you should too!
Favicon
This distro finally fixes Linux
Favicon
Running a Terraria Dedicated Server on NixOS
Favicon
NixOS on Raspberry Pi 4 with Encrypted Filesystem
Favicon
Day 7: Uninstalling NixOS from my Macbook Pro
Favicon
Nixpkgs: A community-maintained package lock file for all of Unix
Favicon
Writing a (Nix-Friendly) Hello World Web App in Haskell with Scotty
Favicon
Kick the Mix-ups to the Curb: Nix the Tricks and Juggle Go Projects like a Pro
Favicon
Day 6: Making rEFInd Look Good
Favicon
Day 5: NixOS & Git - version control for config.nix
Favicon
Day 4: (Re)Installing NixOS on my Macbook Pro
Favicon
Day 3: Fighting with network interfaces

Featured ones: