mirror of
https://github.com/foo-dogsquared/wiki.git
synced 2025-01-31 07:57:57 +00:00
b088086b06
Now, it's all under the notebook umbrella. Seems to be appropriate as it is just my notes after all. I also updated some notes from there. I didn't keep track of what it is this time. Something about more learning notes extracted from my "Learning how to learn" course notes and then some. Lack of time and hurriness just makes it difficult to track but it should be under version control already.
1.4 KiB
1.4 KiB
Nix language
Nix can be aptly described as JSON but with functions. While you can make Nix work with basic configurations, you need to know the details if you're creating packages.
You can actively play with the language by running nix repl
.
This is just a personal reference note, the recommended resource for learning the language is the beloved Nix pills.
What is it for?
- most importantly, writing packages
- mostly used for configuring operating systems and create servers quickly with its variety of services
- configuring Nix package manager
Derivations
- Nix derivations are one of the central components of the package manager
mkDerivation
- derivations are more verbose than necessary, most of the packaging process are done with the
nixpkgs
which contains a standard library to easily create derivations with different setups from programming languages and frameworks
TODO Standard library
- nixpkgs has a standard library that comes with functions mitigating against the verbosity for packaging or simply convenience