Hi!

I was in almost the situation a few months ago and I spent a few weeks trying both NixOS and Guix.

To me, Nix felt more like a 'minimum viable product' for a startup company - it works well but seems to suffer from its own success - practicality is given priority over engineering cleanliness.

Guix felt the opposite - package installations and upgrades felt way slower (it takes much longer to download, requires more frequent lengthy compilation) , not to mention that it is outright useless without proprietary packages augmented by nonguix, etc, if you happen to have critical hardware unsupported by LibreLinux, the kernel that has been stripped of proprietary code.

I am no expert in neither Nix nor Guix but toward the end of my analysis (I have since moved to another assignment), I thought Guix would be better for the company because of its superior design (I thought)

I watched this NixOS roadmap video https://youtu.be/8M6yvJC00J4 and thought it might be running into many issues that could be more easily addressed by Guix.   I think one thing that was discussed was that Nix cannot manipulate nested Nix expressions (in order to use Nix as a replacement for Make)

I don't know enough about Guix to see if it directly solves that problem but I thought the idea of using Scheme was precisely to avoid reinventing the wheel.

I think Guix packages are easier to understand (I compared package definitions of Guix and Nix) and Guix has a far better reference manual compared to Nix.   But I have not found a good introduction guide to Guix yet.   I was following https://guix.gnu.org/cookbook/en/html_node/Direct-checkout-hacking.html  but it was far from complete.  To be fair, https://nixos.org/guides/nix-pills/ has a lot of outdated information as well...

I wish I could be more precise but this is all I know and I appreciate your question!!!

Cheers,
Yasu

On Oct 27, 2020, at 01:15, zimoun <zimon.toutoune@gmail.com> wrote:

Dear,

On Mon, 26 Oct 2020 at 13:42, Taylan Kammer <taylan.kammer@gmail.com> wrote:

On 26.10.2020 11:41, zimoun wrote:

I think pack -f docker is going to be the "killer feature" in this case.

Well, the following doesn't seem so complicated either actually:

  https://nix.dev/tutorials/building-and-running-docker-images.html

But I really like how 'guix pack' can generate a tarball just as well,
which could be deployed and tested anywhere...

I'll need to make a few more comparisons.

Do not miss the '--save-provenance' option. ;-)
It saves the profile/manifest which can be used to rebuild one
manifest.scm file.  You could be interested in [1].  I am running out
of time, but the profile/manifest->manifest.scm converter could be
nice to have. :-)

1:<https://lists.gnu.org/archive/html/guix-devel/2020-09/msg00221.html>


All the best,
simon