Hacker News new | ask | show | jobs
by rgoulter 30 days ago
> Also, NixOS is not very flexible. I prefer e. g. /Programs/Ruby/4.0.5/

I'd characterise it as the opposite:

A unique aspect of NixOS is that it avoids global state as much as possible (& prefers to symlink things). -- By conspicuously avoiding / preventing this global state, everything has to be declared as an input for the 'package'.

For example: the Nix package for "ruby 4.0.5 built with gcc 16.1" would be a different package than "ruby 4.0.5 built with gcc 16.0". -- That afforts a greater level of flexbility. e.g. allows easily having multiple concurrent shells which run different versions of the same program.