Tutorials# These sections contains series of lessons to get started. First steps Ad hoc shell environments Reproducible interpreted scripts Towards reproducibility: pinning Nixpkgs Declarative shell environments with shell.nix Nix language basics Overview Names and values Functions Function libraries Impurities Derivations Worked examples References Next steps Packaging existing software A simple project Something bigger References Next steps Working with local files File sets Example project Adding files to the Nix store Difference Missing files Union (explicitly exclude files) Filter Union (explicitly include files) Matching files tracked by Git Intersection Conclusion NixOS Building and running Docker images Building a bootable ISO image Deploying NixOS using Terraform Installing NixOS on a Raspberry Pi NixOS virtual machines Integration testing with NixOS virtual machines Continuous integration with GitHub Actions Cross compilation What do you need? Platforms What’s a target platform? Determining the host platform config Choosing the host platform with Nix Specifying the host platform Cross compiling for the first time Real-world cross compiling of a Hello World example Developer environment with a cross compiler Next steps