A Nix flake for the Versatus Labs ecosystem which provides reproducible build guarantees for Versatus binaries and development environments for building Versatus repositories on supported systems.
Nix is a package manager with a focus on reproducibility and reliability. To get started, choose an installation type at https://nixos.org/download.
For the Nix package manager on non-NixOS distributions, add the following to /etc/nix/nix.conf
:
experimental-features = nix-command flakes
For the Nix operating system, add the following to /etc/nixos/configuration.nix
:
nix.settings.experimental-features = [ "nix-command" "flakes" ];
First, ensure your system is listed under Supported Systems.
To enter a temporary development shell with nix develop
:
nix develop .#protocol-dev
- x86_64-linux
- x86_64-darwin
- aarch64-linux
- aarch64-darwin
.#protocol-dev
- tools necessary for building the Versatus protocol.#lasr-dev
- tools necessary for building the Versatus LASR protocol.#versa-rs
- Rust language tools for building theversatus-rust
quickstart kit.#versa-hs
- Haskell language tools for building theversatus-haskell
quickstart kit
Note: Coming soon:
.#compute-dev
- tools necessary for building the Versatus compute stack (for now this is part of protocol-dev).#versa-py
- Python language tools for building theversatus-python
quickstart kit.#versa-js
- JavaScript language tools for building theversatus-javascript
quickstart kit.#versa-c
- C language tools for building theversatus-c
quickstart kit.#versa-cpp
- C++ language tools for building theversatus-cpp
quickstart kit.#versa-go
- Go language tools for building theversatus-go
quickstart kit