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

26 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.

3 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:

2 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.

1 Like

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