Add nlpn readme (#718)

* Do not run nlpn CI on md files in nlpn folder

* Add nlpn README.md
This commit is contained in:
Kim De Mey 2021-06-17 17:05:00 +02:00 committed by GitHub
parent 1836d725e9
commit e7745a6456
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 89 additions and 2 deletions

View File

@ -2,10 +2,10 @@ name: nlpn CI
on: on:
push: push:
paths: ['nlpn/**', '.github/workflows/nlpn.yml', 'vendor/**', 'Makefile', paths: ['nlpn/**', '.github/workflows/nlpn.yml', 'vendor/**', 'Makefile',
'nimbus.nimble'] 'nimbus.nimble', '!nlpn/**/*.md']
pull_request: pull_request:
paths: ['nlpn/**', '.github/workflows/nlpn.yml', 'vendor/**', 'Makefile', paths: ['nlpn/**', '.github/workflows/nlpn.yml', 'vendor/**', 'Makefile',
'nimbus.nimble'] 'nimbus.nimble', '!nlpn/**/*.md']
jobs: jobs:
build: build:

87
nlpn/README.md Normal file
View File

@ -0,0 +1,87 @@
# Nimbus Light Portal Network Client
[![nlpn CI](https://github.com/status-im/nimbus-eth1/actions/workflows/nlpn.yml/badge.svg)](https://github.com/status-im/nimbus-eth1/actions/workflows/nlpn.yml)
![Stability: experimental](https://img.shields.io/badge/stability-experimental-orange.svg)
[![License: Apache](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)
[![Discord: Nimbus](https://img.shields.io/badge/Discord-Nimbus-blue.svg)](https://discord.gg/XRxWahP)
[![Status: #nimbus-general](https://img.shields.io/badge/Status-nimbus--general-blue.svg)](https://join.status.im/nimbus-general)
## Introduction
This folder holds the development of the Nimbus client implementation supporting
the Portal Network. The Portal Network is a project still heavily in research
phase and fully in flux. This client is thus still highly experimental.
Current status of specifications can be found in the
[stateless-ethereum-specs repository](https://github.com/ethereum/stateless-ethereum-specs/blob/master/portal-network.md).
## Development Updates
To keep up to date with changes and development progress, follow the
[Nimbus blog](https://our.status.im/tag/nimbus/).
## How to Build & Run
### Prerequisites
- GNU Make, Bash and the usual POSIX utilities. Git 2.9.4 or newer.
### Build nlpn client
```bash
git clone git@github.com:status-im/nimbus-eth1.git
cd nimbus-eth1
make nlpn
# See available command line options
./build/nlpn --help
# Example command: Run the client and connect to a bootnode.
./build/nlpn --log-level:debug --bootnode:enr:<base64 encoding of ENR>
```
### Update and rebuild nlpn client
```bash
# From the nimbus-eth1 repository
git pull
# To bring the git submodules up to date
make update
make nlpn
```
### Windows support
Follow the steps outlined [here](../README.md#windows) to build nlpn on Windows.
## For Developers
When working on this repository, you can run the `env.sh` script to run a
command with the right environment variables set. This means the vendored
Nim and Nim modules will be used, just as when you use `make`.
E.g.:
```bash
# start a new interactive shell with the right env vars set
./env.sh bash
```
More [development tips](../README.md#devel-tips)
can be found on the general nimbus-eth1 readme.
The code follows the
[Status Nim Style Guide](https://status-im.github.io/nim-style-guide/).
## License
Licensed and distributed under either of
* MIT license: [LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT
or
* Apache License, Version 2.0, ([LICENSE-APACHEv2](LICENSE-APACHEv2) or http://www.apache.org/licenses/LICENSE-2.0)
at your option. These files may not be copied, modified, or distributed except according to those terms.