2018-01-16 16:35:36 +01:00
# LBRYcrd - The LBRY blockchain
2012-12-13 03:27:58 +01:00
2018-04-18 21:32:02 +02:00
![alt text ](lbrycrdd_daemon_screenshot.png "lbrycrdd daemon screenshot" )
2016-01-30 20:30:13 +01:00
2018-01-16 16:35:36 +01:00
LBRYcrd uses a blockchain similar to bitcoin's to implement an index and payment system for content on the LBRY network. It is a fork of bitcoin core.
2016-01-30 20:30:13 +01:00
2018-04-18 21:32:02 +02:00
## Installation
2012-12-13 03:27:58 +01:00
2018-04-18 21:32:02 +02:00
Latest binaries are available from https://github.com/lbryio/lbrycrd/releases. There is no installation procedure, the binaries run as is.
2010-09-23 20:06:50 +02:00
2018-04-18 21:32:02 +02:00
## Usage
2018-04-19 20:54:45 +02:00
The `lbrycrdd` executable will start a LBRYcrd node and connect you to the LBRYcrd network. Use the `lbrycrd-cli` executable
to interact with lbrycrdd through the command line. Help pages for both executable are available through
the "--help" flag (e.g. `lbrycrd-cli --help` ).
2010-12-19 16:39:36 +01:00
2018-04-18 21:32:02 +02:00
### Example Usage
2018-01-16 16:59:01 +01:00
2018-04-19 20:54:45 +02:00
Run `./lbrycrdd -server -daemon` to start lbrycrdd in the background.
2018-01-16 16:59:01 +01:00
2018-04-18 21:32:02 +02:00
Run `./lbrycrd-cli getinfo` to check for some basic informations about your LBRYcrd node.
Run `./lbrycrd-cli help` to get a list of all commands that you can run. To get help on specific commands run `./lbrycrd-cli [command_name] help`
2018-05-28 20:43:28 +02:00
### Data directory
Lbrycrdd will use the below default data directories
2018-06-20 23:34:56 +02:00
Windows < Vista: C: \Documents and Settings \Username \Application Data \lbrycrd
2018-07-30 20:23:48 +02:00
2018-06-20 23:34:56 +02:00
Windows >= Vista: C:\Users\Username\AppData\Roaming\lbrycrd
2018-07-30 20:23:48 +02:00
2018-06-20 23:34:56 +02:00
Mac: ~/Library/Application Support/lbrycrd
2018-07-30 20:23:48 +02:00
2018-05-28 20:43:28 +02:00
Unix: ~/.lbrycrd
The data directory contains various things such as your default wallet (wallet.dat), debug logs (debug.log), and blockchain data. You can optionally
create a configuration file lbrycrd.conf in the default data directory which will be used by default when running lbrycrdd.
For a list of configuration parameters run `./lbrycrdd --help` . Below is a sample lbrycrd.conf to enable JSON RPC server on lbrycrdd.
```rpcuser=lbry
2018-06-20 23:34:56 +02:00
rpcpassword=xyz123456790
2018-05-28 20:43:28 +02:00
daemon=1
2018-06-20 23:34:56 +02:00
server=1
2018-05-28 20:43:28 +02:00
txindex=1
```
2018-04-18 21:32:02 +02:00
## Running from Source
2018-01-16 16:59:01 +01:00
2018-04-19 20:54:45 +02:00
Run `./reproducible_build.sh -c -t` . This will build the binaries and put them into the `./src` directory.
2018-01-16 16:59:01 +01:00
2018-04-19 20:55:22 +02:00
If you encounter any errors, please check `doc/build-*.md` for further instructions. If you're still stuck, [create an issue ](https://github.com/lbryio/lbrycrd/issues/new ) with the output of that command, your system info, and any other information you think might be helpful.
2018-01-16 16:59:01 +01:00
2018-04-18 21:32:02 +02:00
## Contributing
2018-01-16 16:59:01 +01:00
2018-04-18 21:32:02 +02:00
Contributions to this project are welcome, encouraged, and compensated. For more details, see [lbry.io/faq/contributing ](https://lbry.io/faq/contributing )
2015-09-24 15:28:07 +02:00
2018-06-04 20:42:10 +02:00
The codebase is in C++03, C++11 is currently not supported but we will be migrating to it in the near future. Recommended GCC version is 4.8 or greater.
2018-06-20 23:34:56 +02:00
We follow the same coding guidelines as documented by Bitcoin Core, see [here ](/doc/developer-notes.md ). To run an automated code formatting check, try:
`git diff -U0 master -- '*.h' '*.cpp' | ./contrib/devtools/clang-format-diff.py -p1` . This will check any commits not on master for proper code formatting.
We try to avoid altering parts of the code that is inherited from Bitcoin Core unless absolutely necessary. This will make it easier to merge changes from
Bitcoin Core. If commits are expected not to be merged upstream (i.e. we broke up a commit from Bitcoin Core in order to use a single feature in it), the commit
message must contain the string "NOT FOR UPSTREAM MERGE".
2018-06-04 20:42:10 +02:00
2018-04-18 21:32:02 +02:00
The `master` branch is regularly built and tested, but is not guaranteed to be
completely stable. [Releases ](https://github.com/lbryio/lbrycrd/releases ) are created
regularly to indicate new official, stable release versions.
2012-12-13 03:27:58 +01:00
Testing and code review is the bottleneck for development; we get more pull
2014-05-23 09:49:01 +02:00
requests than we can review and test on short notice. Please be patient and help out by testing
other people's pull requests, and remember this is a security-critical project where any mistake might cost people
2018-06-04 20:42:10 +02:00
lots of money. Developers are strongly encouraged to write [unit tests ](/doc/unit-tests.md ) for new code, and to
2015-11-18 00:26:07 +01:00
submit new unit tests for old code. Unit tests can be compiled and run
(assuming they weren't disabled in configure) with: `make check`
2013-01-09 21:55:47 +01:00
2018-01-16 16:56:44 +01:00
The Travis CI system makes sure that every pull request is built, and that unit and sanity tests are automatically run.
2013-01-09 21:55:47 +01:00
2018-05-16 21:41:17 +02:00
### Testnet
Testnet is maintained for testing purposes and can be accessed using the command `./lbrycrdd -testnet` . If you would like testnet credits, please contact kay@lbry.io or grin@lbry.io.
2018-04-18 21:32:02 +02:00
## License
2013-01-09 21:55:47 +01:00
2018-04-18 21:32:02 +02:00
This project is MIT licensed. For the full license, see [LICENSE ](LICENSE ).
2014-04-09 20:11:08 +02:00
2018-04-18 21:32:02 +02:00
## Security
We take security seriously. Please contact security@lbry.io regarding any security issues.
Our PGP key is [here ](https://keybase.io/lbry/key.asc ) if you need it.
## Contact
The primary contact for this project is [@kaykurokawa ](https://github.com/kaykurokawa ) (kay@lbry.io)
2014-04-09 20:11:08 +02:00
2014-05-23 16:30:38 +02:00