ExNar

An Elixir Library to create + unpack Nix Archives. Only directly serializes + deserializes, with no intermediate state that can be inspected (PRs welcome :)).

Usage

# Deserialize
Deserialize.deserialize! ("/path/to/.nar", "")
#=> :ok
# Serialize.serialize!("/path/to/serialize")
#=> <<13,0,0,0,...>>

Installation

If available in Hex, the package can be installed by adding ex_nar to your list of dependencies in mix.exs:

def deps do
[
{:ex_nar, "~> 0.1.0"}
]
end

Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/ex_nar.

Sources

Thanks to Eelco Dolstra, for the specification The Purely Functional Software Deployment Model, PG 93, Figure 5.2