Coder Social home page Coder Social logo

huangyangcong / nix-blockchain-development Goto Github PK

View Code? Open in Web Editor NEW

This project forked from metacraft-labs/nix-blockchain-development

0.0 0.0 0.0 224 KB

A Nix flake offerring blockchain development tools

License: MIT License

Shell 9.59% Nix 90.41%

nix-blockchain-development's Introduction

nix-blockchain-development

A Nix flake offering blockchain development tools

Packages

This repo is provided as a Nix Flake. The packages defined here can be consumed via one of the flake output categories:

  • overlays.default (which you can e.g. apply on top of Nixpkgs)
    • All packages are placed inside the metacraft-labs namespace
    • For example: metacraft-labs.solana
  • packages.${arch}.${pkg} - suitable for use with nix shell

Usage examples

Imperative (ad hoc) with nix shell

# Replace solana with the package you want to use:
nix shell github:metacraft-labs/nix-blockchain-development#solana

Declarative with Nix Flakes dev shell

  • flake.nix:

    {
      # <after>:
      # Opt into `nix-blockchain-development`'s substituter (binary cache).
      # `nixConfig` settings are not transitive so every user of a flake with a
      # custom binary cache must manually include its `nixConfig` settings for
      # substituters and trusted public keys:
      nixConfig = {
        extra-substituters = "https://nix-blockchain-development.cachix.org";
        extra-trusted-public-keys = "nix-blockchain-development.cachix.org-1:Ekei3RuW3Se+P/UIo6Q/oAgor/fVhFuuuX5jR8K/cdg=";
      };
    
      inputs = {
        # <before>:
        # nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.05";
        # flake-utils.url = github:numtide/flake-utils;
    
        # <after>:
        # To ensure all packages from mcl-blockchain will be fetched from its
        # binary cache we need to ensure that we use exact same commit hash of the
        # inputs below. If we didn't, we may either:
        # * end up with multiple copies of the same package from nixpkgs
        # * be unable to use the binary cache, since the packages there where
        #   using different versions of their dependencies from nixpkgs
        mcl-blockchain.url = "github:metacraft-labs/nix-blockchain-development";
        nixpkgs.follows = "mcl-blockchain/nixpkgs";
        flake-utils.follows = "mcl-blockchain/flake-utils";
      };
    
      outputs = {
        self,
        nixpkgs,
        flake-utils,
        mcl-blockchain, # <after>
      }:
        flake-utils.lib.simpleFlake {
          inherit self nixpkgs;
          name = "solana-hello-world";
          shell = ./shell.nix;
          preOverlays = [mcl-blockchain.overlays.default]; # <after>
        };
    }
  • shell.nix:

    {pkgs}:
    with pkgs;
      mkShell {
        packages = [
          metacraft-labs.solana # <after>
        ];
      }

Packages

Circ

Circom

Cosmos-Theta-Testnet

Cargo-Build-BPF

Elrond-Go

โšก Elrond-GO: The official implementation of the Elrond protocol, written in golang.

Elrond-Proxy-Go

๐Ÿ™ Elrond Proxy: The official implementation of the web proxy for the Elrond Network. An intermediary that abstracts away the complexity of Elrond sharding, through a friendly HTTP API.

Erdpy

Elrond python Command Line Tools and SDK for interacting with the Elrond Network (in general) and Smart Contracts (in particular).

Solana-BPF-Tools

Solana-Full-SDK

Solana-Rust-Artifacts

Wasmd

nix-blockchain-development's People

Contributors

petarkirov avatar monyarm avatar huangyangcong avatar zah avatar emilivanichkovv avatar dimo99 avatar dependabot[bot] avatar martinnikov avatar ndobrev avatar avalkov avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.