This document will explain how to install, test, and run Nimbus on your local machine. For a full guide, see the Nimbus for Newbies post.
- install Nim
- be on a command-line friendly system (i.e. access to Terminal / Console / Cmder / Git Bash / Powershell)
Alternatively, download our pre-configured Vagrant box.
Note: the Nimbus build system uses Makefiles to make the process identical across platforms, easy to update, and compatible with any OS. We don’t use Nim’s package manager Nimble because it’s fundamentally broken.
git clone [email protected]:status-im/nimbus
To run Nimbus, we’ll need the RocksDB database and a newer version of Nim. On OS X, execute:
brew install rocksdb
On Linux, this should do it:
sudo apt-get install librocksdb-dev rocksdb # or your own Linux distribution's equivalent
On Windows, please first make sure you have
make installed - either in the form of
MinGW32make.exe via MinGW website or regular old make installed through Git Bash or a package manager like Chocolatey:
choco install make
Note - Windows requires you to add programs you want to be able to execute from anywhere on your machine to your PATH environment variable. This is done by simply opening the Start Menu, searching for “Env”, selecting “Edit the system environment variables”, clicking on Environment Variables in the popup, and then editing the PATH variable in the list by adding a new entry that corresponds to the folder into which you installed your version of
make (Choco takes care of this for you, only applies if you installed manually). This is what mine looks like.
This downloads the rocksdb and sqlitedb DLL files into
nimbus/build so that the built program can read them.
In the content below,
make will refer to
mingw32.exe, depending on which you’re using. Make the change to your commands accordingly.
To build Nimbus:
On OS X / Linux:
The Nimbus client will now be in
build/nimbus on any OS and can be run with the same command:
It should synchronize up to block 49439 and then crash, as mentioned above. Look at flags and options with
To test, run:
To update the source files for a rebuild:
To clean the slate and start with a fresh build:
To run and test the Ethereum 2.0 version of Nimbus (the network simulation):
You should now see attestations and blocks being produced and confirmed and a bunch of other details from the nodes as they do their thing.
Congrats! You’re now running Nimbus for both the Ethereum 1.0 platform, and the coming Ethereum 2.0.