Skip to content
Ethereum on Tendermint PoS with dynamic validators
Branch: dukei-develop-…
Clone or download
Pull request Compare This branch is 30 commits ahead, 8 commits behind cosmos:develop.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Fix build failure on Mac OS (#358) Dec 7, 2017
.github
app Обновлен контракт валидаторов, версия Mar 15, 2019
cmd Tuned etherus genesis block Mar 25, 2019
docs Make Etherus to run with Tendermint 0.22.8 Aug 14, 2018
ethereum Обновлен контракт валидаторов, версия Mar 15, 2019
scripts
setup
strategies Fixed Validators contract Aug 17, 2018
tests
types
version
.codecov.yml Merge and squash Unstable (minus #222 and #217) to Unstable2 Aug 8, 2017
.editorconfig
.gitignore
.travis.yml
CHANGELOG.md
Gopkg.lock updated ethereum Mar 21, 2019
Gopkg.toml Dynamic validators should work now Aug 20, 2018
LICENSE add missing info to license [ci skip] [circleci skip] (Fixes #52) Apr 7, 2017
Makefile Changed build script Aug 21, 2018
README.md Added Travis CI build script Mar 17, 2019

README.md

Etherus Build Status

Ethereum powered by Tendermint consensus with dynamic validators

Features

Etherus is fully compatible with the standard Ethereum tooling such as geth, mist, truffle and remix. Please install whichever tooling suits you best.

Installation

Get binary package for your OS. https://github.com/Etherus-org/etherus/releases/tag/v1.8.6-alpha

Run Etherus with Tendermint. On the first run Etherus will create a wallet for you and Tendermint will show you your validator public key. If you want your node to be a validator you should register it on Validators smart contract.

Go to https://wallet.etherus.org/#contracts and choose Validators contract from list. Execute addDeposit method. Specify your validator public key as vPub parameter and your Etherus address as nodeAddr. Send 2500 ETR with this call (otherwise the call will fail). If you don't have ETR you can request them at info@etherus.org.

Validators will became effective after the next block. You will be able to see how your node proposes blocks and gets rewarded at https://explorer.etherus.org

Building from source

For Linux and MacOS:

export GOPATH=$(pwd)
export PATH=$GOPATH/bin:$PATH

For Windows (cmd):

SET "GOPATH=%CD%"
SET "PATH=%GOPATH%/bin;%PATH%"

And for any platform afterall:

git clone -b dukei-develop-f1.8.6 "https://github.com/etherus-org/etherus.git" "src/github.com/ya-enot/etherus"
git clone -b dukei-develop "https://github.com/etherus-org/tendermint.git" "src/github.com/tendermint/tendermint"
pushd .
cd src/github.com/ya-enot/etherus
make check install
cd ../../tendermint/tendermint
make check install
popd

Running Etherus

Initialisation

To get started, you need to initialise the genesis block for tendermint core and go-ethereum. We provide initialisation files with reasonable defaults and money allocated into a predefined account. If you installed from binary or docker please download these default files here.

You can choose where to store the ethermint files with --datadir. For this guide, we will use ~/.ethermint, which is a reasonable default in most cases.

Before you can run ethermint you need to initialise tendermint and ethermint with their respective genesis states. Please switch into the folder where you have the initialisation files. If you installed from source you can just follow these instructions.

etherus --datadir ~/.etherus --with-tendermint init

which will also invoke tendermint init --home ~/.etherus/tendermint. You can prevent Tendermint from being starting by excluding the flag --with-tendermint for example:

etherus --datadir ~/.etherus init

and then you will have to invoke tendermint in another shell with the command:

tendermint init --home ~/.etherus/tendermint

For simplicity, we'll have ethermint start tendermint as a subprocess with the flag --with-tendermint:

etherus --with-tendermint --datadir ~/.etherus --rpc --rpcaddr=0.0.0.0 --ws --wsaddr=0.0.0.0 --rpcapi eth,net,web3,personal,admin

Note: The password for the default account is 1234.

There you have it, Ethereum on Tendermint!

Contributing

Thank you for considering making contributions to Ethermint!

Check out the contributing guidelines for information on getting starting with contributing.

See the open issues for things we need help with!

Support

Check out the community page for various resources.

License

GPLv3

Before you can run ethermint you need to initialise tendermint and ethermint with their respective genesis states. Please switch into the folder where you have the initialisation files. If you installed from source you can just follow these instructions.

ethermint --datadir ~/.ethermint --with-tendermint init

which will also invoke tendermint init --home ~/.ethermint/tendermint. You can prevent Tendermint from being starting by excluding the flag --with-tendermint for example:

ethermint --datadir ~/.ethermint init

and then you will have to invoke tendermint in another shell with the command:

tendermint init --home ~/.ethermint/tendermint

For simplicity, we'll have ethermint start tendermint as a subprocess with the flag --with-tendermint:

ethermint --with-tendermint --datadir ~/.ethermint --rpc --rpcaddr=0.0.0.0 --ws --wsaddr=0.0.0.0 --rpcapi eth,net,web3,personal,admin

Note: The password for the default account is 1234.

There you have it, Ethereum on Tendermint! For details on what to do next, check out the documentation

Contributing

Thank you for considering making contributions to Ethermint!

Check out the contributing guidelines for information on getting starting with contributing.

See the open issues for things we need help with!

Support

Check out the community page for various resources.

License

GPLv3

You can’t perform that action at this time.