The “What’s missing” section is on point. There are a lot of tutorials for helping someone learn the basics of Nix and build Baby’s First Package. There are not many tutorials about how to package real software you are actually developing. I think this is because it is (relatively) easy to explain what attrsets are or how to type nix run some-flake and press enter, and it is hard to explain what LD_LIBRARY_PATH is, or how Python environments are built, or why you should have known to apply this .patch file at that step, etc. It is, in the words of the authors of Zero to Nix, “fun and exciting to make a splash” by writing a completely new Nix 101 tutorial. That’s why we have half a dozen Nix 101s, very little Nix 201, and Nix 301 is searching GitHub for code snippets that solve a problem adjacent to yours.
It’s exciting to think that a zero-to-flakes approach is finally viable for newcomers. I’ll have to try a flakes-first approach on my next machine. Thanks for including deep links.
Hey! Thanks for documenting your experience, it was part of the inspiration for this series. I was just referring to your series the other day trying to understand what all is inside stdenv. It’s super helpful that you linked to Internet Archive since the current manual is completely different to the one you were going through at the time.
The “What’s missing” section is on point. There are a lot of tutorials for helping someone learn the basics of Nix and build Baby’s First Package. There are not many tutorials about how to package real software you are actually developing. I think this is because it is (relatively) easy to explain what attrsets are or how to type
nix run some-flake
and press enter, and it is hard to explain whatLD_LIBRARY_PATH
is, or how Python environments are built, or why you should have known to apply this.patch
file at that step, etc. It is, in the words of the authors of Zero to Nix, “fun and exciting to make a splash” by writing a completely new Nix 101 tutorial. That’s why we have half a dozen Nix 101s, very little Nix 201, and Nix 301 is searching GitHub for code snippets that solve a problem adjacent to yours.It’s exciting to think that a zero-to-flakes approach is finally viable for newcomers. I’ll have to try a flakes-first approach on my next machine. Thanks for including deep links.
Oh yay! I’ve always wondered what this journey would look like now that flakes are widely available.
Good luck out there :)
Hey! Thanks for documenting your experience, it was part of the inspiration for this series. I was just referring to your series the other day trying to understand what all is inside
stdenv
. It’s super helpful that you linked to Internet Archive since the current manual is completely different to the one you were going through at the time.