# ExNar
An Elixir Library to create + unpack Nix Archives. Only directly serializes + deserializes, with no intermediate state that can be inspected (PRs welcome :)).
## Usage
``` elixir
# Deserialize
Deserialize.deserialize! ("/path/to/.nar", "")
#=> :ok
# Serialize.serialize!("/path/to/serialize")
#=> <<13,0,0,0,...>>
```
## Installation
If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `ex_nar` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:ex_nar, "~> 0.1.0"}
]
end
```
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). 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](https://edolstra.github.io/pubs/phd-thesis.pdf)