lbry.go/README.md

69 lines
2.1 KiB
Markdown
Raw Normal View History

2018-05-16 15:43:19 +02:00
[![Build Status](https://travis-ci.org/lbryio/lbry.go.svg?branch=master)](https://travis-ci.org/lbryio/lbry.go)
# LBRY in Golang
lbry.go is a set of tools and projects implemented in Golang. See each subfolder for more details
## Installation
No installation required for lbry.go
## Usage
See individual subfolders for usage instructions
## Running from Source
### Go
Make sure you have Go 1.10.1+
- Ubuntu: https://launchpad.net/~longsleep/+archive/ubuntu/golang-backports or https://github.com/golang/go/wiki/Ubuntu
- OSX: `brew install go`
### Lbrycrd
_not strictly necessary, but recommended_
- Install lbrycrdd (https://github.com/lbryio/lbrycrd/releases)
- Ensure `~/.lbrycrd/lbrycrd.conf` file exists with username and password.
If you don't have one, run:
```
mkdir -p ~/.lbrycrd
echo -e "rpcuser=lbryrpc\nrpcpassword=$(env LC_CTYPE=C LC_ALL=C tr -dc A-Za-z0-9 < /dev/urandom | head -c 16 | xargs)" > ~/.lbrycrd/lbrycrd.conf
```
- Run `./lbrycrdd -server -daemon -txindex`. If you get an error about indexing, add the `-reindex` flag for one run. You will only need to
reindex once.
### building lbry.go
clone the repository
```
go get -u github.com/lbryio/lbry.go
cd "$(go env GOPATH)/src/github.com/lbryio/lbry.go"
```
run `make` from the root directory to build the binary
## Contributing
Contributions to this project are welcome, encouraged, and compensated. For more details, see [lbry.io/faq/contributing](https://lbry.io/faq/contributing)
GO strictly enforces a correct syntax therefore you might need to run `go fmt` from inside the each working directory.
When using an IDE like `Goland` you should set up file watchers such as to automatically format your code and sort your imports.
![alt text](img/filewatchers.png "file watchers")
## License
See [LICENSE](LICENSE)
## Security
We take security seriously. Please contact security@lbry.io regarding any issues you may encounter.
Our PGP key is [here](https://keybase.io/lbry/key.asc) if you need it.
## Contact
The primary contact for this project is [@nikooo777](https://github.com/nikooo777) (niko@lbry.io)