GithubHelp home page GithubHelp logo

isabella232 / dapptools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vulcanize/dapptools

0.0 0.0 0.0 24.62 MB

Dapp, Seth, Hevm, and more

Home Page: https://dapp.tools

Shell 16.01% Makefile 0.48% Nix 8.01% Python 0.74% JavaScript 1.65% Go 2.80% Haskell 63.47% Emacs Lisp 1.63% C 1.23% CSS 0.06% HTML 0.02% Dockerfile 0.33% C++ 1.35% Solidity 2.20%

dapptools's Introduction

Dapp tools by DappHub Chat

Hello!

This repository contains the source code for several Ethereum tools hand-crafted and maintained by DappHub, along with dependency management, courtesy of Nix.

Contents:

  • Dapp - all you need Ethereum development tool. Build, test, debug & deploy solidity contracts.
  • Seth - Ethereum CLI. Query contracts, send transactions, follow logs, slice & dice data.
  • Hevm - Ethereum evaluator. Fully complient Haskell EVM implementation.
  • Ethsign - sign Ethereum transactions from a local keystore.

Installation

Install Nix if you haven't already:

# user must be in sudoers
curl -L https://nixos.org/nix/install | sh

# Run this or login again to use Nix
. "$HOME/.nix-profile/etc/profile.d/nix.sh"

Then install dapptools:

curl https://dapp.tools/install | sh

Upgrading geth-statediff

  1. Set version at src/go-ethereum-statediff/default.nix line 5

  2. Get sha256 hash using

    nix-prefetch-url https://github.com/vulcanize/go-ethereum/releases/download/${version}/geth-linux-amd64
    

    Replace ${version} with correct geth-statediff version. For example:

    > nix-prefetch-url https://github.com/vulcanize/go-ethereum/releases/download/v1.10.3-statediff-0.0.22/geth-linux-amd64
    [39.4 MiB DL]
    path is '/nix/store/9da7jqjw52lhl9cr6an8m4c478rg6yn6-geth-linux-amd64'
    1jnc96ly0qi40j8dlgip520n83gfrbv30bqdk9h5fslxzcwhf0yj
    

    1jnc96ly0qi40j8dlgip520n83gfrbv30bqdk9h5fslxzcwhf0yj is sha256 hash. Set it at src/go-ethereum-statediff/default.nix line 8

  3. Bump versions at

    • src/dapp/libexec/dapp/dapp---version
    • src/dapp/default.nix line 7

Installing custom solc versions

You can specify a custom solc version to run within dapp with dapp --use solc:x.y.z test, but you can also install any supported solc "standalone" (i.e. add it to your $PATH) with:

nix-env -iA solc-versions.solc_x_y_z \
  -if https://github.com/dapphub/dapptools/tarball/master

(NOTE: if you haven't installed dapptools with the one-line installer, you'll have to manually pass substituters in the command above, or configure Cachix manually, to avoid compilation)

For a list of the supported solc versions, check ./nix/solc-versions.nix.

Versions of solc that haven't yet landed in nixpkgs can be found under the unreleased key: solc-versions.unreleased.solc_x_y_z.

(NOTE: not all versions are supported on macOS platforms.)

Contributing

Instructions for adding new versions of solc can be found at nix/solc-updates.md


built with nix

dapptools's People

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.