2 ms·
>Why the extra effort on the GNU Project's part to create Guix? There are a couple reasons: 1) We believe that unifying the entire system using a general purp
by davexunit 11y ago
>Why the extra effort on the GNU Project's part to create Guix?
There are a couple reasons:
1) We believe that unifying the entire system using a general purpose programming language that allows for the creation of embedded domain specific languages (Scheme) is better than using a domain specific language (the Nix language) and a multitude of other languages behind it (C++, Perl, Python, Bash). Our build scripts and client side code is written in Scheme. Our package and system services are written in Scheme. Our init system is written in Scheme. Our initial RAM disk is written in Scheme. This allows us to have good interoperability and reuse a lot of code in different places.
2) We are committed to providing a fully free GNU/Linux distro as defined by the FSF. NixOS includes proprietary some components.
>What are the advantages over just adopting Nix?
I think that our user and programming interfaces are better. We give more care to making sure package test suites pass and we don't use pre-built binaries from third parties (no blobs, no pre-built minified JavaScript, etc). We have really nice Emacs integration. It's nice to have a system that is fully free by default.
>Doesn't this mean that everything the Nix project packages has to be repackaged for Guix, and vice-versa?
Yes.
With that said, I need to mention that I think Nix is great. Really great. I just like the Guix implementation and philosophy more. Hope this helps.