From a0be63357f5ba56f2c5cfe080c04d74c57528d36 Mon Sep 17 00:00:00 2001 From: Bruno Skvorc Date: Sat, 27 Apr 2019 22:28:52 +0200 Subject: [PATCH] Update instructions with Windows --- source/docs/building.md | 13 +++++++++---- source/docs/index.md | 2 +- source/docs/t0.md | 14 +++++++++++++- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/source/docs/building.md b/source/docs/building.md index c9d5475..7d30d78 100644 --- a/source/docs/building.md +++ b/source/docs/building.md @@ -7,14 +7,19 @@ This document will explain how to install, test, and run Nimbus on your local ma ## Installing prerequisites -_Right now, Nimbus is only available on non-Windows operating systems. We're working on Windows support. If you don't have a Linux or OS X machine, please consider using our [pre-configured Vagrant box](https://github.com/status-im/nim-vagrant)._ +If you are on Windows, instead of using the commands below you can also use our [pre-configured Vagrant box](https://github.com/status-im/nim-vagrant) if you prefer to run things in a Linux environment. -We use Makefiles to quickly and easily build our binaries. Before you begin, please make sure you have [RocksDB installed](https://github.com/status-im/nimbus#rocksdb). Then, run: +We use Makefiles to quickly and easily build our binaries. Before you begin, please make sure you have [RocksDB installed](https://github.com/status-im/nimbus#rocksdb). On Windows, you can skip this step and instead rely on the "WINDOWS ONLY" part of the process below: ```bash git clone https://github.com/status-im/nimbus cd nimbus -make update deps # Downloads and builds submodules, dependencies, and even Nim itself +make update # Downloads and builds submodules, dependencies, and even Nim itself + +# >>> WINDOWS ONLY <<< +make fetch-dlls # WINDOWS ONLY +# >>> WINDOWS ONLY <<< + ./env.sh bash # Optional, but useful. Sets the current shell's environment to use the version of Nim language the `make update deps` command just built ``` @@ -82,7 +87,7 @@ Use the output of the help command to pass desired values to the sim - change nu ### Nimbus Ethereum 2.0 Testnet -We have a publicly available testnet running between Nimbus nodes. Read all about it and learn how you can join it [here](https://our.status.im/the-nimbus-mvp-testnet-is-here/). +We have a publicly available testnet running between Nimbus nodes. Read all about it and learn how you can join it [here](/docs/t0.html). --- diff --git a/source/docs/index.md b/source/docs/index.md index 6efb996..a8430fa 100644 --- a/source/docs/index.md +++ b/source/docs/index.md @@ -10,7 +10,7 @@ For a more comprehensive introduction, please read our Nimbus for Newbies post o ## Requirements -[Nim](https://nim-lang.org/) is an efficient, general-purpose systems programming language with a Python-like syntax that compiles to C. Nim will allow us to implement Ethereum rapidly and to take advantage of the mature C-language tooling: in compilation of machine code, and in the analysis of static code. +[Nim](https://nim-lang.org/) is an efficient, general-purpose systems programming language with a Python-like syntax that compiles to C. Nim will allow us to implement Ethereum rapidly and to take advantage of the mature C-language tooling: in compilation of machine code, and in the analysis of static code. With Ethereum research currently modeled in Python, the end result of implementing in Nim should be code that: diff --git a/source/docs/t0.md b/source/docs/t0.md index a3cacbc..1d3326f 100644 --- a/source/docs/t0.md +++ b/source/docs/t0.md @@ -7,13 +7,20 @@ This document is a very short guide on how to join our testnet. For a full expla ## Joining Nimbus Testnet 0 -Here is the full process if you're starting from scratch, without even Nim installed (you still need RocksDB though, so [install that first](https://github.com/status-im/nimbus#rocksdb)): +_Note: in the below commands, the command `make` is universal to *nix systems like Linux / OS X. On Windows, it becomes available with [Git Bash](https://git-scm.com/download/win) if you install Git for Windows, but you can also install [MinGW64](https://github.com/status-im/nimbus#windows) (recommended)._ + +Here is the full process if you're starting from scratch, without even Nim installed (you still need RocksDB though, so [install that first](https://github.com/status-im/nimbus#rocksdb)), unless you're on Windows, in which case the "WINDOWS ONLY" part below will handle the problem for you: ```bash # Ensure you have rocksdb installed before running this! git clone https://github.com/status-im/nimbus cd nimbus make update # this might take a few minutes + +# >>> WINDOWS ONLY <<< +make fetch-dlls # WINDOWS ONLY +# >>> WINDOWS ONLY <<< + cd vendor/nim-beacon-chain # All Ethereum 2.0 functionality is in here make testnet0 ./build/testnet0_node # this launches the testnet0-specific node you just built @@ -24,6 +31,11 @@ Here is the full process if you've already run testnet0 before but might be stuc ```bash cd nimbus make update # update dependencies + +# >>> WINDOWS ONLY <<< +make fetch-dlls # WINDOWS ONLY +# >>> WINDOWS ONLY <<< + cd vendor/nim-beacon-chain make clean-testnet0 testnet0 # clean cache and rebuild binary ./build/testnet0_node # this launches the testnet0-specific node you just built