No way, a Guix user in the wild???!! I didn’t think you exist! Any opinion you have as to why guix over NixOS other than GNU philosophy and liking Lisp over Nix?
Not OP, but I switched from (many years of) openSUSE Tumblweed to Guix System a few months ago, and at work I’ve started using NixOS. I completely love them both, and they of course share the same overall design. But there are differences.
Most notably Guix uses a full featured programming language for it’s configuration. This is a bonus for me, since it’s more useful to know the language overall, but I also enjoy Lisp dialects a lot. I think this is a bigger bonus if you, like me, are already invested in Emacs as you editor of choice.
Guix is also a loooot better documented, compared to Nix. Try finding info about all available services/programs for Nix for example. It’s kind of a nightmare. This also compounds a bit by the fact that Nix can handle the system/hardware configuration of NixOS, but for home configuration you’re reliant on a seperate system, home-manager. They of course have their own websites and sources of documentation. Compare this to Guix, where Guix itself handles both system and home configuration, and services are documented the same way on the same website.
Nix, however, have a lot more packages already packaged for it. This is especially relevant if you, like me, work exclusivly with Kubernetes, for example. kubectl/openshift-cli/kubeseal/etc for Guix? Package yourself or download the binaries. On Nix all of these are already packaged.
Nix is also bigger and have had more momentum, so I also just think it’s an “easier” choice if you want to use a common system between colleagues. Many if mine are Vim users and might not find Guix immediately more interesting than Nix.
I also think Guix has a more focused way of doing things. Guix is a lot better at actually building all of it’s packages from source, whereas Nix “often” just downloads tarballs in the build system and calls it a day. But, that might also have made it historically easier to package software for Nix.
There are more differences than that as well, but those were the ones on top of my head.
They are both truly great though! I’d much rather use any of them than almost any other Linux distro. :)
For me, it was the docs and seemingly being more straightforward. Nix always seemed like something I’ll never understand because of it’s many ways to do things while having hard to follow docs at times, but guix made sense to me. Nix obviously has it’s clear upsides over guix - both are good!
I have not used NixOS, so can’t compare (in terms of other than GNU philosophy). But I took help of NixOS to write some package definitions for myself.
By the way, within Guix I can also run a
nix-daemon (if I want).
No way, a Guix user in the wild???!! I didn’t think you exist! Any opinion you have as to why guix over NixOS other than GNU philosophy and liking Lisp over Nix?
Not OP, but I switched from (many years of) openSUSE Tumblweed to Guix System a few months ago, and at work I’ve started using NixOS. I completely love them both, and they of course share the same overall design. But there are differences.
Most notably Guix uses a full featured programming language for it’s configuration. This is a bonus for me, since it’s more useful to know the language overall, but I also enjoy Lisp dialects a lot. I think this is a bigger bonus if you, like me, are already invested in Emacs as you editor of choice.
Guix is also a loooot better documented, compared to Nix. Try finding info about all available services/programs for Nix for example. It’s kind of a nightmare. This also compounds a bit by the fact that Nix can handle the system/hardware configuration of NixOS, but for home configuration you’re reliant on a seperate system, home-manager. They of course have their own websites and sources of documentation. Compare this to Guix, where Guix itself handles both system and home configuration, and services are documented the same way on the same website.
Nix, however, have a lot more packages already packaged for it. This is especially relevant if you, like me, work exclusivly with Kubernetes, for example. kubectl/openshift-cli/kubeseal/etc for Guix? Package yourself or download the binaries. On Nix all of these are already packaged.
Nix is also bigger and have had more momentum, so I also just think it’s an “easier” choice if you want to use a common system between colleagues. Many if mine are Vim users and might not find Guix immediately more interesting than Nix.
I also think Guix has a more focused way of doing things. Guix is a lot better at actually building all of it’s packages from source, whereas Nix “often” just downloads tarballs in the build system and calls it a day. But, that might also have made it historically easier to package software for Nix.
There are more differences than that as well, but those were the ones on top of my head.
They are both truly great though! I’d much rather use any of them than almost any other Linux distro. :)
For me, it was the docs and seemingly being more straightforward. Nix always seemed like something I’ll never understand because of it’s many ways to do things while having hard to follow docs at times, but guix made sense to me. Nix obviously has it’s clear upsides over guix - both are good!
I have not used NixOS, so can’t compare (in terms of other than GNU philosophy). But I took help of NixOS to write some package definitions for myself.
By the way, within Guix I can also run a
nix-daemon(if I want).