Skip to content

Commit 4864298

Browse files
committed
Update README.
1 parent 9197342 commit 4864298

File tree

1 file changed

+87
-5
lines changed

1 file changed

+87
-5
lines changed

README.md

Lines changed: 87 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,95 @@ btcd
33

44
btcd is an alternative full node bitcoin implementation written in Go (golang).
55

6-
This project is currently under active development and is not production ready
7-
yet.
6+
This project is currently under active development and is in an Alpha state.
7+
8+
It currently properly downloads, validates, and serves the block chain using the
9+
exact rules (including bugs) for block acceptance as the reference
10+
implementation (bitcoind). We have taken great care to avoid btcd causing a
11+
fork to the block chain. It passes all of the 'official' block acceptance tests
12+
(https://github.com/TheBlueMatt/test-scripts).
13+
14+
It also properly relays newly mined blocks, maintains a transaction pool,
15+
and relays individual transactions that have not yet made it into a block. It
16+
ensures all individual transactions admitted to the pool follow the rules
17+
required into the block chain and also includes the vast majority of the more
18+
strict checks which filter transactions based on miner requirements ("standard"
19+
transactions).
20+
21+
One key difference between btcd and bitcoind is that btcd does *NOT* include
22+
wallet functionality and this was a very intentional design decision. See the
23+
blog entry at https://blog.conformal.com/btcd-finally for more details. This
24+
means you can't actually make or receive payments directly with btcd. That
25+
functionality will be provided by the forthcoming btcwallet and btcgui.
26+
27+
## Installation
28+
29+
#### Windows - MSI Available
30+
31+
https://github.com/conformal/btcd/releases
32+
33+
#### Linux/BSD/POSIX - Build from Source
34+
35+
- Install Go according to the installation instructions here:
36+
http://golang.org/doc/install
37+
38+
- Run the following command to obtain btcd, all dependencies, and install it:
39+
```$ go get github.com/conformal/btcd```
40+
41+
- btcd will now be installed in either ```$GOROOT/bin``` or ```$GOPATH/bin```
42+
depending on your configuration. If you did not already add to your system
43+
path during the installation, we recommend you do so now.
44+
45+
## Getting Started
46+
47+
btcd has several configuration options avilable to tweak how it runs, but all
48+
of the basic operations described in the intro section work with zero
49+
configuration.
50+
51+
#### Windows (Installed from MSI)
52+
53+
Launch btcd from your Start menu.
54+
55+
#### Linux/BSD/POSIX/Source
56+
57+
```bash
58+
$ ./btcd
59+
````
860

961
## TODO
1062

11-
The following is a list of major items remaining before production release:
63+
The following is a brief overview of the next things we have planned to work on
64+
for btcd. Note this does not include the separate btcwallet and btcgui which
65+
are currently under heavy development:
1266

1367
- Documentation
14-
- A lot of code cleanup
15-
- Optimize
68+
- Code cleanup
69+
- Add remaining missing RPC calls
70+
- Add option to allow btcd run as a daemon/service
71+
- Complete several TODO items in the code
72+
- Offer 32-bit MSI as well as the 64-bit one
73+
- Offer cross-compiled binaries for popular OSes (Fedora, Ubuntu, FreeBSD, OpenBSD)
74+
75+
## GPG Verification Key
76+
77+
All official release tags are signed by Conformal so users can ensure the code
78+
has not been tampered with and is coming from Conformal. To verify the
79+
signature perform the following:
80+
81+
- Download the public key from the Conformal website at
82+
https://opensource.conformal.com/GIT-GPG-KEY-conformal.txt
83+
84+
- Import the public key into your GPG keyring:
85+
```bash
86+
gpg --import GIT-GPG-KEY-conformal.txt
87+
```
88+
89+
- Verify the release tag with the following command where `TAG_NAME` is a
90+
placeholder for the specific tag:
91+
```bash
92+
git tag -v TAG_NAME
93+
```
94+
95+
## License
96+
97+
Package btcwire is licensed under the liberal ISC License.

0 commit comments

Comments
 (0)