Nix:AFunctionalPackageManager

Stc
Date: 2010-01-21

Time: 12:00

Room: BBL room 079

Speaker: Paul Visschers

Title: Nix: a functional package manager

Abstract

One of the most useful features of most Linux distributions is their package manager. This installs, updates and removes packages (which usually contain programs, libraries and/or services) and handles dependencies between them. Most package managers use a stateful approach to this, destructively updating packages as they are upgraded. This introduces similar problems to those in stateful (imperative) programming.

Nix is a package manager that instead uses a functional approach. In this talk I will discuss the benefits of this approach, describe how Nix works under the hood, how the same approach is used and extended in the Linux distribution NixOS? . I will also talk about recent work, such as the new module system.