Nix Ecosystem Mind Map

My mind map of Nix Ecosystem

Nix Ecosystem Mind Map:
Full

Mid

Small

Roots

Nix Support Mind Map:
Full

Flakes Mind Map:
Full

Mid

Simple

My learning roadmap

Edit 2: more links
Edit 4: thumbs
Edit 5: roadmap

30 Likes

You might add GitHub - nix-community/nix-on-droid: Nix-enabled environment for your Android device. [maintainers=@t184256,@Gerschtli] to that.

4 Likes

mkShell is a wrapper around mkDerivation, maybe it would be better to link them together?

3 Likes

Thank you, add it and system-manager also.

Changed mkShell/MkDerivation relation.

And grouping repository by colorĀ¹,

I didnā€™t like the color of nixpkgs, but this way we have a better distinction between nix and nixpkgs


Ā¹ - there is a small set of colors, 8, where 2 I reserved for Nix and Nixpkgs, so have to reuse colors in unrelated tools.

2 Likes

This should be added to the documentation!

3 Likes

Any idea for how to make it as a code to accept PR?

I think you need to talk to the documentation team about this.

1 Like

I recently learned that there is more IaC work around nix than just nixops.
Iā€™m particularly intrigued by terraform-nixos, but thereā€™s a lot more:

1 Like

Thanks for your feedback @iFreilicht
Included terraform-nixos
Except for Terranix, others are more CD than IaC,
Included them as ā€œOthers Deployment Toolsā€ pointing to ā€œAwesome Nixā€

Included Some Project To Nix also linking awesome nix, for xToNix projects.

I may split them (Other Deployments, xToNix, Shell Nix) in different nodes some day.

4 Likes

Iā€˜d love to see something like this in official documentation, but that will need infrastructure. The latest state of discourse is that the only thing that will likely scale is graphviz.

2 Likes

I exported it to dot mm and then converted it to dot file, but it didnā€™t look good, maybe I should handmade from scratch

example

1 Like

For reference, hereā€™s what the developer workshop turned out: A map of the Nix ecosystem

It would be rather interesting to generate some of this automatically, as far as possible.

4 Likes

Thank you, I liked the Immutableria (map of GitHub).

My problem with doing this automatically is ā€œData Vizā€.
Computers are cool for quantity, but not quality in the subjective problem of how do we present this to newbies.
Maybe this new AI/LLM trend could do better, but I didnā€™t find any for data viz.
To be honest, I am not sure If I am doing a better job than a computer, since I may be suffering from ā€œmonad curseā€. :smiley:

3 Likes

I discovered that I can add contributors, anyone interested?

Also included:

  • Docs (Blogs/Books/Videos)
  • Tools (LSP/Linters/Tests/Viz)
  • Support (Commercial/Community)
1 Like

I realized that full mind map for newbie is just too scary and confuse.

So now Iā€™m trying to make it incremental

Nix, Nix, NixPkgs And NixOS

Nix, NixOS and HomeManager

Nix with some internals

That escalated quickly

6 Likes

I would appreciate any feedback.

https://coggle.it/diagram/ZUFyYycP9Med8XQF/t/nix-package-manager/bd4cc12e1c83c3d32e1af6e3f044fb1b390c8b7035e22c40e760fe39b42832a4#65417263270ff4c79df17409

2 Likes

I think this looks very nice, and needs review by people more deeply involved such as @infinisil @roberth @ericson2314 to make absolutely sure itā€™s Technically Correct. The general direction is so good that I already see these pictures spreading all over the internet. If theyā€™re only subtly wrong, they will be quite misleading, and the confusion that will follow will stay ingrained into many peopleā€™s thinking for a long time. And the first impression is really hard to overrule. Unfortunately Iā€™m speaking from experience here, as documentation team members @proofconstruction @alejandrosame will attest.

Iā€™d also request a final polish on the wording and orthography. Then it should go to the marketing team @garbas @Arsleust to use in outreach. The small graphs could serve for great social media reminder posts.

5 Likes

@Eriim did I nice visualization about his nixos configs.

Isnā€™t generalized like my graphs, but is a good source of inspiration.

Eriim, would you mind taking some snapshots of your journey through wonderland?

Isnā€™t a problem, if youā€™re not a cartographer or nix specialist. I always think we are suffering from Nix incantation of Monad curse

It is said that thereā€™s a curse with Monadsā€¦ When you finally understand it, youā€™ll lose the ability to explain it to others.

And also:

A map is not the territory it represents, but, if it has a similar structure to the territory, which accounts for its usefulness.
ā€” Alfred Korzybski, Science and Sanity, p. 58

metro/subway visualization of this

3 Likes

I appreciate the kind words!

I would love to take a stab at something like this, I make no guarantee I can approach the complexity of the beautiful ecosystem graphs that are above in this thread.

But I can certainly document my learning journey more thoroughly.

2 Likes

This mindmap (and the several simplified variations) have been very useful to me! Thank you very much for sharing. I didnā€™t know that people are writing books about nix/nixOS!

Something like this should definitely be part of the official documentation (though probably should be a minimal version, or in alternative, adynamic mindmap where the main nodes are initially closed and the user could open to explore more and more).

1 Like