Update documentation to match 1.10 (#1436)
This commit is contained in:
parent
366b2e5d4c
commit
761ca87389
159
README.md
159
README.md
|
@ -1,53 +1,35 @@
|
||||||
Bitcoin Core integration/staging tree
|
# Dogecoin Core [DOGE, Ð]
|
||||||
=====================================
|
==========================
|
||||||
|
|
||||||
[![Build Status](https://travis-ci.org/bitcoin/bitcoin.svg?branch=master)](https://travis-ci.org/bitcoin/bitcoin)
|
![Dogecoin](http://static.tumblr.com/ppdj5y9/Ae9mxmxtp/300coin.png)
|
||||||
|
|
||||||
https://bitcoincore.org
|
[![Build Status](https://travis-ci.org/dogecoin/dogecoin.svg?branch=1.14-dev)](https://travis-ci.org/dogecoin/dogecoin) [![tip for next commit](https://tip4commit.com/projects/702.svg)](https://tip4commit.com/github/dogecoin/dogecoin)
|
||||||
|
|
||||||
What is Bitcoin?
|
## What is Dogecoin? – Such coin
|
||||||
----------------
|
Dogecoin is a cryptocurrency like Bitcoin, although it does not use SHA256 as its proof of work (POW). Taking development cues from Tenebrix and Litecoin, Dogecoin currently employs a simplified variant of scrypt.
|
||||||
|
|
||||||
Bitcoin is an experimental digital currency that enables instant payments to
|
http://dogecoin.com/
|
||||||
anyone, anywhere in the world. Bitcoin uses peer-to-peer technology to operate
|
|
||||||
with no central authority: managing transactions and issuing money are carried
|
|
||||||
out collectively by the network. Bitcoin Core is the name of open source
|
|
||||||
software which enables the use of this currency.
|
|
||||||
|
|
||||||
For more information, as well as an immediately useable, binary version of
|
## License – Much license
|
||||||
the Bitcoin Core software, see https://bitcoin.org/en/download, or read the
|
Dogecoin Core is released under the terms of the MIT license. See [COPYING](COPYING) for more
|
||||||
[original whitepaper](https://bitcoincore.org/bitcoin.pdf).
|
|
||||||
|
|
||||||
License
|
|
||||||
-------
|
|
||||||
|
|
||||||
Bitcoin Core is released under the terms of the MIT license. See [COPYING](COPYING) for more
|
|
||||||
information or see https://opensource.org/licenses/MIT.
|
information or see https://opensource.org/licenses/MIT.
|
||||||
|
|
||||||
Development Process
|
## Development and contributions – omg developers
|
||||||
-------------------
|
Development is ongoing, and the development team, as well as other volunteers, can freely work in their own trees and submit pull requests when features or bug fixes are ready.
|
||||||
|
|
||||||
The `master` branch is regularly built and tested, but is not guaranteed to be
|
#### Version strategy
|
||||||
completely stable. [Tags](https://github.com/bitcoin/bitcoin/tags) are created
|
Version numbers are following ```major.minor.patch``` semantics.
|
||||||
regularly to indicate new official, stable release versions of Bitcoin Core.
|
|
||||||
|
|
||||||
The contribution workflow is described in [CONTRIBUTING.md](CONTRIBUTING.md).
|
#### Branches
|
||||||
|
There are 3 types of branches in this repository:
|
||||||
|
|
||||||
The developer [mailing list](https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev)
|
- **master:** Stable, contains the latest version of the latest *major.minor* release.
|
||||||
should be used to discuss complicated or controversial changes before working
|
- **maintenance:** Stable, contains the latest version of previous releases, which are still under active maintenance. Format: ```<version>-maint```
|
||||||
on a patch set.
|
- **development:** Unstable, contains new code for planned releases. Format: ```<version>-dev```
|
||||||
|
|
||||||
Developer IRC can be found on Freenode at #bitcoin-core-dev.
|
*Master and maintenance branches are exclusively mutable by release. Planned releases will always have a development branch and pull requests should be submitted against those. Maintenance branches are there for* ***bug fixes only,*** *please submit new features against the development branch with the highest version.*
|
||||||
|
|
||||||
Testing
|
#### Contributions
|
||||||
-------
|
|
||||||
|
|
||||||
Testing and code review is the bottleneck for development; we get more pull
|
|
||||||
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
|
|
||||||
lots of money.
|
|
||||||
|
|
||||||
### Automated Testing
|
|
||||||
|
|
||||||
Developers are strongly encouraged to write [unit tests](src/test/README.md) for new code, and to
|
Developers are strongly encouraged to write [unit tests](src/test/README.md) for new code, and to
|
||||||
submit new unit tests for old code. Unit tests can be compiled and run
|
submit new unit tests for old code. Unit tests can be compiled and run
|
||||||
|
@ -58,25 +40,100 @@ There are also [regression and integration tests](/qa) of the RPC interface, wri
|
||||||
in Python, that are run automatically on the build server.
|
in Python, that are run automatically on the build server.
|
||||||
These tests can be run (if the [test dependencies](/qa) are installed) with: `qa/pull-tester/rpc-tests.py`
|
These tests can be run (if the [test dependencies](/qa) are installed) with: `qa/pull-tester/rpc-tests.py`
|
||||||
|
|
||||||
The Travis CI system makes sure that every pull request is built for Windows, Linux, and OS X, and that unit/sanity tests are run automatically.
|
|
||||||
|
|
||||||
### Manual Quality Assurance (QA) Testing
|
|
||||||
|
|
||||||
Changes should be tested by somebody other than the developer who wrote the
|
Changes should be tested by somebody other than the developer who wrote the
|
||||||
code. This is especially important for large or high-risk changes. It is useful
|
code. This is especially important for large or high-risk changes. It is useful
|
||||||
to add a test plan to the pull request description if testing the changes is
|
to add a test plan to the pull request description if testing the changes is
|
||||||
not straightforward.
|
not straightforward.
|
||||||
|
|
||||||
Translations
|
## Very Much Frequently Asked Questions
|
||||||
------------
|
|
||||||
|
|
||||||
Changes to translations as well as new translations can be submitted to
|
### How much doge can exist? – So many puppies!
|
||||||
[Bitcoin Core's Transifex page](https://www.transifex.com/projects/p/bitcoin/).
|
Early 2015 (approximately a year and a half after release) there will be approximately 100,000,000,000 coins.
|
||||||
|
Each subsequent block will grant 10,000 coins to encourage miners to continue to secure the network and make up for lost wallets on hard drives/phones/lost encryption passwords/etc.
|
||||||
|
|
||||||
Translations are periodically pulled from Transifex and merged into the git repository. See the
|
### How to get doge? – To the moon!
|
||||||
[translation process](doc/translation_process.md) for details on how this works.
|
Dogecoin uses a simplified variant of the scrypt key derivation function as its proof of work with a target time of one minute per block and difficulty readjustment after every block. The block rewards are fixed and halve every 100,000 blocks. Starting with the 600,000th block, a permanent reward of 10,000 Dogecoin per block will be paid.
|
||||||
|
|
||||||
**Important**: We do not accept translation changes as GitHub pull requests because the next
|
Originally, a different payout scheme was envisioned with block rewards being determined by taking the maximum reward as per the block schedule and applying the result of a Mersenne Twister pseudo-random number generator to arrive at a number between 0 and the maximum reward. This was changed, starting with block 145,000, to prevent large pools from gaming the system and mining only high reward blocks. At the same time, the difficulty retargeting was also changed from four hours to once per block (every minute), implementing an algorithm courtesy of the DigiByte Coin development team, to lessen the impact of sudden increases and decreases of network hashing rate.
|
||||||
pull from Transifex would automatically overwrite them again.
|
|
||||||
|
|
||||||
Translators should also subscribe to the [mailing list](https://groups.google.com/forum/#!forum/bitcoin-translators).
|
The current block reward schedule:
|
||||||
|
|
||||||
|
1–99,999: 0–1,000,000 Dogecoin
|
||||||
|
|
||||||
|
100,000–144,999: 0–500,000 Dogecoin
|
||||||
|
|
||||||
|
145,000–199,999: 250,000 Dogecoin
|
||||||
|
|
||||||
|
200,000–299,999: 125,000 Dogecoin
|
||||||
|
|
||||||
|
300,000–399,999: 62,500 Dogecoin
|
||||||
|
|
||||||
|
400,000–499,999: 31,250 Dogecoin
|
||||||
|
|
||||||
|
500,000–599,999: 15,625 Dogecoin
|
||||||
|
|
||||||
|
600,000+: 10,000 Dogecoin
|
||||||
|
|
||||||
|
The original block reward schedule, with one-minute block targets and four-hour difficulty readjustment:
|
||||||
|
|
||||||
|
1–99,999: 0–1,000,000 Dogecoin
|
||||||
|
|
||||||
|
100,000–199,999: 0–500,000 Dogecoin
|
||||||
|
|
||||||
|
200,000–299,999: 0–250,000 Dogecoin
|
||||||
|
|
||||||
|
300,000–399,999: 0–125,000 Dogecoin
|
||||||
|
|
||||||
|
400,000–499,999: 0–62,500 Dogecoin
|
||||||
|
|
||||||
|
500,000–599,999: 0–31,250 Dogecoin
|
||||||
|
|
||||||
|
600,000+: 10,000 Dogecoin
|
||||||
|
|
||||||
|
### Wow plz make dogecoind/dogecoin-cli/dogecoin-qt
|
||||||
|
|
||||||
|
The following are developer notes on how to build Dogecoin on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.
|
||||||
|
|
||||||
|
- [OSX Build Notes](doc/build-osx.md)
|
||||||
|
- [Unix Build Notes](doc/build-unix.md)
|
||||||
|
- [Windows Build Notes](doc/build-msw.md)
|
||||||
|
|
||||||
|
### Such ports
|
||||||
|
RPC 22555
|
||||||
|
P2P 22556
|
||||||
|
|
||||||
|
![](http://dogesay.com/wow//////such/coin)
|
||||||
|
|
||||||
|
## Development tips and tricks
|
||||||
|
|
||||||
|
**compiling for debugging**
|
||||||
|
|
||||||
|
Run configure with the --enable-debug option, then make. Or run configure with
|
||||||
|
CXXFLAGS="-g -ggdb -O0" or whatever debug flags you need.
|
||||||
|
|
||||||
|
**debug.log**
|
||||||
|
|
||||||
|
If the code is behaving strangely, take a look in the debug.log file in the data directory;
|
||||||
|
error and debugging messages are written there.
|
||||||
|
|
||||||
|
The -debug=... command-line option controls debugging; running with just -debug will turn
|
||||||
|
on all categories (and give you a very large debug.log file).
|
||||||
|
|
||||||
|
The Qt code routes qDebug() output to debug.log under category "qt": run with -debug=qt
|
||||||
|
to see it.
|
||||||
|
|
||||||
|
**testnet and regtest modes**
|
||||||
|
|
||||||
|
Run with the -testnet option to run with "play dogecoins" on the test network, if you
|
||||||
|
are testing multi-machine code that needs to operate across the internet.
|
||||||
|
|
||||||
|
If you are testing something that can run on one machine, run with the -regtest option.
|
||||||
|
In regression test mode, blocks can be created on-demand; see qa/rpc-tests/ for tests
|
||||||
|
that run in -regtest mode.
|
||||||
|
|
||||||
|
**DEBUG_LOCKORDER**
|
||||||
|
|
||||||
|
Dogecoin Core is a multithreaded application, and deadlocks or other multithreading bugs
|
||||||
|
can be very difficult to track down. Compiling with -DDEBUG_LOCKORDER (configure
|
||||||
|
CXXFLAGS="-DDEBUG_LOCKORDER -g") inserts run-time checks to keep track of which locks
|
||||||
|
are held, and adds warnings to the debug.log file if inconsistencies are detected.
|
||||||
|
|
|
@ -32,13 +32,13 @@ DOXYFILE_ENCODING = UTF-8
|
||||||
# title of most generated pages and in a few other places.
|
# title of most generated pages and in a few other places.
|
||||||
# The default value is: My Project.
|
# The default value is: My Project.
|
||||||
|
|
||||||
PROJECT_NAME = "Bitcoin Core"
|
PROJECT_NAME = "Dogecoin Core"
|
||||||
|
|
||||||
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
|
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
|
||||||
# could be handy for archiving the generated documentation or if some version
|
# could be handy for archiving the generated documentation or if some version
|
||||||
# control system is used.
|
# control system is used.
|
||||||
|
|
||||||
PROJECT_NUMBER = 0.14.2
|
PROJECT_NUMBER = 1.14.2
|
||||||
|
|
||||||
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
||||||
# for a project that appears at the top of each page and should give viewer a
|
# for a project that appears at the top of each page and should give viewer a
|
||||||
|
|
|
@ -1,41 +1,39 @@
|
||||||
Bitcoin Core 0.14.2
|
Dogecoin Core 0.14.2
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
Setup
|
Setup
|
||||||
---------------------
|
---------------------
|
||||||
Bitcoin Core is the original Bitcoin client and it builds the backbone of the network. However, it downloads and stores the entire history of Bitcoin transactions (which is currently several GBs); depending on the speed of your computer and network connection, the synchronization process can take anywhere from a few hours to a day or more.
|
[Dogecoin Core](http://dogecoin.com/) is the reference Dogecoin client and it builds the backbone of the network. However, it downloads and stores the entire history of Bitcoin transactions (which is currently several GBs); depending on the speed of your computer and network connection, the synchronization process can take anywhere from a few hours to a day or more.
|
||||||
|
|
||||||
To download Bitcoin Core, visit [bitcoincore.org](https://bitcoincore.org/en/releases/).
|
|
||||||
|
|
||||||
Running
|
Running
|
||||||
---------------------
|
---------------------
|
||||||
The following are some helpful notes on how to run Bitcoin on your native platform.
|
The following are some helpful notes on how to run Dogecoin on your native platform.
|
||||||
|
|
||||||
### Unix
|
### Unix
|
||||||
|
|
||||||
Unpack the files into a directory and run:
|
Unpack the files into a directory and run:
|
||||||
|
|
||||||
- `bin/bitcoin-qt` (GUI) or
|
- `bin/dogecoin-qt` (GUI) or
|
||||||
- `bin/bitcoind` (headless)
|
- `bin/dogecoind` (headless)
|
||||||
|
|
||||||
### Windows
|
### Windows
|
||||||
|
|
||||||
Unpack the files into a directory, and then run bitcoin-qt.exe.
|
Unpack the files into a directory, and then run dogecoin-qt.exe.
|
||||||
|
|
||||||
### OS X
|
### OS X
|
||||||
|
|
||||||
Drag Bitcoin-Core to your applications folder, and then run Bitcoin-Core.
|
Drag Dogecoin-Core to your applications folder, and then run Dogecoin-Core.
|
||||||
|
|
||||||
### Need Help?
|
### Need Help?
|
||||||
|
|
||||||
* See the documentation at the [Bitcoin Wiki](https://en.bitcoin.it/wiki/Main_Page)
|
* See the documentation at the [Bitcoin Wiki](https://en.bitcoin.it/wiki/Main_Page)
|
||||||
for help and more information.
|
for help and more information.
|
||||||
* Ask for help on [#bitcoin](http://webchat.freenode.net?channels=bitcoin) on Freenode. If you don't have an IRC client use [webchat here](http://webchat.freenode.net?channels=bitcoin).
|
* Ask for help on [#dogecoin](http://webchat.freenode.net?channels=dogecoin) on Freenode. If you don't have an IRC client use [webchat here](http://webchat.freenode.net?channels=dogecoin).
|
||||||
* Ask for help on the [BitcoinTalk](https://bitcointalk.org/) forums, in the [Technical Support board](https://bitcointalk.org/index.php?board=4.0).
|
* Ask for help on the [BitcoinTalk](https://bitcointalk.org/) forums, in the [Dogecoin thread](https://bitcointalk.org/index.php?topic=361813.0).
|
||||||
|
|
||||||
Building
|
Building
|
||||||
---------------------
|
---------------------
|
||||||
The following are developer notes on how to build Bitcoin on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.
|
The following are developer notes on how to build Dogecoin on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.
|
||||||
|
|
||||||
- [OS X Build Notes](build-osx.md)
|
- [OS X Build Notes](build-osx.md)
|
||||||
- [Unix Build Notes](build-unix.md)
|
- [Unix Build Notes](build-unix.md)
|
||||||
|
@ -45,12 +43,11 @@ The following are developer notes on how to build Bitcoin on your native platfor
|
||||||
|
|
||||||
Development
|
Development
|
||||||
---------------------
|
---------------------
|
||||||
The Bitcoin repo's [root README](/README.md) contains relevant information on the development process and automated testing.
|
The Dogecoin repo's [root README](/README.md) contains relevant information on the development process and automated testing.
|
||||||
|
|
||||||
- [Developer Notes](developer-notes.md)
|
- [Developer Notes](developer-notes.md)
|
||||||
- [Release Notes](release-notes.md)
|
- [Release Notes](release-notes.md)
|
||||||
- [Release Process](release-process.md)
|
- [Release Process](release-process.md)
|
||||||
- [Source Code Documentation (External Link)](https://dev.visucore.com/bitcoin/doxygen/)
|
|
||||||
- [Translation Process](translation_process.md)
|
- [Translation Process](translation_process.md)
|
||||||
- [Translation Strings Policy](translation_strings_policy.md)
|
- [Translation Strings Policy](translation_strings_policy.md)
|
||||||
- [Travis CI](travis-ci.md)
|
- [Travis CI](travis-ci.md)
|
||||||
|
@ -61,9 +58,8 @@ The Bitcoin repo's [root README](/README.md) contains relevant information on th
|
||||||
- [Benchmarking](benchmarking.md)
|
- [Benchmarking](benchmarking.md)
|
||||||
|
|
||||||
### Resources
|
### Resources
|
||||||
* Discuss on the [BitcoinTalk](https://bitcointalk.org/) forums, in the [Development & Technical Discussion board](https://bitcointalk.org/index.php?board=6.0).
|
* Discuss on the [BitcoinTalk](https://bitcointalk.org/) forums, in the [Dogecoin thread](https://bitcointalk.org/index.php?topic=361813.0).
|
||||||
* Discuss project-specific development on #bitcoin-core-dev on Freenode. If you don't have an IRC client use [webchat here](http://webchat.freenode.net/?channels=bitcoin-core-dev).
|
* Discuss on [#dogecoin-dev](http://webchat.freenode.net/?channels=dogecoin-dev) on Freenode. If you don't have an IRC client use [webchat here](http://webchat.freenode.net/?channels=dogecoin-dev).
|
||||||
* Discuss general Bitcoin development on #bitcoin-dev on Freenode. If you don't have an IRC client use [webchat here](http://webchat.freenode.net/?channels=bitcoin-dev).
|
|
||||||
|
|
||||||
### Miscellaneous
|
### Miscellaneous
|
||||||
- [Assets Attribution](assets-attribution.md)
|
- [Assets Attribution](assets-attribution.md)
|
||||||
|
@ -77,5 +73,6 @@ The Bitcoin repo's [root README](/README.md) contains relevant information on th
|
||||||
License
|
License
|
||||||
---------------------
|
---------------------
|
||||||
Distributed under the [MIT software license](/COPYING).
|
Distributed under the [MIT software license](/COPYING).
|
||||||
|
This product includes software developed by the Bitcoin developers for use in [Dogecoin Core](https://www.bitcoin.org/).
|
||||||
This product includes software developed by the OpenSSL Project for use in the [OpenSSL Toolkit](https://www.openssl.org/). This product includes
|
This product includes software developed by the OpenSSL Project for use in the [OpenSSL Toolkit](https://www.openssl.org/). This product includes
|
||||||
cryptographic software written by Eric Young ([eay@cryptsoft.com](mailto:eay@cryptsoft.com)), and UPnP software written by Thomas Bernard.
|
cryptographic software written by Eric Young ([eay@cryptsoft.com](mailto:eay@cryptsoft.com)), and UPnP software written by Thomas Bernard.
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
Bitcoin Core 0.14.2
|
Dogecoin Core 0.14.2
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
Intro
|
Intro
|
||||||
-----
|
-----
|
||||||
Bitcoin is a free open source peer-to-peer electronic cash system that is
|
Dogecoin is a free open source peer-to-peer electronic cash system that is
|
||||||
completely decentralized, without the need for a central server or trusted
|
completely decentralized, without the need for a central server or trusted
|
||||||
parties. Users hold the crypto keys to their own money and transact directly
|
parties. Users hold the crypto keys to their own money and transact directly
|
||||||
with each other, with the help of a P2P network to check for double-spending.
|
with each other, with the help of a P2P network to check for double-spending.
|
||||||
|
@ -11,13 +11,13 @@ with each other, with the help of a P2P network to check for double-spending.
|
||||||
|
|
||||||
Setup
|
Setup
|
||||||
-----
|
-----
|
||||||
Unpack the files into a directory and run bitcoin-qt.exe.
|
Unpack the files into a directory and run dogecoin-qt.exe.
|
||||||
|
|
||||||
Bitcoin Core is the original Bitcoin client and it builds the backbone of the network.
|
Dogecoin Core is the original Dogecoin client and it builds the backbone of the network.
|
||||||
However, it downloads and stores the entire history of Bitcoin transactions;
|
However, it downloads and stores the entire history of Dogecoin transactions;
|
||||||
depending on the speed of your computer and network connection, the synchronization
|
depending on the speed of your computer and network connection, the synchronization
|
||||||
process can take anywhere from a few hours to a day or more.
|
process can take anywhere from a few hours to a day or more.
|
||||||
|
|
||||||
See the bitcoin wiki at:
|
See the Dogecoin wiki at:
|
||||||
https://en.bitcoin.it/wiki/Main_Page
|
https://www.reddit.com/r/dogecoin/wiki/dogecoincoreguide
|
||||||
for more help and information.
|
for more help and information.
|
||||||
|
|
|
@ -95,4 +95,4 @@ Only supports JSON as output format.
|
||||||
|
|
||||||
Risks
|
Risks
|
||||||
-------------
|
-------------
|
||||||
Running a web browser on the same node with a REST enabled bitcoind can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `<script src="http://127.0.0.1:8332/rest/tx/1234567890.json">` which might break the nodes privacy.
|
Running a web browser on the same node with a REST enabled dogecoind can be a risk. Accessing prepared XSS websites could read out tx/block data of your node by placing links like `<script src="http://127.0.0.1:8332/rest/tx/1234567890.json">` which might break the nodes privacy.
|
|
@ -1 +1,67 @@
|
||||||
The list of assets used in the bitcoin source and their attribution can now be found in [contrib/debian/copyright](../contrib/debian/copyright).
|
The following is a list of assets used in the dogecoin source and their proper attribution.
|
||||||
|
|
||||||
|
[Typicons/Stephen Hutchings](http://typicons.com)
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
### Info
|
||||||
|
* Icon Pack: Typicons (http://typicons.com)
|
||||||
|
* Designer: Stephen Hutchings (and more)
|
||||||
|
* License: MIT
|
||||||
|
* Site: [https://github.com/stephenhutchings/typicons.font](https://github.com/stephenhutchings/typicons.font)
|
||||||
|
|
||||||
|
### Assets Used
|
||||||
|
src/qt/res/icons/add.png
|
||||||
|
src/qt/res/icons/address-book.png,
|
||||||
|
src/qt/res/icons/configure.png
|
||||||
|
src/qt/res/icons/debugwindow.png
|
||||||
|
src/qt/res/icons/edit.png,
|
||||||
|
src/qt/res/icons/exitcopy.png
|
||||||
|
src/qt/res/icons/editpaste.png,
|
||||||
|
src/qt/res/icons/export.png
|
||||||
|
src/qt/res/icons/eye.png,
|
||||||
|
src/qt/res/icons/filesave.png
|
||||||
|
src/qt/res/icons/history.png,
|
||||||
|
src/qt/res/icons/info.png
|
||||||
|
src/qt/res/icons/key.png,
|
||||||
|
src/qt/res/icons/lock_*.png
|
||||||
|
src/qt/res/icons/open.png,
|
||||||
|
src/qt/res/icons/overview.png
|
||||||
|
src/qt/res/icons/quit.png,
|
||||||
|
src/qt/res/icons/receive.png
|
||||||
|
src/qt/res/icons/remove.png,
|
||||||
|
src/qt/res/icons/send.png
|
||||||
|
src/qt/res/icons/synced.png,
|
||||||
|
src/qt/res/icons/transaction*.png
|
||||||
|
src/qt/res/icons/tx_output.png,
|
||||||
|
src/qt/res/icons/warning.png
|
||||||
|
|
||||||
|
Other
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
### Info
|
||||||
|
* Designer: Jonas Schnelli, Bitboy, Stephen Hutchings, Marco Falke
|
||||||
|
* Dogecoin Icon: Based on the original Dogecoin logo from Christine Ricks
|
||||||
|
* Network connection icon: Inspired by flow-merge.svg from Stephen Hutchings
|
||||||
|
* Some icons are based on Stephan Hutchings Typicons
|
||||||
|
* License: MIT
|
||||||
|
|
||||||
|
### Assets Used
|
||||||
|
src/qt/res/icons/about.png
|
||||||
|
src/qt/res/icons/about_qt.png,
|
||||||
|
src/qt/res/icons/bitcoin.icns
|
||||||
|
src/qt/res/icons/bitcoin.ico,
|
||||||
|
src/qt/res/icons/bitcoin.png
|
||||||
|
src/qt/res/icons/clock*.png,
|
||||||
|
src/qt/res/icons/connect*.png
|
||||||
|
src/qt/res/icons/eye_minus.png,
|
||||||
|
src/qt/res/icons/eye_plus.png
|
||||||
|
src/qt/res/icons/verify.png,
|
||||||
|
src/qt/res/icons/tx_inout.png
|
||||||
|
src/qt/res/icons/tx_input.png,
|
||||||
|
src/qt/res/src/bitcoin.svg,
|
||||||
|
src/qt/res/src/clock*.svg
|
||||||
|
src/qt/res/src/connect*.svg,
|
||||||
|
src/qt/res/src/mine.svg
|
||||||
|
src/qt/res/src/qt.svg
|
||||||
|
src/qt/res/src/tx*.svg,
|
||||||
|
src/qt/res/src/verify.svg
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
Benchmarking
|
Benchmarking
|
||||||
============
|
============
|
||||||
|
|
||||||
Bitcoin Core has an internal benchmarking framework, with benchmarks
|
Dogecoin Core has an internal benchmarking framework, with benchmarks
|
||||||
for cryptographic algorithms such as SHA1, SHA256, SHA512 and RIPEMD160. As well as the rolling bloom filter.
|
for cryptographic algorithms such as SHA1, SHA256, SHA512 and RIPEMD160. As well as the rolling bloom filter.
|
||||||
|
|
||||||
After compiling bitcoin-core, the benchmarks can be run with:
|
After compiling dogecoin-core, the benchmarks can be run with:
|
||||||
`src/bench/bench_bitcoin`
|
`src/bench/bench_dogecoin`
|
||||||
|
|
||||||
The output will look similar to:
|
The output will look similar to:
|
||||||
```
|
```
|
||||||
|
|
|
@ -2,7 +2,7 @@ OpenBSD build guide
|
||||||
======================
|
======================
|
||||||
(updated for OpenBSD 6.0)
|
(updated for OpenBSD 6.0)
|
||||||
|
|
||||||
This guide describes how to build bitcoind and command-line utilities on OpenBSD.
|
This guide describes how to build dogecoind and command-line utilities on OpenBSD.
|
||||||
|
|
||||||
As OpenBSD is most common as a server OS, we will not bother with the GUI.
|
As OpenBSD is most common as a server OS, we will not bother with the GUI.
|
||||||
|
|
||||||
|
@ -35,14 +35,14 @@ This compiler will not overwrite the system compiler, it will be installed as `e
|
||||||
|
|
||||||
Do not use `pkg_add boost`! The boost version installed thus is compiled using the `g++` compiler not `eg++`, which will result in a conflict between `/usr/local/lib/libestdc++.so.XX.0` and `/usr/lib/libstdc++.so.XX.0`, resulting in a test crash:
|
Do not use `pkg_add boost`! The boost version installed thus is compiled using the `g++` compiler not `eg++`, which will result in a conflict between `/usr/local/lib/libestdc++.so.XX.0` and `/usr/lib/libstdc++.so.XX.0`, resulting in a test crash:
|
||||||
|
|
||||||
test_bitcoin:/usr/lib/libstdc++.so.57.0: /usr/local/lib/libestdc++.so.17.0 : WARNING: symbol(_ZN11__gnu_debug17_S_debug_me ssagesE) size mismatch, relink your program
|
test_dogecoin:/usr/lib/libstdc++.so.57.0: /usr/local/lib/libestdc++.so.17.0 : WARNING: symbol(_ZN11__gnu_debug17_S_debug_me ssagesE) size mismatch, relink your program
|
||||||
...
|
...
|
||||||
Segmentation fault (core dumped)
|
Segmentation fault (core dumped)
|
||||||
|
|
||||||
This makes it necessary to build boost, or at least the parts used by Bitcoin Core, manually:
|
This makes it necessary to build boost, or at least the parts used by Bitcoin Core, manually:
|
||||||
|
|
||||||
```
|
```
|
||||||
# Pick some path to install boost to, here we create a directory within the bitcoin directory
|
# Pick some path to install boost to, here we create a directory within the dogecoin directory
|
||||||
BITCOIN_ROOT=$(pwd)
|
BITCOIN_ROOT=$(pwd)
|
||||||
BOOST_PREFIX="${BITCOIN_ROOT}/boost"
|
BOOST_PREFIX="${BITCOIN_ROOT}/boost"
|
||||||
mkdir -p $BOOST_PREFIX
|
mkdir -p $BOOST_PREFIX
|
||||||
|
@ -58,7 +58,7 @@ cd boost_1_61_0
|
||||||
# Also here: https://gist.githubusercontent.com/laanwj/bf359281dc319b8ff2e1/raw/92250de8404b97bb99d72ab898f4a8cb35ae1ea3/patch-boost_test_impl_execution_monitor_ipp.patch
|
# Also here: https://gist.githubusercontent.com/laanwj/bf359281dc319b8ff2e1/raw/92250de8404b97bb99d72ab898f4a8cb35ae1ea3/patch-boost_test_impl_execution_monitor_ipp.patch
|
||||||
patch -p0 < /usr/ports/devel/boost/patches/patch-boost_test_impl_execution_monitor_ipp
|
patch -p0 < /usr/ports/devel/boost/patches/patch-boost_test_impl_execution_monitor_ipp
|
||||||
|
|
||||||
# Build w/ minimum configuration necessary for bitcoin
|
# Build w/ minimum configuration necessary for dogecoin
|
||||||
echo 'using gcc : : eg++ : <cxxflags>"-fvisibility=hidden -fPIC" <linkflags>"" <archiver>"ar" <striper>"strip" <ranlib>"ranlib" <rc>"" : ;' > user-config.jam
|
echo 'using gcc : : eg++ : <cxxflags>"-fvisibility=hidden -fPIC" <linkflags>"" <archiver>"ar" <striper>"strip" <ranlib>"ranlib" <rc>"" : ;' > user-config.jam
|
||||||
config_opts="runtime-link=shared threadapi=pthread threading=multi link=static variant=release --layout=tagged --build-type=complete --user-config=user-config.jam -sNO_BZIP2=1"
|
config_opts="runtime-link=shared threadapi=pthread threading=multi link=static variant=release --layout=tagged --build-type=complete --user-config=user-config.jam -sNO_BZIP2=1"
|
||||||
./bootstrap.sh --without-icu --with-libraries=chrono,filesystem,program_options,system,thread,test
|
./bootstrap.sh --without-icu --with-libraries=chrono,filesystem,program_options,system,thread,test
|
||||||
|
@ -74,7 +74,7 @@ See "Berkeley DB" in [build_unix.md](build_unix.md) for instructions on how to b
|
||||||
You cannot use the BerkeleyDB library from ports, for the same reason as boost above (g++/libstd++ incompatibility).
|
You cannot use the BerkeleyDB library from ports, for the same reason as boost above (g++/libstd++ incompatibility).
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Pick some path to install BDB to, here we create a directory within the bitcoin directory
|
# Pick some path to install BDB to, here we create a directory within the dogecoin directory
|
||||||
BITCOIN_ROOT=$(pwd)
|
BITCOIN_ROOT=$(pwd)
|
||||||
BDB_PREFIX="${BITCOIN_ROOT}/db4"
|
BDB_PREFIX="${BITCOIN_ROOT}/db4"
|
||||||
mkdir -p $BDB_PREFIX
|
mkdir -p $BDB_PREFIX
|
||||||
|
|
|
@ -25,17 +25,17 @@ If you want to build the disk image with `make deploy` (.dmg / optional), you ne
|
||||||
|
|
||||||
NOTE: Building with Qt4 is still supported, however, could result in a broken UI. Building with Qt5 is recommended.
|
NOTE: Building with Qt4 is still supported, however, could result in a broken UI. Building with Qt5 is recommended.
|
||||||
|
|
||||||
Build Bitcoin Core
|
Build Dogecoin Core
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
1. Clone the bitcoin source code and cd into `bitcoin`
|
1. Clone the dogecoin source code and cd into `dogecoin`
|
||||||
|
|
||||||
git clone https://github.com/bitcoin/bitcoin
|
git clone https://github.com/dogecoin/dogecoin
|
||||||
cd bitcoin
|
cd dogecoin
|
||||||
|
|
||||||
2. Build bitcoin-core:
|
2. Build dogecoin:
|
||||||
|
|
||||||
Configure and build the headless bitcoin binaries as well as the GUI (if Qt is found).
|
Configure and build the headless dogecoin binaries as well as the GUI (if Qt is found).
|
||||||
|
|
||||||
You can disable the GUI build by passing `--without-gui` to configure.
|
You can disable the GUI build by passing `--without-gui` to configure.
|
||||||
|
|
||||||
|
@ -54,37 +54,37 @@ Build Bitcoin Core
|
||||||
Running
|
Running
|
||||||
-------
|
-------
|
||||||
|
|
||||||
Bitcoin Core is now available at `./src/bitcoind`
|
Dogecoin Core is now available at `./src/dogecoind`
|
||||||
|
|
||||||
Before running, it's recommended you create an RPC configuration file.
|
Before running, it's recommended you create an RPC configuration file.
|
||||||
|
|
||||||
echo -e "rpcuser=bitcoinrpc\nrpcpassword=$(xxd -l 16 -p /dev/urandom)" > "/Users/${USER}/Library/Application Support/Bitcoin/bitcoin.conf"
|
echo -e "rpcuser=dogecoinrpc\nrpcpassword=$(xxd -l 16 -p /dev/urandom)" > "/Users/${USER}/Library/Application Support/Dogecoin/dogecoin.conf"
|
||||||
|
|
||||||
chmod 600 "/Users/${USER}/Library/Application Support/Bitcoin/bitcoin.conf"
|
chmod 600 "/Users/${USER}/Library/Application Support/Dogecoin/dogecoin.conf"
|
||||||
|
|
||||||
The first time you run bitcoind, it will start downloading the blockchain. This process could take several hours.
|
The first time you run dogecoind, it will start downloading the blockchain. This process could take several hours.
|
||||||
|
|
||||||
You can monitor the download process by looking at the debug.log file:
|
You can monitor the download process by looking at the debug.log file:
|
||||||
|
|
||||||
tail -f $HOME/Library/Application\ Support/Bitcoin/debug.log
|
tail -f $HOME/Library/Application\ Support/Dogecoin/debug.log
|
||||||
|
|
||||||
Other commands:
|
Other commands:
|
||||||
-------
|
-------
|
||||||
|
|
||||||
./src/bitcoind -daemon # Starts the bitcoin daemon.
|
./src/dogecoind -daemon # Starts the dogecoin daemon.
|
||||||
./src/bitcoin-cli --help # Outputs a list of command-line options.
|
./src/dogecoin-cli --help # Outputs a list of command-line options.
|
||||||
./src/bitcoin-cli help # Outputs a list of RPC commands when the daemon is running.
|
./src/dogecoin-cli help # Outputs a list of RPC commands when the daemon is running.
|
||||||
|
|
||||||
Using Qt Creator as IDE
|
Using Qt Creator as IDE
|
||||||
------------------------
|
------------------------
|
||||||
You can use Qt Creator as an IDE, for bitcoin development.
|
You can use Qt Creator as an IDE, for dogecoin development.
|
||||||
Download and install the community edition of [Qt Creator](https://www.qt.io/download/).
|
Download and install the community edition of [Qt Creator](https://www.qt.io/download/).
|
||||||
Uncheck everything except Qt Creator during the installation process.
|
Uncheck everything except Qt Creator during the installation process.
|
||||||
|
|
||||||
1. Make sure you installed everything through Homebrew mentioned above
|
1. Make sure you installed everything through Homebrew mentioned above
|
||||||
2. Do a proper ./configure --enable-debug
|
2. Do a proper ./configure --enable-debug
|
||||||
3. In Qt Creator do "New Project" -> Import Project -> Import Existing Project
|
3. In Qt Creator do "New Project" -> Import Project -> Import Existing Project
|
||||||
4. Enter "bitcoin-qt" as project name, enter src/qt as location
|
4. Enter "dogecoin-qt" as project name, enter src/qt as location
|
||||||
5. Leave the file selection as it is
|
5. Leave the file selection as it is
|
||||||
6. Confirm the "summary page"
|
6. Confirm the "summary page"
|
||||||
7. In the "Projects" tab select "Manage Kits..."
|
7. In the "Projects" tab select "Manage Kits..."
|
||||||
|
@ -97,4 +97,4 @@ Notes
|
||||||
|
|
||||||
* Tested on OS X 10.8 through 10.12 on 64-bit Intel processors only.
|
* Tested on OS X 10.8 through 10.12 on 64-bit Intel processors only.
|
||||||
|
|
||||||
* Building with downloaded Qt binaries is not officially supported. See the notes in [#7714](https://github.com/bitcoin/bitcoin/issues/7714)
|
* Building with downloaded Qt binaries is not officially supported. See the notes in [#7714](https://github.com/dogecoin/dogecoin/issues/7714)
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
UNIX BUILD NOTES
|
UNIX BUILD NOTES
|
||||||
====================
|
====================
|
||||||
Some notes on how to build Bitcoin Core in Unix.
|
Some notes on how to build Dogecoin Core in Unix.
|
||||||
|
|
||||||
(for OpenBSD specific instructions, see [build-openbsd.md](build-openbsd.md))
|
(for OpenBSD specific instructions, see [build-openbsd.md](build-openbsd.md))
|
||||||
|
|
||||||
Note
|
Note
|
||||||
---------------------
|
---------------------
|
||||||
Always use absolute paths to configure and compile bitcoin and the dependencies,
|
Always use absolute paths to configure and compile Dogecoin and the dependencies,
|
||||||
for example, when specifying the path of the dependency:
|
for example, when specifying the path of the dependency:
|
||||||
|
|
||||||
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
||||||
|
@ -24,7 +24,7 @@ make
|
||||||
make install # optional
|
make install # optional
|
||||||
```
|
```
|
||||||
|
|
||||||
This will build bitcoin-qt as well if the dependencies are met.
|
This will build Dogecoin-Qt as well if the dependencies are met.
|
||||||
|
|
||||||
Dependencies
|
Dependencies
|
||||||
---------------------
|
---------------------
|
||||||
|
@ -55,10 +55,9 @@ Memory Requirements
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
C++ compilers are memory-hungry. It is recommended to have at least 1.5 GB of
|
C++ compilers are memory-hungry. It is recommended to have at least 1.5 GB of
|
||||||
memory available when compiling Bitcoin Core. On systems with less, gcc can be
|
memory available when compiling Dogecoin Core. On systems with less, gcc can be
|
||||||
tuned to conserve memory with additional CXXFLAGS:
|
tuned to conserve memory with additional CXXFLAGS:
|
||||||
|
|
||||||
|
|
||||||
./configure CXXFLAGS="--param ggc-min-expand=1 --param ggc-min-heapsize=32768"
|
./configure CXXFLAGS="--param ggc-min-expand=1 --param ggc-min-heapsize=32768"
|
||||||
|
|
||||||
Dependency Build Instructions: Ubuntu & Debian
|
Dependency Build Instructions: Ubuntu & Debian
|
||||||
|
@ -91,7 +90,7 @@ BerkeleyDB is required for the wallet.
|
||||||
automatically.
|
automatically.
|
||||||
|
|
||||||
|
|
||||||
See the section "Disable-wallet mode" to build Bitcoin Core without wallet.
|
See the section "Disable-wallet mode" to build Dogecoin Core without wallet.
|
||||||
|
|
||||||
Optional (see --with-miniupnpc and --enable-upnp-default):
|
Optional (see --with-miniupnpc and --enable-upnp-default):
|
||||||
|
|
||||||
|
@ -104,7 +103,7 @@ ZMQ dependencies (provides ZMQ API 4.x):
|
||||||
Dependencies for the GUI: Ubuntu & Debian
|
Dependencies for the GUI: Ubuntu & Debian
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
|
|
||||||
If you want to build Bitcoin-Qt, make sure that the required packages for Qt development
|
If you want to build Dogecoin-Qt, make sure that the required packages for Qt development
|
||||||
are installed. Either Qt 5 or Qt 4 are necessary to build the GUI.
|
are installed. Either Qt 5 or Qt 4 are necessary to build the GUI.
|
||||||
If both Qt 4 and Qt 5 are installed, Qt 5 will be used. Pass `--with-gui=qt4` to configure to choose Qt4.
|
If both Qt 4 and Qt 5 are installed, Qt 5 will be used. Pass `--with-gui=qt4` to configure to choose Qt4.
|
||||||
To build without GUI pass `--without-gui`.
|
To build without GUI pass `--without-gui`.
|
||||||
|
@ -121,7 +120,7 @@ libqrencode (optional) can be installed with:
|
||||||
|
|
||||||
sudo apt-get install libqrencode-dev
|
sudo apt-get install libqrencode-dev
|
||||||
|
|
||||||
Once these are installed, they will be found by configure and a bitcoin-qt executable will be
|
Once these are installed, they will be found by configure and a dogecoin-qt executable will be
|
||||||
built by default.
|
built by default.
|
||||||
|
|
||||||
Dependency Build Instructions: Fedora
|
Dependency Build Instructions: Fedora
|
||||||
|
@ -144,7 +143,7 @@ libqrencode (optional) can be installed with:
|
||||||
|
|
||||||
Notes
|
Notes
|
||||||
-----
|
-----
|
||||||
The release is built with GCC and then "strip bitcoind" to strip the debug
|
The release is built with GCC and then "strip dogecoind" to strip the debug
|
||||||
symbols, which reduces the executable size by about 90%.
|
symbols, which reduces the executable size by about 90%.
|
||||||
|
|
||||||
|
|
||||||
|
@ -167,7 +166,7 @@ It is recommended to use Berkeley DB 5.1. If you have to build it yourself:
|
||||||
```bash
|
```bash
|
||||||
BITCOIN_ROOT=$(pwd)
|
BITCOIN_ROOT=$(pwd)
|
||||||
|
|
||||||
# Pick some path to install BDB to, here we create a directory within the bitcoin directory
|
# Pick some path to install BDB to, here we create a directory within the dogecoin directory
|
||||||
BDB_PREFIX="${BITCOIN_ROOT}/db5"
|
BDB_PREFIX="${BITCOIN_ROOT}/db5"
|
||||||
mkdir -p $BDB_PREFIX
|
mkdir -p $BDB_PREFIX
|
||||||
|
|
||||||
|
@ -183,7 +182,7 @@ cd db-5.1.29.NC/build_unix/
|
||||||
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
../dist/configure --enable-cxx --disable-shared --with-pic --prefix=$BDB_PREFIX
|
||||||
make install
|
make install
|
||||||
|
|
||||||
# Configure Bitcoin Core to use our own-built instance of BDB
|
# Configure Dogecoin Core to use our own-built instance of BDB
|
||||||
cd $BITCOIN_ROOT
|
cd $BITCOIN_ROOT
|
||||||
./autogen.sh
|
./autogen.sh
|
||||||
./configure LDFLAGS="-L${BDB_PREFIX}/lib/" CPPFLAGS="-I${BDB_PREFIX}/include/" # (other args...)
|
./configure LDFLAGS="-L${BDB_PREFIX}/lib/" CPPFLAGS="-I${BDB_PREFIX}/include/" # (other args...)
|
||||||
|
@ -202,7 +201,7 @@ If you need to build Boost yourself:
|
||||||
|
|
||||||
Security
|
Security
|
||||||
--------
|
--------
|
||||||
To help make your bitcoin installation more secure by making certain attacks impossible to
|
To help make your Dogecoin installation more secure by making certain attacks impossible to
|
||||||
exploit even if a vulnerability is found, binaries are hardened by default.
|
exploit even if a vulnerability is found, binaries are hardened by default.
|
||||||
This can be disabled with:
|
This can be disabled with:
|
||||||
|
|
||||||
|
@ -226,7 +225,7 @@ Hardening enables the following features:
|
||||||
|
|
||||||
To test that you have built PIE executable, install scanelf, part of paxutils, and use:
|
To test that you have built PIE executable, install scanelf, part of paxutils, and use:
|
||||||
|
|
||||||
scanelf -e ./bitcoin
|
scanelf -e ./dogecoin
|
||||||
|
|
||||||
The output should contain:
|
The output should contain:
|
||||||
|
|
||||||
|
@ -234,24 +233,24 @@ Hardening enables the following features:
|
||||||
ET_DYN
|
ET_DYN
|
||||||
|
|
||||||
* Non-executable Stack
|
* Non-executable Stack
|
||||||
If the stack is executable then trivial stack based buffer overflow exploits are possible if
|
If the stack is executable, trivial stack-based buffer overflow exploits are possible if
|
||||||
vulnerable buffers are found. By default, bitcoin should be built with a non-executable stack
|
vulnerable buffers are found. By default, Dogecoin should be built with a non-executable stack,
|
||||||
but if one of the libraries it uses asks for an executable stack or someone makes a mistake
|
but if one of the libraries it uses asks for an executable stack or someone makes a mistake
|
||||||
and uses a compiler extension which requires an executable stack, it will silently build an
|
and uses a compiler extension which requires an executable stack, it will silently build an
|
||||||
executable without the non-executable stack protection.
|
executable without the non-executable stack protection.
|
||||||
|
|
||||||
To verify that the stack is non-executable after compiling use:
|
To verify that the stack is non-executable after compiling, use:
|
||||||
`scanelf -e ./bitcoin`
|
`scanelf -e ./dogecoin`
|
||||||
|
|
||||||
the output should contain:
|
the output should contain:
|
||||||
STK/REL/PTL
|
STK/REL/PTL
|
||||||
RW- R-- RW-
|
RW- R-- RW-
|
||||||
|
|
||||||
The STK RW- means that the stack is readable and writeable but not executable.
|
The STK RW- means that the stack is readable and writeable, but not executable.
|
||||||
|
|
||||||
Disable-wallet mode
|
Disable-wallet mode
|
||||||
--------------------
|
--------------------
|
||||||
When the intention is to run only a P2P node without a wallet, bitcoin may be compiled in
|
When the intention is to run only a P2P node without a wallet, Dogecoin may be compiled in
|
||||||
disable-wallet mode with:
|
disable-wallet mode with:
|
||||||
|
|
||||||
./configure --disable-wallet
|
./configure --disable-wallet
|
||||||
|
@ -259,7 +258,7 @@ disable-wallet mode with:
|
||||||
In this case there is no dependency on Berkeley DB 4.8.
|
In this case there is no dependency on Berkeley DB 4.8.
|
||||||
|
|
||||||
Mining is also possible in disable-wallet mode, but only using the `getblocktemplate` RPC
|
Mining is also possible in disable-wallet mode, but only using the `getblocktemplate` RPC
|
||||||
call not `getwork`.
|
call, not `getwork`.
|
||||||
|
|
||||||
Additional Configure Flags
|
Additional Configure Flags
|
||||||
--------------------------
|
--------------------------
|
||||||
|
@ -283,7 +282,7 @@ Note:
|
||||||
Enabling wallet support requires either compiling against a Berkeley DB newer than 4.8 (package `db`) using `--with-incompatible-bdb`,
|
Enabling wallet support requires either compiling against a Berkeley DB newer than 4.8 (package `db`) using `--with-incompatible-bdb`,
|
||||||
or building and depending on a local version of Berkeley DB 4.8. The readily available Arch Linux packages are currently built using
|
or building and depending on a local version of Berkeley DB 4.8. The readily available Arch Linux packages are currently built using
|
||||||
`--with-incompatible-bdb` according to the [PKGBUILD](https://projects.archlinux.org/svntogit/community.git/tree/bitcoin/trunk/PKGBUILD).
|
`--with-incompatible-bdb` according to the [PKGBUILD](https://projects.archlinux.org/svntogit/community.git/tree/bitcoin/trunk/PKGBUILD).
|
||||||
As mentioned above, when maintaining portability of the wallet between the standard Bitcoin Core distributions and independently built
|
As mentioned above, when maintaining portability of the wallet between the standard Dogecoin Core distributions and independently built
|
||||||
node software is desired, Berkeley DB 4.8 must be used.
|
node software is desired, Berkeley DB 4.8 must be used.
|
||||||
|
|
||||||
|
|
||||||
|
@ -331,7 +330,7 @@ For the wallet (optional):
|
||||||
This will give a warning "configure: WARNING: Found Berkeley DB other
|
This will give a warning "configure: WARNING: Found Berkeley DB other
|
||||||
than 4.8; wallets opened by this build will not be portable!", but as FreeBSD never
|
than 4.8; wallets opened by this build will not be portable!", but as FreeBSD never
|
||||||
had a binary release, this may not matter. If backwards compatibility
|
had a binary release, this may not matter. If backwards compatibility
|
||||||
with 4.8-built Bitcoin Core is needed follow the steps under "Berkeley DB" above.
|
with 4.8-built Dogecoin Core is needed follow the steps under "Berkeley DB" above.
|
||||||
|
|
||||||
Then build using:
|
Then build using:
|
||||||
|
|
||||||
|
|
|
@ -128,7 +128,7 @@ to see it.
|
||||||
|
|
||||||
**testnet and regtest modes**
|
**testnet and regtest modes**
|
||||||
|
|
||||||
Run with the -testnet option to run with "play bitcoins" on the test network, if you
|
Run with the -testnet option to run with "play dogecoins" on the test network, if you
|
||||||
are testing multi-machine code that needs to operate across the internet.
|
are testing multi-machine code that needs to operate across the internet.
|
||||||
|
|
||||||
If you are testing something that can run on one machine, run with the -regtest option.
|
If you are testing something that can run on one machine, run with the -regtest option.
|
||||||
|
@ -137,7 +137,7 @@ that run in -regtest mode.
|
||||||
|
|
||||||
**DEBUG_LOCKORDER**
|
**DEBUG_LOCKORDER**
|
||||||
|
|
||||||
Bitcoin Core is a multithreaded application, and deadlocks or other multithreading bugs
|
Dogecoin Core is a multithreaded application, and deadlocks or other multithreading bugs
|
||||||
can be very difficult to track down. Compiling with -DDEBUG_LOCKORDER (configure
|
can be very difficult to track down. Compiling with -DDEBUG_LOCKORDER (configure
|
||||||
CXXFLAGS="-DDEBUG_LOCKORDER -g") inserts run-time checks to keep track of which locks
|
CXXFLAGS="-DDEBUG_LOCKORDER -g") inserts run-time checks to keep track of which locks
|
||||||
are held, and adds warnings to the debug.log file if inconsistencies are detected.
|
are held, and adds warnings to the debug.log file if inconsistencies are detected.
|
||||||
|
@ -172,7 +172,7 @@ Threads
|
||||||
|
|
||||||
- ThreadMapPort : Universal plug-and-play startup/shutdown
|
- ThreadMapPort : Universal plug-and-play startup/shutdown
|
||||||
|
|
||||||
- ThreadSocketHandler : Sends/Receives data from peers on port 8333.
|
- ThreadSocketHandler : Sends/Receives data from peers on port 22556.
|
||||||
|
|
||||||
- ThreadOpenAddedConnections : Opens network connections to added nodes.
|
- ThreadOpenAddedConnections : Opens network connections to added nodes.
|
||||||
|
|
||||||
|
@ -184,9 +184,9 @@ Threads
|
||||||
|
|
||||||
- ThreadFlushWalletDB : Close the wallet.dat file if it hasn't been used in 500ms.
|
- ThreadFlushWalletDB : Close the wallet.dat file if it hasn't been used in 500ms.
|
||||||
|
|
||||||
- ThreadRPCServer : Remote procedure call handler, listens on port 8332 for connections and services them.
|
- ThreadRPCServer : Remote procedure call handler, listens on port 22555 for connections and services them.
|
||||||
|
|
||||||
- BitcoinMiner : Generates bitcoins (if wallet is enabled).
|
- DogecoinMiner : Generates dogecoins (if wallet is enabled).
|
||||||
|
|
||||||
- Shutdown : Does an orderly shutdown of everything.
|
- Shutdown : Does an orderly shutdown of everything.
|
||||||
|
|
||||||
|
@ -490,7 +490,7 @@ Git and GitHub tips
|
||||||
|
|
||||||
[remote "upstream-pull"]
|
[remote "upstream-pull"]
|
||||||
fetch = +refs/pull/*:refs/remotes/upstream-pull/*
|
fetch = +refs/pull/*:refs/remotes/upstream-pull/*
|
||||||
url = git@github.com:bitcoin/bitcoin.git
|
url = git@github.com:dogecoin/dogecoin.git
|
||||||
|
|
||||||
This will add an `upstream-pull` remote to your git repository, which can be fetched using `git fetch --all`
|
This will add an `upstream-pull` remote to your git repository, which can be fetched using `git fetch --all`
|
||||||
or `git fetch upstream-pull`. Afterwards, you can use `upstream-pull/NUMBER/head` in arguments to `git show`,
|
or `git fetch upstream-pull`. Afterwards, you can use `upstream-pull/NUMBER/head` in arguments to `git show`,
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
Expectations for DNS Seed operators
|
Expectations for DNS Seed operators
|
||||||
====================================
|
====================================
|
||||||
|
|
||||||
Bitcoin Core attempts to minimize the level of trust in DNS seeds,
|
Dogecoin Core attempts to minimize the level of trust in DNS seeds,
|
||||||
but DNS seeds still pose a small amount of risk for the network.
|
but DNS seeds still pose a small amount of risk for the network.
|
||||||
As such, DNS seeds must be run by entities which have some minimum
|
As such, DNS seeds must be run by entities which have some minimum
|
||||||
level of trust within the Bitcoin community.
|
level of trust within the Dogecoin community.
|
||||||
|
|
||||||
Other implementations of Bitcoin software may also use the same
|
Other implementations of Dogecoin software may also use the same
|
||||||
seeds and may be more exposed. In light of this exposure, this
|
seeds and may be more exposed. In light of this exposure, this
|
||||||
document establishes some basic expectations for operating dnsseeds.
|
document establishes some basic expectations for operating dnsseeds.
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ and not sell or transfer control of the DNS seed. Any hosting services
|
||||||
contracted by the operator are equally expected to uphold these expectations.
|
contracted by the operator are equally expected to uphold these expectations.
|
||||||
|
|
||||||
1. The DNS seed results must consist exclusively of fairly selected and
|
1. The DNS seed results must consist exclusively of fairly selected and
|
||||||
functioning Bitcoin nodes from the public network to the best of the
|
functioning Dogecoin nodes from the public network to the best of the
|
||||||
operator's understanding and capability.
|
operator's understanding and capability.
|
||||||
|
|
||||||
2. For the avoidance of doubt, the results may be randomized but must not
|
2. For the avoidance of doubt, the results may be randomized but must not
|
||||||
|
@ -26,7 +26,7 @@ urgent technical necessity and disclosed.
|
||||||
3. The results may not be served with a DNS TTL of less than one minute.
|
3. The results may not be served with a DNS TTL of less than one minute.
|
||||||
|
|
||||||
4. Any logging of DNS queries should be only that which is necessary
|
4. Any logging of DNS queries should be only that which is necessary
|
||||||
for the operation of the service or urgent health of the Bitcoin
|
for the operation of the service or urgent health of the Dogecoin
|
||||||
network and must not be retained longer than necessary nor disclosed
|
network and must not be retained longer than necessary nor disclosed
|
||||||
to any third party.
|
to any third party.
|
||||||
|
|
||||||
|
@ -42,13 +42,13 @@ details of their operating practices.
|
||||||
related to the DNS seed operation.
|
related to the DNS seed operation.
|
||||||
|
|
||||||
If these expectations cannot be satisfied the operator should
|
If these expectations cannot be satisfied the operator should
|
||||||
discontinue providing services and contact the active Bitcoin
|
discontinue providing services and contact the active Dogecoin
|
||||||
Core development team as well as posting on
|
Core development team as well as posting on
|
||||||
[bitcoin-dev](https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev).
|
[Dogecoin Dev](https://reddit.com/r/dogecoindev).
|
||||||
|
|
||||||
Behavior outside of these expectations may be reasonable in some
|
Behavior outside of these expectations may be reasonable in some
|
||||||
situations but should be discussed in public in advance.
|
situations but should be discussed in public in advance.
|
||||||
|
|
||||||
See also
|
See also
|
||||||
----------
|
----------
|
||||||
- [bitcoin-seeder](https://github.com/sipa/bitcoin-seeder) is a reference implementation of a DNS seed.
|
- [dogecoin-seeder](https://github.com/langerhans/dogecoin-seeder) is a reference implementation of a DNS seed.
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
|
|
||||||
* banlist.dat: stores the IPs/Subnets of banned nodes
|
* banlist.dat: stores the IPs/Subnets of banned nodes
|
||||||
* bitcoin.conf: contains configuration settings for bitcoind or bitcoin-qt
|
* dogecoin.conf: contains configuration settings for dogecoind or dogecoin-qt
|
||||||
* bitcoind.pid: stores the process id of bitcoind while running
|
* dogecoind.pid: stores the process id of dogecoind while running
|
||||||
* blocks/blk000??.dat: block data (custom, 128 MiB per file); since 0.8.0
|
* blocks/blk000??.dat: block data (custom, 128 MiB per file); since 0.8.0
|
||||||
* blocks/rev000??.dat; block undo data (custom); since 0.8.0 (format changed since pre-0.8)
|
* blocks/rev000??.dat; block undo data (custom); since 0.8.0 (format changed since pre-0.8)
|
||||||
* blocks/index/*; block index (LevelDB); since 0.8.0
|
* blocks/index/*; block index (LevelDB); since 0.8.0
|
||||||
* chainstate/*; block chain state database (LevelDB); since 0.8.0
|
* chainstate/*; block chain state database (LevelDB); since 0.8.0
|
||||||
* database/*: BDB database environment; only used for wallet since 0.8.0
|
* database/*: BDB database environment; only used for wallet since 0.8.0
|
||||||
* db.log: wallet database log file
|
* db.log: wallet database log file
|
||||||
* debug.log: contains debug information and general logging generated by bitcoind or bitcoin-qt
|
* debug.log: contains debug information and general logging generated by dogecoind or dogecoin-qt
|
||||||
* fee_estimates.dat: stores statistics used to estimate minimum transaction fees and priorities required for confirmation; since 0.10.0
|
* fee_estimates.dat: stores statistics used to estimate minimum transaction fees and priorities required for confirmation; since 0.10.0
|
||||||
* mempool.dat: dump of the mempool's transactions; since 0.14.0.
|
* mempool.dat: dump of the mempool's transactions; since 0.14.0.
|
||||||
* peers.dat: peer IP address database (custom format); since 0.7.0
|
* peers.dat: peer IP address database (custom format); since 0.7.0
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
Fuzz-testing Bitcoin Core
|
Fuzz-testing Dogecoin Core
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
A special test harness `test_bitcoin_fuzzy` is provided to provide an easy
|
A special test harness `test_dogecoin_fuzzy` is provided to provide an easy
|
||||||
entry point for fuzzers and the like. In this document we'll describe how to
|
entry point for fuzzers and the like. In this document we'll describe how to
|
||||||
use it with AFL.
|
use it with AFL.
|
||||||
|
|
||||||
|
@ -20,13 +20,13 @@ export AFLPATH=$PWD
|
||||||
Instrumentation
|
Instrumentation
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
To build Bitcoin Core using AFL instrumentation (this assumes that the
|
To build Dogecoin Core using AFL instrumentation (this assumes that the
|
||||||
`AFLPATH` was set as above):
|
`AFLPATH` was set as above):
|
||||||
```
|
```
|
||||||
./configure --disable-ccache --disable-shared --enable-tests CC=${AFLPATH}/afl-gcc CXX=${AFLPATH}/afl-g++
|
./configure --disable-ccache --disable-shared --enable-tests CC=${AFLPATH}/afl-gcc CXX=${AFLPATH}/afl-g++
|
||||||
export AFL_HARDEN=1
|
export AFL_HARDEN=1
|
||||||
cd src/
|
cd src/
|
||||||
make test/test_bitcoin_fuzzy
|
make test/test_dogecoin_fuzzy
|
||||||
```
|
```
|
||||||
We disable ccache because we don't want to pollute the ccache with instrumented
|
We disable ccache because we don't want to pollute the ccache with instrumented
|
||||||
objects, and similarly don't want to use non-instrumented cached objects linked
|
objects, and similarly don't want to use non-instrumented cached objects linked
|
||||||
|
@ -46,12 +46,12 @@ mkdir outputs
|
||||||
AFLOUT=$PWD/outputs
|
AFLOUT=$PWD/outputs
|
||||||
```
|
```
|
||||||
|
|
||||||
Example inputs are available from:
|
Example inputs for Bitcoin Core are available from:
|
||||||
|
|
||||||
- https://download.visucore.com/bitcoin/bitcoin_fuzzy_in.tar.xz
|
- https://download.visucore.com/bitcoin/bitcoin_fuzzy_in.tar.xz
|
||||||
- http://strateman.ninja/fuzzing.tar.xz
|
- http://strateman.ninja/fuzzing.tar.xz
|
||||||
|
|
||||||
Extract these (or other starting inputs) into the `inputs` directory before starting fuzzing.
|
Extract these (or other starting inputs) into the `inputs` directory before starting fuzzing. These will need adapting to Dogecoin before use.
|
||||||
|
|
||||||
Fuzzing
|
Fuzzing
|
||||||
--------
|
--------
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
Gitian building
|
Gitian building
|
||||||
================
|
================
|
||||||
|
|
||||||
*Setup instructions for a Gitian build of Bitcoin Core using a Debian VM or physical system.*
|
*Setup instructions for a Gitian build of Dogecoin Core using a Debian VM or physical system.*
|
||||||
|
|
||||||
Gitian is the deterministic build process that is used to build the Bitcoin
|
Gitian is the deterministic build process that is used to build the Dogecoin
|
||||||
Core executables. It provides a way to be reasonably sure that the
|
Core executables. It provides a way to be reasonably sure that the
|
||||||
executables are really built from the source on GitHub. It also makes sure that
|
executables are really built from the source on GitHub. It also makes sure that
|
||||||
the same, tested dependencies are used and statically built into the executable.
|
the same, tested dependencies are used and statically built into the executable.
|
||||||
|
@ -11,7 +11,7 @@ the same, tested dependencies are used and statically built into the executable.
|
||||||
Multiple developers build the source code by following a specific descriptor
|
Multiple developers build the source code by following a specific descriptor
|
||||||
("recipe"), cryptographically sign the result, and upload the resulting signature.
|
("recipe"), cryptographically sign the result, and upload the resulting signature.
|
||||||
These results are compared and only if they match, the build is accepted and uploaded
|
These results are compared and only if they match, the build is accepted and uploaded
|
||||||
to bitcoin.org.
|
to dogecoin.com.
|
||||||
|
|
||||||
More independent Gitian builders are needed, which is why this guide exists.
|
More independent Gitian builders are needed, which is why this guide exists.
|
||||||
It is preferred you follow these steps yourself instead of using someone else's
|
It is preferred you follow these steps yourself instead of using someone else's
|
||||||
|
@ -26,7 +26,7 @@ Table of Contents
|
||||||
- [Installing Gitian](#installing-gitian)
|
- [Installing Gitian](#installing-gitian)
|
||||||
- [Setting up the Gitian image](#setting-up-the-gitian-image)
|
- [Setting up the Gitian image](#setting-up-the-gitian-image)
|
||||||
- [Getting and building the inputs](#getting-and-building-the-inputs)
|
- [Getting and building the inputs](#getting-and-building-the-inputs)
|
||||||
- [Building Bitcoin Core](#building-bitcoin-core)
|
- [Building Dogecoin Core](#building-dogecoin-core)
|
||||||
- [Building an alternative repository](#building-an-alternative-repository)
|
- [Building an alternative repository](#building-an-alternative-repository)
|
||||||
- [Signing externally](#signing-externally)
|
- [Signing externally](#signing-externally)
|
||||||
- [Uploading signatures](#uploading-signatures)
|
- [Uploading signatures](#uploading-signatures)
|
||||||
|
@ -305,12 +305,12 @@ cd ..
|
||||||
|
|
||||||
**Note**: When sudo asks for a password, enter the password for the user *debian* not for *root*.
|
**Note**: When sudo asks for a password, enter the password for the user *debian* not for *root*.
|
||||||
|
|
||||||
Clone the git repositories for bitcoin and Gitian.
|
Clone the git repositories for dogecoin and Gitian.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/devrandom/gitian-builder.git
|
git clone https://github.com/devrandom/gitian-builder.git
|
||||||
git clone https://github.com/bitcoin/bitcoin
|
git clone https://github.com/dogecoin/dogecoin.git
|
||||||
git clone https://github.com/bitcoin-core/gitian.sigs.git
|
git clone https://github.com/dogecoin/gitian.sigs.git
|
||||||
```
|
```
|
||||||
|
|
||||||
Setting up the Gitian image
|
Setting up the Gitian image
|
||||||
|
@ -339,16 +339,16 @@ Getting and building the inputs
|
||||||
At this point you have two options, you can either use the automated script (found in [contrib/gitian-build.sh](/contrib/gitian-build.sh)) or you could manually do everything by following this guide. If you're using the automated script, then run it with the "--setup" command. Afterwards, run it with the "--build" command (example: "contrib/gitian-building.sh -b signer 0.13.0"). Otherwise ignore this.
|
At this point you have two options, you can either use the automated script (found in [contrib/gitian-build.sh](/contrib/gitian-build.sh)) or you could manually do everything by following this guide. If you're using the automated script, then run it with the "--setup" command. Afterwards, run it with the "--build" command (example: "contrib/gitian-building.sh -b signer 0.13.0"). Otherwise ignore this.
|
||||||
|
|
||||||
Follow the instructions in [doc/release-process.md](release-process.md#fetch-and-create-inputs-first-time-or-when-dependency-versions-change)
|
Follow the instructions in [doc/release-process.md](release-process.md#fetch-and-create-inputs-first-time-or-when-dependency-versions-change)
|
||||||
in the bitcoin repository under 'Fetch and create inputs' to install sources which require
|
in the dogecoin repository under 'Fetch and create inputs' to install sources which require
|
||||||
manual intervention. Also optionally follow the next step: 'Seed the Gitian sources cache
|
manual intervention. Also optionally follow the next step: 'Seed the Gitian sources cache
|
||||||
and offline git repositories' which will fetch the remaining files required for building
|
and offline git repositories' which will fetch the remaining files required for building
|
||||||
offline.
|
offline.
|
||||||
|
|
||||||
Building Bitcoin Core
|
Building Dogecoin Core
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
To build Bitcoin Core (for Linux, OS X and Windows) just follow the steps under 'perform
|
To build Dogecoin Core (for Linux, OS X and Windows) just follow the steps under 'perform
|
||||||
Gitian builds' in [doc/release-process.md](release-process.md#perform-gitian-builds) in the bitcoin repository.
|
Gitian builds' in [doc/release-process.md](release-process.md#perform-gitian-builds) in the dogecoin repository.
|
||||||
|
|
||||||
This may take some time as it will build all the dependencies needed for each descriptor.
|
This may take some time as it will build all the dependencies needed for each descriptor.
|
||||||
These dependencies will be cached after a successful build to avoid rebuilding them when possible.
|
These dependencies will be cached after a successful build to avoid rebuilding them when possible.
|
||||||
|
@ -362,12 +362,12 @@ tail -f var/build.log
|
||||||
|
|
||||||
Output from `gbuild` will look something like
|
Output from `gbuild` will look something like
|
||||||
|
|
||||||
Initialized empty Git repository in /home/debian/gitian-builder/inputs/bitcoin/.git/
|
Initialized empty Git repository in /home/debian/gitian-builder/inputs/dogecoin/.git/
|
||||||
remote: Counting objects: 57959, done.
|
remote: Counting objects: 57959, done.
|
||||||
remote: Total 57959 (delta 0), reused 0 (delta 0), pack-reused 57958
|
remote: Total 57959 (delta 0), reused 0 (delta 0), pack-reused 57958
|
||||||
Receiving objects: 100% (57959/57959), 53.76 MiB | 484.00 KiB/s, done.
|
Receiving objects: 100% (57959/57959), 53.76 MiB | 484.00 KiB/s, done.
|
||||||
Resolving deltas: 100% (41590/41590), done.
|
Resolving deltas: 100% (41590/41590), done.
|
||||||
From https://github.com/bitcoin/bitcoin
|
From https://github.com/dogecoin/dogecoin
|
||||||
... (new tags, new branch etc)
|
... (new tags, new branch etc)
|
||||||
--- Building for trusty amd64 ---
|
--- Building for trusty amd64 ---
|
||||||
Stopping target if it is up
|
Stopping target if it is up
|
||||||
|
@ -393,18 +393,18 @@ and inputs.
|
||||||
|
|
||||||
For example:
|
For example:
|
||||||
```bash
|
```bash
|
||||||
URL=https://github.com/laanwj/bitcoin.git
|
URL=https://github.com/laanwj/dogecoin.git
|
||||||
COMMIT=2014_03_windows_unicode_path
|
COMMIT=2014_03_windows_unicode_path
|
||||||
./bin/gbuild --commit bitcoin=${COMMIT} --url bitcoin=${URL} ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
|
./bin/gbuild --commit dogecoin=${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-linux.yml
|
||||||
./bin/gbuild --commit bitcoin=${COMMIT} --url bitcoin=${URL} ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
|
./bin/gbuild --commit dogecoin=${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-win.yml
|
||||||
./bin/gbuild --commit bitcoin=${COMMIT} --url bitcoin=${URL} ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
|
./bin/gbuild --commit dogecoin=${COMMIT} --url dogecoin=${URL} ../dogecoin/contrib/gitian-descriptors/gitian-osx.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
Building fully offline
|
Building fully offline
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
For building fully offline including attaching signatures to unsigned builds, the detached-sigs repository
|
For building fully offline including attaching signatures to unsigned builds, the detached-sigs repository
|
||||||
and the bitcoin git repository with the desired tag must both be available locally, and then gbuild must be
|
and the dogecoin git repository with the desired tag must both be available locally, and then gbuild must be
|
||||||
told where to find them. It also requires an apt-cacher-ng which is fully-populated but set to offline mode, or
|
told where to find them. It also requires an apt-cacher-ng which is fully-populated but set to offline mode, or
|
||||||
manually disabling gitian-builder's use of apt-get to update the VM build environment.
|
manually disabling gitian-builder's use of apt-get to update the VM build environment.
|
||||||
|
|
||||||
|
@ -423,7 +423,7 @@ cd /path/to/gitian-builder
|
||||||
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root apt-get update
|
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root apt-get update
|
||||||
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root \
|
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root \
|
||||||
-e DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -y install \
|
-e DEBIAN_FRONTEND=noninteractive apt-get --no-install-recommends -y install \
|
||||||
$( sed -ne '/^packages:/,/[^-] .*/ {/^- .*/{s/"//g;s/- //;p}}' ../bitcoin/contrib/gitian-descriptors/*|sort|uniq )
|
$( sed -ne '/^packages:/,/[^-] .*/ {/^- .*/{s/"//g;s/- //;p}}' ../dogecoin/contrib/gitian-descriptors/*|sort|uniq )
|
||||||
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root apt-get -q -y purge grub
|
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root apt-get -q -y purge grub
|
||||||
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root -e DEBIAN_FRONTEND=noninteractive apt-get -y dist-upgrade
|
LXC_ARCH=amd64 LXC_SUITE=trusty on-target -u root -e DEBIAN_FRONTEND=noninteractive apt-get -y dist-upgrade
|
||||||
```
|
```
|
||||||
|
@ -443,12 +443,12 @@ Then when building, override the remote URLs that gbuild would otherwise pull fr
|
||||||
```bash
|
```bash
|
||||||
|
|
||||||
cd /some/root/path/
|
cd /some/root/path/
|
||||||
git clone https://github.com/bitcoin-core/bitcoin-detached-sigs.git
|
git clone https://github.com/dogecoin/dogecoin-detached-sigs.git
|
||||||
|
|
||||||
BTCPATH=/some/root/path/bitcoin
|
BTCPATH=/some/root/path/dogecoin
|
||||||
SIGPATH=/some/root/path/bitcoin-detached-sigs
|
SIGPATH=/some/root/path/dogecoin-detached-sigs
|
||||||
|
|
||||||
./bin/gbuild --url bitcoin=${BTCPATH},signature=${SIGPATH} ../bitcoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
./bin/gbuild --url dogecoin=${BTCPATH},signature=${SIGPATH} ../dogecoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
Signing externally
|
Signing externally
|
||||||
|
@ -463,9 +463,9 @@ When you execute `gsign` you will get an error from GPG, which can be ignored. C
|
||||||
in `gitian.sigs` to your signing machine and do
|
in `gitian.sigs` to your signing machine and do
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
gpg --detach-sign ${VERSION}-linux/${SIGNER}/bitcoin-linux-build.assert
|
gpg --detach-sign ${VERSION}-linux/${SIGNER}/dogecoin-linux-build.assert
|
||||||
gpg --detach-sign ${VERSION}-win/${SIGNER}/bitcoin-win-build.assert
|
gpg --detach-sign ${VERSION}-win/${SIGNER}/dogecoin-win-build.assert
|
||||||
gpg --detach-sign ${VERSION}-osx-unsigned/${SIGNER}/bitcoin-osx-build.assert
|
gpg --detach-sign ${VERSION}-osx-unsigned/${SIGNER}/dogecoin-osx-build.assert
|
||||||
```
|
```
|
||||||
|
|
||||||
This will create the `.sig` files that can be committed together with the `.assert` files to assert your
|
This will create the `.sig` files that can be committed together with the `.assert` files to assert your
|
||||||
|
@ -475,5 +475,5 @@ Uploading signatures
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
After building and signing you can push your signatures (both the `.assert` and `.assert.sig` files) to the
|
After building and signing you can push your signatures (both the `.assert` and `.assert.sig` files) to the
|
||||||
[bitcoin-core/gitian.sigs](https://github.com/bitcoin-core/gitian.sigs/) repository, or if that's not possible create a pull
|
[dogecoin/gitian.sigs](https://github.com/dogecoin/gitian.sigs/) repository, or if that's not possible create a pull
|
||||||
request. You can also mail the files to Wladimir (laanwj@gmail.com) and he will commit them.
|
request. You can also mail the files to Wladimir (laanwj@gmail.com) and he will commit them.
|
||||||
|
|
82
doc/init.md
82
doc/init.md
|
@ -1,36 +1,36 @@
|
||||||
Sample init scripts and service configuration for bitcoind
|
Sample init scripts and service configuration for dogecoind
|
||||||
==========================================================
|
==========================================================
|
||||||
|
|
||||||
Sample scripts and configuration files for systemd, Upstart and OpenRC
|
Sample scripts and configuration files for systemd, Upstart and OpenRC
|
||||||
can be found in the contrib/init folder.
|
can be found in the contrib/init folder.
|
||||||
|
|
||||||
contrib/init/bitcoind.service: systemd service unit configuration
|
contrib/init/dogecoind.service: systemd service unit configuration
|
||||||
contrib/init/bitcoind.openrc: OpenRC compatible SysV style init script
|
contrib/init/dogecoind.openrc: OpenRC compatible SysV style init script
|
||||||
contrib/init/bitcoind.openrcconf: OpenRC conf.d file
|
contrib/init/dogecoind.openrcconf: OpenRC conf.d file
|
||||||
contrib/init/bitcoind.conf: Upstart service configuration file
|
contrib/init/dogecoind.conf: Upstart service configuration file
|
||||||
contrib/init/bitcoind.init: CentOS compatible SysV style init script
|
contrib/init/dogecoind.init: CentOS compatible SysV style init script
|
||||||
|
|
||||||
1. Service User
|
1. Service User
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
All three Linux startup configurations assume the existence of a "bitcoin" user
|
All three Linux startup configurations assume the existence of a "dogecoin" user
|
||||||
and group. They must be created before attempting to use these scripts.
|
and group. They must be created before attempting to use these scripts.
|
||||||
The OS X configuration assumes bitcoind will be set up for the current user.
|
The OS X configuration assumes dogecoind will be set up for the current user.
|
||||||
|
|
||||||
2. Configuration
|
2. Configuration
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
At a bare minimum, bitcoind requires that the rpcpassword setting be set
|
At a bare minimum, dogecoind requires that the rpcpassword setting be set
|
||||||
when running as a daemon. If the configuration file does not exist or this
|
when running as a daemon. If the configuration file does not exist or this
|
||||||
setting is not set, bitcoind will shutdown promptly after startup.
|
setting is not set, dogecoind will shutdown promptly after startup.
|
||||||
|
|
||||||
This password does not have to be remembered or typed as it is mostly used
|
This password does not have to be remembered or typed as it is mostly used
|
||||||
as a fixed token that bitcoind and client programs read from the configuration
|
as a fixed token that dogecoind and client programs read from the configuration
|
||||||
file, however it is recommended that a strong and secure password be used
|
file, however it is recommended that a strong and secure password be used
|
||||||
as this password is security critical to securing the wallet should the
|
as this password is security critical to securing the wallet should the
|
||||||
wallet be enabled.
|
wallet be enabled.
|
||||||
|
|
||||||
If bitcoind is run with the "-server" flag (set by default), and no rpcpassword is set,
|
If dogecoind is run with the "-server" flag (set by default), and no rpcpassword is set,
|
||||||
it will use a special cookie file for authentication. The cookie is generated with random
|
it will use a special cookie file for authentication. The cookie is generated with random
|
||||||
content when the daemon starts, and deleted when it exits. Read access to this file
|
content when the daemon starts, and deleted when it exits. Read access to this file
|
||||||
controls who can access it through RPC.
|
controls who can access it through RPC.
|
||||||
|
@ -38,13 +38,13 @@ controls who can access it through RPC.
|
||||||
By default the cookie is stored in the data directory, but it's location can be overridden
|
By default the cookie is stored in the data directory, but it's location can be overridden
|
||||||
with the option '-rpccookiefile'.
|
with the option '-rpccookiefile'.
|
||||||
|
|
||||||
This allows for running bitcoind without having to do any manual configuration.
|
This allows for running dogecoind without having to do any manual configuration.
|
||||||
|
|
||||||
`conf`, `pid`, and `wallet` accept relative paths which are interpreted as
|
`conf`, `pid`, and `wallet` accept relative paths which are interpreted as
|
||||||
relative to the data directory. `wallet` *only* supports relative paths.
|
relative to the data directory. `wallet` *only* supports relative paths.
|
||||||
|
|
||||||
For an example configuration file that describes the configuration settings,
|
For an example configuration file that describes the configuration settings,
|
||||||
see `contrib/debian/examples/bitcoin.conf`.
|
see `contrib/debian/examples/dogecoin.conf`.
|
||||||
|
|
||||||
3. Paths
|
3. Paths
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
@ -53,24 +53,24 @@ see `contrib/debian/examples/bitcoin.conf`.
|
||||||
|
|
||||||
All three configurations assume several paths that might need to be adjusted.
|
All three configurations assume several paths that might need to be adjusted.
|
||||||
|
|
||||||
Binary: `/usr/bin/bitcoind`
|
Binary: `/usr/bin/dogecoind`
|
||||||
Configuration file: `/etc/bitcoin/bitcoin.conf`
|
Configuration file: `/etc/dogecoin/dogecoin.conf`
|
||||||
Data directory: `/var/lib/bitcoind`
|
Data directory: `/var/lib/dogecoind`
|
||||||
PID file: `/var/run/bitcoind/bitcoind.pid` (OpenRC and Upstart) or `/var/lib/bitcoind/bitcoind.pid` (systemd)
|
PID file: `/var/run/dogecoind/dogecoind.pid` (OpenRC and Upstart) or `/var/lib/dogecoind/dogecoind.pid` (systemd)
|
||||||
Lock file: `/var/lock/subsys/bitcoind` (CentOS)
|
Lock file: `/var/lock/subsys/dogecoind` (CentOS)
|
||||||
|
|
||||||
The configuration file, PID directory (if applicable) and data directory
|
The configuration file, PID directory (if applicable) and data directory
|
||||||
should all be owned by the bitcoin user and group. It is advised for security
|
should all be owned by the dogecoin user and group. It is advised for security
|
||||||
reasons to make the configuration file and data directory only readable by the
|
reasons to make the configuration file and data directory only readable by the
|
||||||
bitcoin user and group. Access to bitcoin-cli and other bitcoind rpc clients
|
dogecoin user and group. Access to dogecoin-cli and other dogecoind rpc clients
|
||||||
can then be controlled by group membership.
|
can then be controlled by group membership.
|
||||||
|
|
||||||
3b) Mac OS X
|
3b) Mac OS X
|
||||||
|
|
||||||
Binary: `/usr/local/bin/bitcoind`
|
Binary: `/usr/local/bin/dogecoind`
|
||||||
Configuration file: `~/Library/Application Support/Bitcoin/bitcoin.conf`
|
Configuration file: `~/Library/Application Support/Dogecoin/dogecoin.conf`
|
||||||
Data directory: `~/Library/Application Support/Bitcoin`
|
Data directory: `~/Library/Application Support/Dogecoin`
|
||||||
Lock file: `~/Library/Application Support/Bitcoin/.lock`
|
Lock file: `~/Library/Application Support/Dogecoin/.lock`
|
||||||
|
|
||||||
4. Installing Service Configuration
|
4. Installing Service Configuration
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
@ -81,19 +81,19 @@ Installing this .service file consists of just copying it to
|
||||||
/usr/lib/systemd/system directory, followed by the command
|
/usr/lib/systemd/system directory, followed by the command
|
||||||
`systemctl daemon-reload` in order to update running systemd configuration.
|
`systemctl daemon-reload` in order to update running systemd configuration.
|
||||||
|
|
||||||
To test, run `systemctl start bitcoind` and to enable for system startup run
|
To test, run `systemctl start dogecoind` and to enable for system startup run
|
||||||
`systemctl enable bitcoind`
|
`systemctl enable dogecoind`
|
||||||
|
|
||||||
4b) OpenRC
|
4b) OpenRC
|
||||||
|
|
||||||
Rename bitcoind.openrc to bitcoind and drop it in /etc/init.d. Double
|
Rename dogecoind.openrc to dogecoind and drop it in /etc/init.d. Double
|
||||||
check ownership and permissions and make it executable. Test it with
|
check ownership and permissions and make it executable. Test it with
|
||||||
`/etc/init.d/bitcoind start` and configure it to run on startup with
|
`/etc/init.d/dogecoind start` and configure it to run on startup with
|
||||||
`rc-update add bitcoind`
|
`rc-update add dogecoind`
|
||||||
|
|
||||||
4c) Upstart (for Debian/Ubuntu based distributions)
|
4c) Upstart (for Debian/Ubuntu based distributions)
|
||||||
|
|
||||||
Drop bitcoind.conf in /etc/init. Test by running `service bitcoind start`
|
Drop dogecoind.conf in /etc/init. Test by running `service dogecoind start`
|
||||||
it will automatically start on reboot.
|
it will automatically start on reboot.
|
||||||
|
|
||||||
NOTE: This script is incompatible with CentOS 5 and Amazon Linux 2014 as they
|
NOTE: This script is incompatible with CentOS 5 and Amazon Linux 2014 as they
|
||||||
|
@ -101,22 +101,22 @@ use old versions of Upstart and do not supply the start-stop-daemon utility.
|
||||||
|
|
||||||
4d) CentOS
|
4d) CentOS
|
||||||
|
|
||||||
Copy bitcoind.init to /etc/init.d/bitcoind. Test by running `service bitcoind start`.
|
Copy dogecoind.init to /etc/init.d/dogecoind. Test by running `service dogecoind start`.
|
||||||
|
|
||||||
Using this script, you can adjust the path and flags to the bitcoind program by
|
Using this script, you can adjust the path and flags to the dogecoind program by
|
||||||
setting the BITCOIND and FLAGS environment variables in the file
|
setting the DOGECOIND and FLAGS environment variables in the file
|
||||||
/etc/sysconfig/bitcoind. You can also use the DAEMONOPTS environment variable here.
|
/etc/sysconfig/dogecoind. You can also use the DAEMONOPTS environment variable here.
|
||||||
|
|
||||||
4e) Mac OS X
|
4e) Mac OS X
|
||||||
|
|
||||||
Copy org.bitcoin.bitcoind.plist into ~/Library/LaunchAgents. Load the launch agent by
|
Copy org.dogecoin.dogecoind.plist into ~/Library/LaunchAgents. Load the launch agent by
|
||||||
running `launchctl load ~/Library/LaunchAgents/org.bitcoin.bitcoind.plist`.
|
running `launchctl load ~/Library/LaunchAgents/org.dogecoin.dogecoind.plist`.
|
||||||
|
|
||||||
This Launch Agent will cause bitcoind to start whenever the user logs in.
|
This Launch Agent will cause dogecoind to start whenever the user logs in.
|
||||||
|
|
||||||
NOTE: This approach is intended for those wanting to run bitcoind as the current user.
|
NOTE: This approach is intended for those wanting to run dogecoind as the current user.
|
||||||
You will need to modify org.bitcoin.bitcoind.plist if you intend to use it as a
|
You will need to modify org.dogecoin.dogecoind.plist if you intend to use it as a
|
||||||
Launch Daemon with a dedicated bitcoin user.
|
Launch Daemon with a dedicated dogecoin user.
|
||||||
|
|
||||||
5. Auto-respawn
|
5. Auto-respawn
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
|
|
@ -3,9 +3,9 @@ Release Process
|
||||||
|
|
||||||
Before every release candidate:
|
Before every release candidate:
|
||||||
|
|
||||||
* Update translations (ping wumpus on IRC) see [translation_process.md](https://github.com/bitcoin/bitcoin/blob/master/doc/translation_process.md#synchronising-translations).
|
* Update translations (ping wumpus on IRC) see [translation_process.md](https://github.com/dogecoin/dogecoin/blob/master/doc/translation_process.md#synchronising-translations).
|
||||||
|
|
||||||
* Update manpages, see [gen-manpages.sh](https://github.com/bitcoin/bitcoin/blob/master/contrib/devtools/README.md#gen-manpagessh).
|
* Update manpages, see [gen-manpages.sh](https://github.com/dogecoin/dogecoin/blob/master/contrib/devtools/README.md#gen-manpagessh).
|
||||||
|
|
||||||
Before every minor and major release:
|
Before every minor and major release:
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ Before every minor and major release:
|
||||||
|
|
||||||
Before every major release:
|
Before every major release:
|
||||||
|
|
||||||
* Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/bitcoin/bitcoin/pull/7415) for an example.
|
* Update hardcoded [seeds](/contrib/seeds/README.md), see [this pull request](https://github.com/dogecoin/dogecoin/pull/7415) for an example.
|
||||||
* Update [`BLOCK_CHAIN_SIZE`](/src/qt/intro.cpp) to the current size plus some overhead.
|
* Update [`BLOCK_CHAIN_SIZE`](/src/qt/intro.cpp) to the current size plus some overhead.
|
||||||
|
|
||||||
### First time / New builders
|
### First time / New builders
|
||||||
|
@ -31,12 +31,12 @@ If you're using the automated script (found in [contrib/gitian-build.sh](/contri
|
||||||
Check out the source code in the following directory hierarchy.
|
Check out the source code in the following directory hierarchy.
|
||||||
|
|
||||||
cd /path/to/your/toplevel/build
|
cd /path/to/your/toplevel/build
|
||||||
git clone https://github.com/bitcoin-core/gitian.sigs.git
|
git clone https://github.com/dogecoin-core/gitian.sigs.git
|
||||||
git clone https://github.com/bitcoin-core/bitcoin-detached-sigs.git
|
git clone https://github.com/dogecoin-core/dogecoin-detached-sigs.git
|
||||||
git clone https://github.com/devrandom/gitian-builder.git
|
git clone https://github.com/devrandom/gitian-builder.git
|
||||||
git clone https://github.com/bitcoin/bitcoin.git
|
git clone https://github.com/dogecoin/dogecoin.git
|
||||||
|
|
||||||
### Bitcoin maintainers/release engineers, update version in sources
|
### Dogecoin maintainers/release engineers, update version in sources
|
||||||
|
|
||||||
Update the following:
|
Update the following:
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@ If you're using the automated script (found in [contrib/gitian-build.sh](/contri
|
||||||
|
|
||||||
Setup Gitian descriptors:
|
Setup Gitian descriptors:
|
||||||
|
|
||||||
pushd ./bitcoin
|
pushd ./dogecoin
|
||||||
export SIGNER=(your Gitian key, ie bluematt, sipa, etc)
|
export SIGNER=(your Gitian key, ie bluematt, sipa, etc)
|
||||||
export VERSION=(new version, e.g. 0.8.0)
|
export VERSION=(new version, e.g. 0.8.0)
|
||||||
git fetch
|
git fetch
|
||||||
|
@ -109,7 +109,7 @@ Create the OS X SDK tarball, see the [OS X readme](README_osx.md) for details, a
|
||||||
By default, Gitian will fetch source files as needed. To cache them ahead of time:
|
By default, Gitian will fetch source files as needed. To cache them ahead of time:
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
make -C ../bitcoin/depends download SOURCES_PATH=`pwd`/cache/common
|
make -C ../dogecoin/depends download SOURCES_PATH=`pwd`/cache/common
|
||||||
popd
|
popd
|
||||||
|
|
||||||
Only missing files will be fetched, so this is safe to re-run for each build.
|
Only missing files will be fetched, so this is safe to re-run for each build.
|
||||||
|
@ -117,50 +117,50 @@ Only missing files will be fetched, so this is safe to re-run for each build.
|
||||||
NOTE: Offline builds must use the --url flag to ensure Gitian fetches only from local URLs. For example:
|
NOTE: Offline builds must use the --url flag to ensure Gitian fetches only from local URLs. For example:
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
./bin/gbuild --url bitcoin=/path/to/bitcoin,signature=/path/to/sigs {rest of arguments}
|
./bin/gbuild --url dogecoin=/path/to/dogecoin,signature=/path/to/sigs {rest of arguments}
|
||||||
popd
|
popd
|
||||||
|
|
||||||
The gbuild invocations below <b>DO NOT DO THIS</b> by default.
|
The gbuild invocations below <b>DO NOT DO THIS</b> by default.
|
||||||
|
|
||||||
### Build and sign Bitcoin Core for Linux, Windows, and OS X:
|
### Build and sign Dogecoin Core for Linux, Windows, and OS X:
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
./bin/gbuild --memory 3000 --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
|
./bin/gbuild --memory 3000 --commit dogecoin=v${VERSION} ../dogecoin/contrib/gitian-descriptors/gitian-linux.yml
|
||||||
./bin/gsign --signer $SIGNER --release ${VERSION}-linux --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
|
./bin/gsign --signer $SIGNER --release ${VERSION}-linux --destination ../gitian.sigs/ ../dogecoin/contrib/gitian-descriptors/gitian-linux.yml
|
||||||
mv build/out/bitcoin-*.tar.gz build/out/src/bitcoin-*.tar.gz ../
|
mv build/out/dogecoin-*.tar.gz build/out/src/dogecoin-*.tar.gz ../
|
||||||
|
|
||||||
./bin/gbuild --memory 3000 --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
|
./bin/gbuild --memory 3000 --commit dogecoin=v${VERSION} ../dogecoin/contrib/gitian-descriptors/gitian-win.yml
|
||||||
./bin/gsign --signer $SIGNER --release ${VERSION}-win-unsigned --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
|
./bin/gsign --signer $SIGNER --release ${VERSION}-win-unsigned --destination ../gitian.sigs/ ../dogecoin/contrib/gitian-descriptors/gitian-win.yml
|
||||||
mv build/out/bitcoin-*-win-unsigned.tar.gz inputs/bitcoin-win-unsigned.tar.gz
|
mv build/out/dogecoin-*-win-unsigned.tar.gz inputs/dogecoin-win-unsigned.tar.gz
|
||||||
mv build/out/bitcoin-*.zip build/out/bitcoin-*.exe ../
|
mv build/out/dogecoin-*.zip build/out/dogecoin-*.exe ../
|
||||||
|
|
||||||
./bin/gbuild --memory 3000 --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
|
./bin/gbuild --memory 3000 --commit dogecoin=v${VERSION} ../dogecoin/contrib/gitian-descriptors/gitian-osx.yml
|
||||||
./bin/gsign --signer $SIGNER --release ${VERSION}-osx-unsigned --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
|
./bin/gsign --signer $SIGNER --release ${VERSION}-osx-unsigned --destination ../gitian.sigs/ ../dogecoin/contrib/gitian-descriptors/gitian-osx.yml
|
||||||
mv build/out/bitcoin-*-osx-unsigned.tar.gz inputs/bitcoin-osx-unsigned.tar.gz
|
mv build/out/dogecoin-*-osx-unsigned.tar.gz inputs/dogecoin-osx-unsigned.tar.gz
|
||||||
mv build/out/bitcoin-*.tar.gz build/out/bitcoin-*.dmg ../
|
mv build/out/dogecoin-*.tar.gz build/out/dogecoin-*.dmg ../
|
||||||
popd
|
popd
|
||||||
|
|
||||||
Build output expected:
|
Build output expected:
|
||||||
|
|
||||||
1. source tarball (`bitcoin-${VERSION}.tar.gz`)
|
1. source tarball (`dogecoin-${VERSION}.tar.gz`)
|
||||||
2. linux 32-bit and 64-bit dist tarballs (`bitcoin-${VERSION}-linux[32|64].tar.gz`)
|
2. linux 32-bit and 64-bit dist tarballs (`dogecoin-${VERSION}-linux[32|64].tar.gz`)
|
||||||
3. windows 32-bit and 64-bit unsigned installers and dist zips (`bitcoin-${VERSION}-win[32|64]-setup-unsigned.exe`, `bitcoin-${VERSION}-win[32|64].zip`)
|
3. windows 32-bit and 64-bit unsigned installers and dist zips (`dogecoin-${VERSION}-win[32|64]-setup-unsigned.exe`, `dogecoin-${VERSION}-win[32|64].zip`)
|
||||||
4. OS X unsigned installer and dist tarball (`bitcoin-${VERSION}-osx-unsigned.dmg`, `bitcoin-${VERSION}-osx64.tar.gz`)
|
4. OS X unsigned installer and dist tarball (`dogecoin-${VERSION}-osx-unsigned.dmg`, `dogecoin-${VERSION}-osx64.tar.gz`)
|
||||||
5. Gitian signatures (in `gitian.sigs/${VERSION}-<linux|{win,osx}-unsigned>/(your Gitian key)/`)
|
5. Gitian signatures (in `gitian.sigs/${VERSION}-<linux|{win,osx}-unsigned>/(your Gitian key)/`)
|
||||||
|
|
||||||
### Verify other gitian builders signatures to your own. (Optional)
|
### Verify other gitian builders signatures to your own. (Optional)
|
||||||
|
|
||||||
Add other gitian builders keys to your gpg keyring, and/or refresh keys.
|
Add other gitian builders keys to your gpg keyring, and/or refresh keys.
|
||||||
|
|
||||||
gpg --import bitcoin/contrib/gitian-keys/*.pgp
|
gpg --import dogecoin/contrib/gitian-keys/*.pgp
|
||||||
gpg --refresh-keys
|
gpg --refresh-keys
|
||||||
|
|
||||||
Verify the signatures
|
Verify the signatures
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-linux ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
|
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-linux ../dogecoin/contrib/gitian-descriptors/gitian-linux.yml
|
||||||
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-win-unsigned ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
|
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-win-unsigned ../dogecoin/contrib/gitian-descriptors/gitian-win.yml
|
||||||
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-osx-unsigned ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
|
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-osx-unsigned ../dogecoin/contrib/gitian-descriptors/gitian-osx.yml
|
||||||
popd
|
popd
|
||||||
|
|
||||||
### Next steps:
|
### Next steps:
|
||||||
|
@ -178,25 +178,25 @@ Commit your signature to gitian.sigs:
|
||||||
Wait for Windows/OS X detached signatures:
|
Wait for Windows/OS X detached signatures:
|
||||||
|
|
||||||
- Once the Windows/OS X builds each have 3 matching signatures, they will be signed with their respective release keys.
|
- Once the Windows/OS X builds each have 3 matching signatures, they will be signed with their respective release keys.
|
||||||
- Detached signatures will then be committed to the [bitcoin-detached-sigs](https://github.com/bitcoin-core/bitcoin-detached-sigs) repository, which can be combined with the unsigned apps to create signed binaries.
|
- Detached signatures will then be committed to the [dogecoin-detached-sigs](https://github.com/doge/dogecoin-detached-sigs) repository, which can be combined with the unsigned apps to create signed binaries.
|
||||||
|
|
||||||
Create (and optionally verify) the signed OS X binary:
|
Create (and optionally verify) the signed OS X binary:
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
./bin/gbuild -i --commit signature=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
./bin/gbuild -i --commit signature=v${VERSION} ../dogecoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
||||||
./bin/gsign --signer $SIGNER --release ${VERSION}-osx-signed --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
./bin/gsign --signer $SIGNER --release ${VERSION}-osx-signed --destination ../gitian.sigs/ ../dogecoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
||||||
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-osx-signed ../bitcoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-osx-signed ../dogecoin/contrib/gitian-descriptors/gitian-osx-signer.yml
|
||||||
mv build/out/bitcoin-osx-signed.dmg ../bitcoin-${VERSION}-osx.dmg
|
mv build/out/dogecoin-osx-signed.dmg ../dogecoin-${VERSION}-osx.dmg
|
||||||
popd
|
popd
|
||||||
|
|
||||||
Create (and optionally verify) the signed Windows binaries:
|
Create (and optionally verify) the signed Windows binaries:
|
||||||
|
|
||||||
pushd ./gitian-builder
|
pushd ./gitian-builder
|
||||||
./bin/gbuild -i --commit signature=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
./bin/gbuild -i --commit signature=v${VERSION} ../dogecoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
||||||
./bin/gsign --signer $SIGNER --release ${VERSION}-win-signed --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
./bin/gsign --signer $SIGNER --release ${VERSION}-win-signed --destination ../gitian.sigs/ ../dogecoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
||||||
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-win-signed ../bitcoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
./bin/gverify -v -d ../gitian.sigs/ -r ${VERSION}-win-signed ../dogecoin/contrib/gitian-descriptors/gitian-win-signer.yml
|
||||||
mv build/out/bitcoin-*win64-setup.exe ../bitcoin-${VERSION}-win64-setup.exe
|
mv build/out/dogecoin-*win64-setup.exe ../dogecoin-${VERSION}-win64-setup.exe
|
||||||
mv build/out/bitcoin-*win32-setup.exe ../bitcoin-${VERSION}-win32-setup.exe
|
mv build/out/dogecoin-*win32-setup.exe ../dogecoin-${VERSION}-win32-setup.exe
|
||||||
popd
|
popd
|
||||||
|
|
||||||
Commit your signature for the signed OS X/Windows binaries:
|
Commit your signature for the signed OS X/Windows binaries:
|
||||||
|
@ -218,23 +218,23 @@ sha256sum * > SHA256SUMS
|
||||||
|
|
||||||
The list of files should be:
|
The list of files should be:
|
||||||
```
|
```
|
||||||
bitcoin-${VERSION}-aarch64-linux-gnu.tar.gz
|
dogecoin-${VERSION}-aarch64-linux-gnu.tar.gz
|
||||||
bitcoin-${VERSION}-arm-linux-gnueabihf.tar.gz
|
dogecoin-${VERSION}-arm-linux-gnueabihf.tar.gz
|
||||||
bitcoin-${VERSION}-i686-pc-linux-gnu.tar.gz
|
dogecoin-${VERSION}-i686-pc-linux-gnu.tar.gz
|
||||||
bitcoin-${VERSION}-x86_64-linux-gnu.tar.gz
|
dogecoin-${VERSION}-x86_64-linux-gnu.tar.gz
|
||||||
bitcoin-${VERSION}-osx64.tar.gz
|
dogecoin-${VERSION}-osx64.tar.gz
|
||||||
bitcoin-${VERSION}-osx.dmg
|
dogecoin-${VERSION}-osx.dmg
|
||||||
bitcoin-${VERSION}.tar.gz
|
dogecoin-${VERSION}.tar.gz
|
||||||
bitcoin-${VERSION}-win32-setup.exe
|
dogecoin-${VERSION}-win32-setup.exe
|
||||||
bitcoin-${VERSION}-win32.zip
|
dogecoin-${VERSION}-win32.zip
|
||||||
bitcoin-${VERSION}-win64-setup.exe
|
dogecoin-${VERSION}-win64-setup.exe
|
||||||
bitcoin-${VERSION}-win64.zip
|
dogecoin-${VERSION}-win64.zip
|
||||||
```
|
```
|
||||||
The `*-debug*` files generated by the gitian build contain debug symbols
|
The `*-debug*` files generated by the gitian build contain debug symbols
|
||||||
for troubleshooting by developers. It is assumed that anyone that is interested
|
for troubleshooting by developers. It is assumed that anyone that is interested
|
||||||
in debugging can run gitian to generate the files for themselves. To avoid
|
in debugging can run gitian to generate the files for themselves. To avoid
|
||||||
end-user confusion about which file to pick, as well as save storage
|
end-user confusion about which file to pick, as well as save storage
|
||||||
space *do not upload these to the bitcoin.org server, nor put them in the torrent*.
|
space *do not upload these to the dogecoin.com server, nor put them in the torrent*.
|
||||||
|
|
||||||
- GPG-sign it, delete the unsigned file:
|
- GPG-sign it, delete the unsigned file:
|
||||||
```
|
```
|
||||||
|
@ -244,49 +244,25 @@ rm SHA256SUMS
|
||||||
(the digest algorithm is forced to sha256 to avoid confusion of the `Hash:` header that GPG adds with the SHA256 used for the files)
|
(the digest algorithm is forced to sha256 to avoid confusion of the `Hash:` header that GPG adds with the SHA256 used for the files)
|
||||||
Note: check that SHA256SUMS itself doesn't end up in SHA256SUMS, which is a spurious/nonsensical entry.
|
Note: check that SHA256SUMS itself doesn't end up in SHA256SUMS, which is a spurious/nonsensical entry.
|
||||||
|
|
||||||
- Upload zips and installers, as well as `SHA256SUMS.asc` from last step, to the bitcoin.org server
|
- Upload zips and installers, as well as `SHA256SUMS.asc` from last step, to the dogecoin.com Github repo
|
||||||
into `/var/www/bin/bitcoin-core-${VERSION}`
|
|
||||||
|
|
||||||
- A `.torrent` will appear in the directory after a few minutes. Optionally help seed this torrent. To get the `magnet:` URI use:
|
- Create a [new GitHub release](https://github.com/dogecoin/dogecoin/releases/new) with a link to the archived release notes.
|
||||||
```bash
|
|
||||||
transmission-show -m <torrent file>
|
|
||||||
```
|
|
||||||
Insert the magnet URI into the announcement sent to mailing lists. This permits
|
|
||||||
people without access to `bitcoin.org` to download the binary distribution.
|
|
||||||
Also put it into the `optional_magnetlink:` slot in the YAML file for
|
|
||||||
bitcoin.org (see below for bitcoin.org update instructions).
|
|
||||||
|
|
||||||
- Update bitcoin.org version
|
- Update dogecoin.com version - Langerhans to do
|
||||||
|
|
||||||
- First, check to see if the Bitcoin.org maintainers have prepared a
|
|
||||||
release: https://github.com/bitcoin-dot-org/bitcoin.org/labels/Releases
|
|
||||||
|
|
||||||
- If they have, it will have previously failed their Travis CI
|
|
||||||
checks because the final release files weren't uploaded.
|
|
||||||
Trigger a Travis CI rebuild---if it passes, merge.
|
|
||||||
|
|
||||||
- If they have not prepared a release, follow the Bitcoin.org release
|
|
||||||
instructions: https://github.com/bitcoin-dot-org/bitcoin.org#release-notes
|
|
||||||
|
|
||||||
- After the pull request is merged, the website will automatically show the newest version within 15 minutes, as well
|
|
||||||
as update the OS download links. Ping @saivann/@harding (saivann/harding on Freenode) in case anything goes wrong
|
|
||||||
|
|
||||||
- Announce the release:
|
- Announce the release:
|
||||||
|
|
||||||
- bitcoin-dev and bitcoin-core-dev mailing list
|
- Release sticky on Dogecoin Forums: http://forum.dogecoin.com/forum/news-community/community-announcements
|
||||||
|
|
||||||
- Bitcoin Core announcements list https://bitcoincore.org/en/list/announcements/join/
|
- Dogecoin-development mailing list
|
||||||
|
|
||||||
- bitcoincore.org blog post
|
- Twitter, reddit /r/dogecoin
|
||||||
|
|
||||||
- Update title of #bitcoin on Freenode IRC
|
- Update title of #dogecoin on Freenode IRC
|
||||||
|
|
||||||
- Optionally twitter, reddit /r/Bitcoin, ... but this will usually sort out itself
|
- Announce on reddit /r/dogecoin, /r/dogecoindev
|
||||||
|
|
||||||
- Notify BlueMatt so that he can start building [the PPAs](https://launchpad.net/~bitcoin/+archive/ubuntu/bitcoin)
|
- Add release notes for the new version to the directory `doc/release-notes` in git master
|
||||||
|
|
||||||
- Archive release notes for the new version to `doc/release-notes/` (branch `master` and branch of the release)
|
- To the moon!
|
||||||
|
|
||||||
- Create a [new GitHub release](https://github.com/bitcoin/bitcoin/releases/new) with a link to the archived release notes.
|
|
||||||
|
|
||||||
- Celebrate
|
|
||||||
|
|
|
@ -1,21 +1,21 @@
|
||||||
Shared Libraries
|
Shared Libraries
|
||||||
================
|
================
|
||||||
|
|
||||||
## bitcoinconsensus
|
## dogecoinconsensus
|
||||||
|
|
||||||
The purpose of this library is to make the verification functionality that is critical to Bitcoin's consensus available to other applications, e.g. to language bindings.
|
The purpose of this library is to make the verification functionality that is critical to Dogecoin's consensus available to other applications, e.g. to language bindings.
|
||||||
|
|
||||||
### API
|
### API
|
||||||
|
|
||||||
The interface is defined in the C header `bitcoinconsensus.h` located in `src/script/bitcoinconsensus.h`.
|
The interface is defined in the C header `dogecoinconsensus.h` located in `src/script/dogecoinconsensus.h`.
|
||||||
|
|
||||||
#### Version
|
#### Version
|
||||||
|
|
||||||
`bitcoinconsensus_version` returns an `unsigned int` with the API version *(currently at an experimental `0`)*.
|
`dogecoinconsensus_version` returns an `unsigned int` with the API version *(currently at an experimental `0`)*.
|
||||||
|
|
||||||
#### Script Validation
|
#### Script Validation
|
||||||
|
|
||||||
`bitcoinconsensus_verify_script` returns an `int` with the status of the verification. It will be `1` if the input script correctly spends the previous output `scriptPubKey`.
|
`dogecoinconsensus_verify_script` returns an `int` with the status of the verification. It will be `1` if the input script correctly spends the previous output `scriptPubKey`.
|
||||||
|
|
||||||
##### Parameters
|
##### Parameters
|
||||||
- `const unsigned char *scriptPubKey` - The previous output script that encumbers spending.
|
- `const unsigned char *scriptPubKey` - The previous output script that encumbers spending.
|
||||||
|
@ -24,26 +24,26 @@ The interface is defined in the C header `bitcoinconsensus.h` located in `src/s
|
||||||
- `unsigned int txToLen` - The number of bytes for the `txTo`.
|
- `unsigned int txToLen` - The number of bytes for the `txTo`.
|
||||||
- `unsigned int nIn` - The index of the input in `txTo` that spends the `scriptPubKey`.
|
- `unsigned int nIn` - The index of the input in `txTo` that spends the `scriptPubKey`.
|
||||||
- `unsigned int flags` - The script validation flags *(see below)*.
|
- `unsigned int flags` - The script validation flags *(see below)*.
|
||||||
- `bitcoinconsensus_error* err` - Will have the error/success code for the operation *(see below)*.
|
- `dogecoinconsensus_error* err` - Will have the error/success code for the operation *(see below)*.
|
||||||
|
|
||||||
##### Script Flags
|
##### Script Flags
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_NONE`
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_NONE`
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_P2SH` - Evaluate P2SH ([BIP16](https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki)) subscripts
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_P2SH` - Evaluate P2SH ([BIP16](https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki)) subscripts
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_DERSIG` - Enforce strict DER ([BIP66](https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki)) compliance
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_DERSIG` - Enforce strict DER ([BIP66](https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki)) compliance
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_NULLDUMMY` - Enforce NULLDUMMY ([BIP147](https://github.com/bitcoin/bips/blob/master/bip-0147.mediawiki))
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_NULLDUMMY` - Enforce NULLDUMMY ([BIP147](https://github.com/bitcoin/bips/blob/master/bip-0147.mediawiki))
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_CHECKLOCKTIMEVERIFY` - Enable CHECKLOCKTIMEVERIFY ([BIP65](https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki))
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_CHECKLOCKTIMEVERIFY` - Enable CHECKLOCKTIMEVERIFY ([BIP65](https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki))
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_CHECKSEQUENCEVERIFY` - Enable CHECKSEQUENCEVERIFY ([BIP112](https://github.com/bitcoin/bips/blob/master/bip-0112.mediawiki))
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_CHECKSEQUENCEVERIFY` - Enable CHECKSEQUENCEVERIFY ([BIP112](https://github.com/bitcoin/bips/blob/master/bip-0112.mediawiki))
|
||||||
- `bitcoinconsensus_SCRIPT_FLAGS_VERIFY_WITNESS` - Enable WITNESS ([BIP141](https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki))
|
- `dogecoinconsensus_SCRIPT_FLAGS_VERIFY_WITNESS` - Enable WITNESS ([BIP141](https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki))
|
||||||
|
|
||||||
##### Errors
|
##### Errors
|
||||||
- `bitcoinconsensus_ERR_OK` - No errors with input parameters *(see the return value of `bitcoinconsensus_verify_script` for the verification status)*
|
- `dogecoinconsensus_ERR_OK` - No errors with input parameters *(see the return value of `dogecoinconsensus_verify_script` for the verification status)*
|
||||||
- `bitcoinconsensus_ERR_TX_INDEX` - An invalid index for `txTo`
|
- `dogecoinconsensus_ERR_TX_INDEX` - An invalid index for `txTo`
|
||||||
- `bitcoinconsensus_ERR_TX_SIZE_MISMATCH` - `txToLen` did not match with the size of `txTo`
|
- `dogecoinconsensus_ERR_TX_SIZE_MISMATCH` - `txToLen` did not match with the size of `txTo`
|
||||||
- `bitcoinconsensus_ERR_DESERIALIZE` - An error deserializing `txTo`
|
- `dogecoinconsensus_ERR_DESERIALIZE` - An error deserializing `txTo`
|
||||||
- `bitcoinconsensus_ERR_AMOUNT_REQUIRED` - Input amount is required if WITNESS is used
|
- `dogecoinconsensus_ERR_AMOUNT_REQUIRED` - Input amount is required if WITNESS is used
|
||||||
|
|
||||||
### Example Implementations
|
### Example Implementations
|
||||||
- [NBitcoin](https://github.com/NicolasDorier/NBitcoin/blob/master/NBitcoin/Script.cs#L814) (.NET Bindings)
|
- [NBitcoin](https://github.com/NicolasDorier/NBitcoin/blob/master/NBitcoin/Script.cs#L814) (.NET Bindings)
|
||||||
- [node-libbitcoinconsensus](https://github.com/bitpay/node-libbitcoinconsensus) (Node.js Bindings)
|
- [node-libdogecoinconsensus](https://github.com/bitpay/node-libdogecoinconsensus) (Node.js Bindings)
|
||||||
- [java-libbitcoinconsensus](https://github.com/dexX7/java-libbitcoinconsensus) (Java Bindings)
|
- [java-libdogecoinconsensus](https://github.com/dexX7/java-libdogecoinconsensus) (Java Bindings)
|
||||||
- [bitcoinconsensus-php](https://github.com/Bit-Wasp/bitcoinconsensus-php) (PHP Bindings)
|
- [dogecoinconsensus-php](https://github.com/Bit-Wasp/dogecoinconsensus-php) (PHP Bindings)
|
||||||
|
|
36
doc/tor.md
36
doc/tor.md
|
@ -1,22 +1,22 @@
|
||||||
TOR SUPPORT IN BITCOIN
|
TOR SUPPORT IN DOGECOIN
|
||||||
======================
|
=======================
|
||||||
|
|
||||||
It is possible to run Bitcoin as a Tor hidden service, and connect to such services.
|
It is possible to run Dogecoin as a Tor hidden service, and connect to such services.
|
||||||
|
|
||||||
The following directions assume you have a Tor proxy running on port 9050. Many distributions default to having a SOCKS proxy listening on port 9050, but others may not. In particular, the Tor Browser Bundle defaults to listening on port 9150. See [Tor Project FAQ:TBBSocksPort](https://www.torproject.org/docs/faq.html.en#TBBSocksPort) for how to properly
|
The following directions assume you have a Tor proxy running on port 9050. Many distributions default to having a SOCKS proxy listening on port 9050, but others may not. In particular, the Tor Browser Bundle defaults to listening on port 9150. See [Tor Project FAQ:TBBSocksPort](https://www.torproject.org/docs/faq.html.en#TBBSocksPort) for how to properly
|
||||||
configure Tor.
|
configure Tor.
|
||||||
|
|
||||||
|
|
||||||
1. Run bitcoin behind a Tor proxy
|
1. Run Dogecoin behind a Tor proxy
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
The first step is running Bitcoin behind a Tor proxy. This will already make all
|
The first step is running Dogecoin behind a Tor proxy. This will already make all
|
||||||
outgoing connections be anonymized, but more is possible.
|
outgoing connections be anonymized, but more is possible.
|
||||||
|
|
||||||
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
|
-proxy=ip:port Set the proxy server. If SOCKS5 is selected (default), this proxy
|
||||||
server will be used to try to reach .onion addresses as well.
|
server will be used to try to reach .onion addresses as well.
|
||||||
|
|
||||||
-onion=ip:port Set the proxy server to use for tor hidden services. You do not
|
-onion=ip:port Set the proxy server to use for Tor hidden services. You do not
|
||||||
need to set this if it's the same as -proxy. You can use -noonion
|
need to set this if it's the same as -proxy. You can use -noonion
|
||||||
to explicitly disable access to hidden service.
|
to explicitly disable access to hidden service.
|
||||||
|
|
||||||
|
@ -31,27 +31,27 @@ outgoing connections be anonymized, but more is possible.
|
||||||
|
|
||||||
In a typical situation, this suffices to run behind a Tor proxy:
|
In a typical situation, this suffices to run behind a Tor proxy:
|
||||||
|
|
||||||
./bitcoin -proxy=127.0.0.1:9050
|
./dogecoin -proxy=127.0.0.1:9050
|
||||||
|
|
||||||
|
|
||||||
2. Run a bitcoin hidden server
|
2. Run a Dogecoin hidden server
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
If you configure your Tor system accordingly, it is possible to make your node also
|
If you configure your Tor system accordingly, it is possible to make your node also
|
||||||
reachable from the Tor network. Add these lines to your /etc/tor/torrc (or equivalent
|
reachable from the Tor network. Add these lines to your /etc/tor/torrc (or equivalent
|
||||||
config file):
|
config file):
|
||||||
|
|
||||||
HiddenServiceDir /var/lib/tor/bitcoin-service/
|
HiddenServiceDir /var/lib/tor/dogecoin-service/
|
||||||
HiddenServicePort 8333 127.0.0.1:8333
|
HiddenServicePort 22556 127.0.0.1:22556
|
||||||
HiddenServicePort 18333 127.0.0.1:18333
|
HiddenServicePort 44556 127.0.0.1:44556
|
||||||
|
|
||||||
The directory can be different of course, but (both) port numbers should be equal to
|
The directory can be different of course, but (both) port numbers should be equal to
|
||||||
your bitcoind's P2P listen port (8333 by default).
|
your dogecoind's P2P listen port (22556 by default).
|
||||||
|
|
||||||
-externalip=X You can tell bitcoin about its publicly reachable address using
|
-externalip=X You can tell Dogecoin about its publicly reachable address using
|
||||||
this option, and this can be a .onion address. Given the above
|
this option, and this can be a .onion address. Given the above
|
||||||
configuration, you can find your onion address in
|
configuration, you can find your onion address in
|
||||||
/var/lib/tor/bitcoin-service/hostname. Onion addresses are given
|
/var/lib/tor/dogecoin-service/hostname. Onion addresses are given
|
||||||
preference for your node to advertise itself with, for connections
|
preference for your node to advertise itself with, for connections
|
||||||
coming from unroutable addresses (such as 127.0.0.1, where the
|
coming from unroutable addresses (such as 127.0.0.1, where the
|
||||||
Tor proxy typically runs).
|
Tor proxy typically runs).
|
||||||
|
@ -68,7 +68,7 @@ your bitcoind's P2P listen port (8333 by default).
|
||||||
|
|
||||||
In a typical situation, where you're only reachable via Tor, this should suffice:
|
In a typical situation, where you're only reachable via Tor, this should suffice:
|
||||||
|
|
||||||
./bitcoind -proxy=127.0.0.1:9050 -externalip=57qr3yd1nyntf5k.onion -listen
|
./dogecoind -proxy=127.0.0.1:9050 -externalip=57qr3yd1nyntf5k.onion -listen
|
||||||
|
|
||||||
(obviously, replace the Onion address with your own). It should be noted that you still
|
(obviously, replace the Onion address with your own). It should be noted that you still
|
||||||
listen on all devices and another node could establish a clearnet connection, when knowing
|
listen on all devices and another node could establish a clearnet connection, when knowing
|
||||||
|
@ -79,14 +79,14 @@ your address. To mitigate this, additionally bind the address of your Tor proxy:
|
||||||
If you don't care too much about hiding your node, and want to be reachable on IPv4
|
If you don't care too much about hiding your node, and want to be reachable on IPv4
|
||||||
as well, use `discover` instead:
|
as well, use `discover` instead:
|
||||||
|
|
||||||
./bitcoind ... -discover
|
./dogecoind ... -discover
|
||||||
|
|
||||||
and open port 8333 on your firewall (or use -upnp).
|
and open port 22556 on your firewall (or use -upnp).
|
||||||
|
|
||||||
If you only want to use Tor to reach onion addresses, but not use it as a proxy
|
If you only want to use Tor to reach onion addresses, but not use it as a proxy
|
||||||
for normal IPv4/IPv6 communication, use:
|
for normal IPv4/IPv6 communication, use:
|
||||||
|
|
||||||
./bitcoin -onion=127.0.0.1:9050 -externalip=57qr3yd1nyntf5k.onion -discover
|
./dogecoin -onion=127.0.0.1:9050 -externalip=57qr3yd1nyntf5k.onion -discover
|
||||||
|
|
||||||
3. Automatically listen on Tor
|
3. Automatically listen on Tor
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
Translation Strings Policy
|
Translation Strings Policy
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
This document provides guidelines for internationalization of the Bitcoin Core software.
|
This document provides guidelines for internationalization of the Dogecoin Core software.
|
||||||
|
|
||||||
How to translate?
|
How to translate?
|
||||||
------------------
|
------------------
|
||||||
|
|
|
@ -32,7 +32,7 @@ trigger cache-invalidation and rebuilds as necessary.
|
||||||
|
|
||||||
These caches can be manually removed if necessary. This is one of the very few
|
These caches can be manually removed if necessary. This is one of the very few
|
||||||
manual operations that is possible with Travis, and it can be done by the
|
manual operations that is possible with Travis, and it can be done by the
|
||||||
Bitcoin Core committer via the Travis web interface.
|
Dogecoin Core committer via the Travis web interface.
|
||||||
|
|
||||||
In some cases, secure strings may be needed for hiding sensitive info such as
|
In some cases, secure strings may be needed for hiding sensitive info such as
|
||||||
private keys or URLs. The travis client may be used to create these strings:
|
private keys or URLs. The travis client may be used to create these strings:
|
||||||
|
|
20
doc/zmq.md
20
doc/zmq.md
|
@ -5,8 +5,8 @@ connections, inter-process communication, and shared-memory,
|
||||||
providing various message-oriented semantics such as publish/subscribe,
|
providing various message-oriented semantics such as publish/subscribe,
|
||||||
request/reply, and push/pull.
|
request/reply, and push/pull.
|
||||||
|
|
||||||
The Bitcoin Core daemon can be configured to act as a trusted "border
|
The Dogecoin Core daemon can be configured to act as a trusted "border
|
||||||
router", implementing the bitcoin wire protocol and relay, making
|
router", implementing the dogecoin wire protocol and relay, making
|
||||||
consensus decisions, maintaining the local blockchain database,
|
consensus decisions, maintaining the local blockchain database,
|
||||||
broadcasting locally generated transactions into the network, and
|
broadcasting locally generated transactions into the network, and
|
||||||
providing a queryable RPC interface to interact on a polled basis for
|
providing a queryable RPC interface to interact on a polled basis for
|
||||||
|
@ -33,7 +33,7 @@ buffering or reassembly.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
The ZeroMQ feature in Bitcoin Core requires ZeroMQ API version 4.x or
|
The ZeroMQ feature in Dogecoin Core requires ZeroMQ API version 4.x or
|
||||||
newer. Typically, it is packaged by distributions as something like
|
newer. Typically, it is packaged by distributions as something like
|
||||||
*libzmq3-dev*. The C++ wrapper for ZeroMQ is *not* needed.
|
*libzmq3-dev*. The C++ wrapper for ZeroMQ is *not* needed.
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ operation.
|
||||||
|
|
||||||
By default, the ZeroMQ feature is automatically compiled in if the
|
By default, the ZeroMQ feature is automatically compiled in if the
|
||||||
necessary prerequisites are found. To disable, use --disable-zmq
|
necessary prerequisites are found. To disable, use --disable-zmq
|
||||||
during the *configure* step of building bitcoind:
|
during the *configure* step of building dogecoind:
|
||||||
|
|
||||||
$ ./configure --disable-zmq (other options)
|
$ ./configure --disable-zmq (other options)
|
||||||
|
|
||||||
|
@ -66,8 +66,8 @@ address. The same address can be used in more than one notification.
|
||||||
|
|
||||||
For instance:
|
For instance:
|
||||||
|
|
||||||
$ bitcoind -zmqpubhashtx=tcp://127.0.0.1:28332 \
|
$ dogecoind -zmqpubhashtx=tcp://127.0.0.1:28332 \
|
||||||
-zmqpubrawtx=ipc:///tmp/bitcoind.tx.raw
|
-zmqpubrawtx=ipc:///tmp/dogecoind.tx.raw
|
||||||
|
|
||||||
Each PUB notification has a topic and body, where the header
|
Each PUB notification has a topic and body, where the header
|
||||||
corresponds to the notification type. For instance, for the
|
corresponds to the notification type. For instance, for the
|
||||||
|
@ -75,7 +75,7 @@ notification `-zmqpubhashtx` the topic is `hashtx` (no null
|
||||||
terminator) and the body is the hexadecimal transaction hash (32
|
terminator) and the body is the hexadecimal transaction hash (32
|
||||||
bytes).
|
bytes).
|
||||||
|
|
||||||
These options can also be provided in bitcoin.conf.
|
These options can also be provided in dogecoin.conf.
|
||||||
|
|
||||||
ZeroMQ endpoint specifiers for TCP (and others) are documented in the
|
ZeroMQ endpoint specifiers for TCP (and others) are documented in the
|
||||||
[ZeroMQ API](http://api.zeromq.org/4-0:_start).
|
[ZeroMQ API](http://api.zeromq.org/4-0:_start).
|
||||||
|
@ -87,9 +87,9 @@ arriving. Please see `contrib/zmq/zmq_sub.py` for a working example.
|
||||||
|
|
||||||
## Remarks
|
## Remarks
|
||||||
|
|
||||||
From the perspective of bitcoind, the ZeroMQ socket is write-only; PUB
|
From the perspective of dogecoind, the ZeroMQ socket is write-only; PUB
|
||||||
sockets don't even have a read function. Thus, there is no state
|
sockets don't even have a read function. Thus, there is no state
|
||||||
introduced into bitcoind directly. Furthermore, no information is
|
introduced into dogecoind directly. Furthermore, no information is
|
||||||
broadcast that wasn't already received from the public P2P network.
|
broadcast that wasn't already received from the public P2P network.
|
||||||
|
|
||||||
No authentication or authorization is done on connecting clients; it
|
No authentication or authorization is done on connecting clients; it
|
||||||
|
@ -102,5 +102,5 @@ retrieve the chain from the last known block to the new tip.
|
||||||
|
|
||||||
There are several possibilities that ZMQ notification can get lost
|
There are several possibilities that ZMQ notification can get lost
|
||||||
during transmission depending on the communication type your are
|
during transmission depending on the communication type your are
|
||||||
using. Bitcoind appends an up-counting sequence number to each
|
using. Dogecoind appends an up-counting sequence number to each
|
||||||
notification which allows listeners to detect lost notifications.
|
notification which allows listeners to detect lost notifications.
|
||||||
|
|
Loading…
Reference in a new issue