2025-02-03, 15:15–15:40, Niks (B.1.036)
The module system is a powerful Nix DSL for writing high-level abstractions. In this talk, I'll give you an introduction to the module system, showcasing its wide range of use cases: Starting from simple development shells, over dotfile and system management, all the way to multi-host abstractions.
Nix derivations (aka build recipes) allow you to declaratively specify builds and configuration, making them forever repeatable for everybody. The purely functional Nix language is used to write such derivations, which is done extensively for Nixpkgs, one of the largest and most active package repositories.
However, the Nix language is very bare-bones, it's really just a lambda calculus with syntactic sugar. The so-called module system, a Nix DSL, is well-known to enable creating higher-level abstractions, forming the basis of NixOS.
In this talk, I'll give you an introduction to the module system, showcasing its wide range of use cases: Starting from simple development shells, over dotfile and system management, all the way to multi-host abstractions.
Silvan (aka infinisil) is an active member of the Nix community, focusing on high-impact improvements to the ecosystem, automation and NixOS modules.