feat: add a tour of nix

This commit is contained in:
Ryan Yin 2024-02-26 12:14:22 +08:00
parent a08ee35475
commit 859e06e9e1

View File

@ -4,13 +4,13 @@ The Nix language is essential for declaring configurations to be built by Nix. T
The Nix language is a straightforward functional language. If you have some programming experience, it should take you less than 2 hours to grasp its basics.
The community already has a lot of good Nix language tutorials, so I won't remake the wheel.
To get started, I recommend reading the following resources for a solid introduction to the Nix language:
1. [**Nix Language Basics - nix.dev**](https://nix.dev/tutorials/first-steps/nix-language): This tutorial provides a comprehensive overview of the basics of the Nix language.
2. [Nix - A One Pager](https://github.com/tazjin/nix-1p): A one page introduction to the Nix language.
1. You can safely skip the section on `callPackage`/`Overriding`/`Overlays` for now. We will cover it in the next chapter.
3. [Nix Language](https://nixos.org/manual/nix/stable/language/): The official documentation of the Nix language.
1. nix.dev & nix-1p are suitable for starter reading only, and **neither of them fully introduces the full syntax of Nix**. If you encounter a new syntax that you have not come across before, please refer to this official document.
1. [**Nix Language Basics - nix.dev**](https://nix.dev/tutorials/first-steps/nix-language): This tutorial provides a comprehensive overview of the basics of the Nix language, recommended for beginners.
1. [**A tour of Nix**](https://nixcloud.io/tour/?id=introduction/nix): An online interactive tutorial focuses on programming language constructs and how Nix can be algorithmically used to solve problems.
3. [**Nix Language - Nix Reference Manual**](https://nixos.org/manual/nix/stable/language/): The official documentation of the Nix language.
1. nix.dev are suitable for starter reading only, and **neither of them fully introduces the full syntax of Nix**. If you encounter a new syntax that you have not come across before, please refer to this official document.
By going through these materials, you will develop a solid foundation in the Nix language, allowing you to effectively utilize NixOS and Flakes.