serai/docs/Getting Started.md
Luke Parker 30b8636641
Update to the latest Substrate commit
Enables building with only the stable toolchain. The nightly toolchain is still
used for clippy in order to access additional checks.
2023-03-31 02:34:52 -04:00

91 lines
1.5 KiB
Markdown

# Getting Started
### Dependencies
##### Ubuntu
```
sudo apt-get install -y build-essential cmake clang-11 git curl python3-pip protobuf-compiler libssl-dev pkg-config
```
### Install rustup
##### Linux
```
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
##### macOS
```
brew install rustup
```
### Install Rust
```
rustup update
rustup toolchain install stable
rustup target add wasm32-unknown-unknown
rustup toolchain install nightly
rustup target add wasm32-unknown-unknown --toolchain nightly
```
### Install Solidity
```
sudo pip3 install solc-select
solc-select install 0.8.16
solc-select use 0.8.16
```
### Install Solidity Compiler Version Manager
```
cargo install svm-rs
svm install 0.8.16
svm use 0.8.16
```
### Install foundry and anvil (for tests)
```
cargo install --git https://github.com/foundry-rs/foundry --profile local --locked foundry-cli anvil
```
### Clone and Build Serai
```
git clone https://github.com/serai-dex/serai
cd serai
cargo build --release
```
### Run Tests
Running tests requires:
- A Bitcoin regtest node
- A Monero regtest node
- A monero-wallet-rpc instance
```
cargo test --all-features
```
### Run Serai in Development Mode
```
./target/release/serai-node --dev
```
### Run Serai with Orchestration
Under `/deploy`, you can find our orchestration components for running the
entire infrastructure of Serai in a local environment using Docker Compose or
Kubernetes.
[Run Serai with Docker Compose](../deploy/README.md)
[Run Serai with Kubernetes](../deploy/kubernetes/README.md)