Skip to content

This repository contains most C++ projects combined, flake files and CI scripts

Notifications You must be signed in to change notification settings

NilFoundation/placeholder

Repository files navigation

=nil; Foundation

Discord Telegram Twitter

This repository is a collection of various nil-projects related to zero-knowledge proof. Check out subfolders for more. Supported by =nil; Foundation.

Contents

  1. Structure
  2. Dependencies
  3. Build & test
  4. Contributing
  5. Community
  6. Licence

Structure

root ├── crypto3 ├── debug-tools ├── parallel-crypto3 ├── proof-producer

Dependencies

  • clang (>= 11.0)/GCC (>= 10.0)/MSVC (>= 14.20)
  • cmake (>= 3.6)
  • boost (>= 1.76)

All dependencies managed by nix.

So first install nix using the following command:

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

then allow nix-command and flakes experimental features by adding line

experimental-features = nix-command flakes

in nix configuration file (/etc/nix/nix.conf).

Build & test

To activate Nix development environment:

nix develop

To run all tests:

nix flake check

To build an individual derivation:

nix build -L .#<derivation>

For example:

nix build -L .#proof-producer

To list all available nix-targets, call

nix flake show

For incremental build:

nix develop .#<derivation>
eval "$configurePhase" // automatically move to the build directory
eval "$buildPhase" // build
eval "$checkPhase" // run tests

if you want to build a single target:

nix develop .#<derivation>
eval "$configurePhase" // automatically move to the build directory
ninja <target>

Contributing

See contributing for contribution guidelines.

Community

You can contact us several ways:

  • E-Mail. Just drop a line to [email protected].
  • Telegram Group. Join our Telegram group @nilfoundation and ask any question in there.
  • Discord channel for discussions.
  • Issue. Issue which does not belong to any particular module (or you just don't know where to put it) can be created in this repository. The team will answer that.
  • Discussion Topic (proposal, tutorial request, suggestion, etc). Would be happy to discuss that in the repository's GitHub Discussions

Licence

The software is provided under MIT Licence.

About

This repository contains most C++ projects combined, flake files and CI scripts

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published