We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Units of composition: recipes, overlays, and packages

Formal Metadata

Title
Units of composition: recipes, overlays, and packages
Title of Series
Number of Parts
798
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
This talk introduces a way to talk about and structure large and small projects. There are common patterns in use in Nixpkgs that are there to provide a great deal of power and flexibility, but they are often challenging for beginners. This talk examines an approach that can smoothly introduce the relevant concepts and provide an easier learning curve. Recipes are those things we find throughout Nixpkgs and are normally targets of callPackage. We need a name for these, in order to talk about them, manage, manipulate, inherit, and organize them. By adding this to our vocabulary and to the standard output of the flake schema, we gain many benefits. This talk will - introduce and describe callPackage - present overlays and the potential pitfalls - describe package sets within Nixpkgs (perlPackages, pythonPackages, etc) - propose a recommended flake structure - present a solution to the “system” problem - present a solution to lockfile bloat.