This repository contains workshop material intended to teach the
[nix
] ecosystem. That includes: nix
the tool, Nix
the language,
and NixOS
the distribution.
- Why is Nix?
- What problems does it solve?
- Nix core concepts
- Immutable store
- Pure package derivations
- Lazy evaluation
- Reproducibility
- The Nix ecosystem
- Nix packaging
- How to build packages
- Distributing software
- Nix module system
- Creating system configuration
- Building module abstractions
Component | Details |
---|---|
introduction |
Outline the basics of what nix is, why it exists, and how it works |
nix-modules |
Outline of how the NixOS module system works, how to write custom modules, and how to use all this for basic system configuration |
advanced-concepts |
A set of short explorations of more advanced principles, in package building, module usage, and the Nix tools themselves |
You can compile the slide deck by using Nix by simply running
nix-build
. If you don't have Nix installed, you need the following
dependencies:
- make
- pandoc
Then you can simply run make
.
Are you, or your company interested in learning about how to use Nix in your workflow? Already using Nix and want to get new employees up to speed? Remote and on-site trainings available! contact me.
This workshop material was created for, and sponsored by nyantec!
This material is licensed under CC-BY-SA 3.0. A copy of the full license text is included in this repository.