How to mine AfterEther

To mine AfterEther you will need geth.
You can download precompiled geth binary or build it yourself.

1. Using precompiled binary

Step 1. Download AfterEther binary

Only Linux 64 bit binaries are available at this time. They will run on most linux distributions.

Download v1.7.2-bin.tar.gz from our GitHub repository

Step 2. Uncompress the tar file

bash$ tar zxf v1.7.2-bin.tar.gz
bash$ cd v1.7.2-bin

Step 4. Create an account

bash$ ./geth account new

If you already have an account, just copy the account file to $HOME/.afterether/keystore or wherever your datadir is.

Step 5. Start geth

bash$ ./geth console

A Javascript console will be opened, you can execute any javascript function listed in Ethereum Javascript API, including mining functions.
Wait for the blockchain synchronization process to finish before you start mining or using console.

Step 6. Start mining

geth> eth.coinbase=[YOUR ACCOUNT ADDRESS]
geth> miner.start(1)

The first command will set your newly created account to be the owner of all mined coins. The second will start 1 mining thread. To stop mining use miner.stop() function

2. Compiling geth from sources

This step will require C and Go compilers installed on your Linux box.

Step 1. Download Ethereum

Download Ethereum v1.7.2 package

https://github.com/ethereum/go-ethereum/archive/v1.7.2.tar.gz

Untar all the files:

bash$ tar zxf go-ethereum-1.7.2.tar.gz
bash$ cd go-ethereum-1.7.2

Step 2. Download AfterEther patch

Download go-afterether-v1.7.2.diff .

Put this file into go-ethereum directory (you uncompressed in the previous step).

Step 3. Apply AfterEther patch

bash$ patch -p1 < go-afterether-v1.7.2.diff

Step 4. Build Ethereum

Make sure your $GOROOT environment variable points to Go installation on your Linux distribution, and then type:

bash$ make all

If you are compiling with Go v10, change the line #180 in the file build/ci.go to this :

if runtime.Version() < "go1.10.0" && !strings.Contains(runtime.Version(), "devel") {

Or just comment the whole if code block.
Otherwise you will get an error of incompatible Go version

Step 5. Create an account

bash$ build/bin/geth account new

If you already have an account, just copy the account file to $HOME/.afterether/keystore or wherever your datadir is.

Step 6. Start geth

bash$ build/bin/geth console

A Javascript console will be opened, you can execute any javascript function listed in Ethereum Javascript API, including mining functions.

Step 7. Start mining

bash$ eth.coinbase=[YOUR ACCOUNT ADDRESS]
bash$ miner.start(1)

The first command will set your newly created account to be the owner of all mined coins. The second will start 1 mining thread. To stop mining use miner.stop() function