Hacker News new | ask | show | jobs
by SkyMarshal 1274 days ago
> If someone can find a way to do something like Nix, but simple, I'll be interested. Even if it's just a on-rails version of Nix.

I doubt it's possible to substantially simplify Nix and still cover all the use and edge cases it does. Maybe GUIX since it had the benefit of learning from Nix and uses a more familiar (for HN anyway) Scheme, but I haven't looked at closely.

It seems that if Nix/OS works for you, it works really well, but if there are use/edge cases where it doesn't then it can be a lot of added effort to wrangle it.

3 comments

> I doubt it's possible to substantially simplify Nix

In general, I think there's always going to be a long tail of things which will be relatively difficult to achieve with Nix.

But, I think it would be possible to make many cases much simpler, or have more common developer use cases well-trodden so that its rough edges get ironed out.

If NixOS doesn't work for you then using Nix to set up a virtual machine is invariably easier than the problems you'll certainly have in ~five years with any major linux distro. NixOS is the first truly rolling distro I've ever used where I never even think about upgrading / switching distros / re-installing linux to get rid of cruft.
> Maybe GUIX since it had the benefit of learning from Nix and uses a more familiar (for HN anyway) Scheme, but I haven't looked at closely.

I’d be glad if sb could give a rough outline of the similarities and differences between Guix and NixOS for me who is not familiar with both of these systems but would like to learn more about them. I have a gut feeling that having reproducible builds/installations gives 90% of the benefits Docker provides.

I'm too tired and busy atm to really write up a comparison like that atm, but on this

> I have a gut feeling that having reproducible builds/installations gives 90% of the benefits Docker provides.

I'd argue that both tools provide more benefits than Docker, at the cost of the extreme convenience Docker offers in allowing you to use completely arbitrary (even non-reproducible!) steps to produce a container image. If you're already using either tool, you can achieve anything Docker can, including deploying against the Docker runtime. See the docs for the `guix pack` and `nix bundle` commands for info on how either tool can automatically produce OCI images out of arbitrary packages for you.

(To compare the two tools, I recommend just installing both Nix and Guix (via their own usual installers) on some desktop Linux VM and playing with them.)