The Nix language is designed for conveniently creating and composing derivations – precise descriptions of how contents of existing files are used to derive new files.