Jeff Garzik
12 years ago
8 changed files with 394 additions and 62 deletions
@ -0,0 +1,104 @@
@@ -0,0 +1,104 @@
|
||||
The following is a list of assets used in the bitcoin source and their proper attribution. |
||||
|
||||
[Wladimir van der Laan](https://github.com/laanwj) |
||||
----------------------- |
||||
#### Info |
||||
* License: MIT |
||||
### Assets Used |
||||
|
||||
src/qt/res/icons/clock*.png, src/qt/res/icons/tx*.png, |
||||
src/qt/res/src/clock_green.svg, src/qt/res/src/clock1.svg, |
||||
src/qt/res/src/clock2.svg, src/qt/res/src/clock3.svg, |
||||
src/qt/res/src/clock4.svg, src/qt/res/src/clock5.svg, |
||||
src/qt/res/src/inout.svg, src/qt/res/src/questionmark.svg |
||||
|
||||
[David Vignoni](www.icon-king.com) |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Icon Pack: NUVOLA ICON THEME for KDE 3.x |
||||
* Designer: David Vignoni (david@icon-king.com) |
||||
* License: LGPL |
||||
* Site: [http://www.icon-king.com/projects/nuvola/](http://www.icon-king.com/projects/nuvola/) |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/address-book.png, src/qt/res/icons/export.png, |
||||
src/qt/res/icons/history.png, src/qt/res/icons/key.png, |
||||
src/qt/res/icons/lock_*.png, src/qt/res/icons/overview.png, |
||||
src/qt/res/icons/receive.png, src/qt/res/icons/send.png, |
||||
src/qt/res/icons/synced.png, src/qt/res/icons/filesave.png |
||||
|
||||
schollidesign |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Icon Pack: Human-O2 |
||||
* Designer: schollidesign |
||||
* License: GNU/GPL |
||||
* Site: [http://findicons.com/icon/93743/blocks_gnome_netstatus_0](http://findicons.com/icon/93743/blocks_gnome_netstatus_0) |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/connect*.png |
||||
|
||||
md2k7 |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Designer: md2k7 |
||||
* Site: https://bitcointalk.org/index.php?topic=15276.0 |
||||
* License: You are free to do with these icons as you wish, including selling, |
||||
copying, modifying etc. |
||||
* License: MIT |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/transaction*.png |
||||
|
||||
[Everaldo.com](http://www.everaldo.com) |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Designer: [http://www.everaldo.com](http://www.everaldo.com) |
||||
* Icon Pack: Crystal SVG |
||||
* License: LGPL |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/configure.png, src/qt/res/icons/quit.png, |
||||
src/qt/res/icons/editcopy.png, src/qt/res/icons/editpaste.png, |
||||
src/qt/res/icons/add.png, src/qt/res/icons/edit.png, |
||||
src/qt/res/icons/remove.png (edited) |
||||
|
||||
Everaldo (Everaldo Coelho) |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Icon Pack: Kids |
||||
* Designer: Everaldo (Everaldo Coelho) |
||||
* License: GNU/GPL |
||||
* Site: [http://findicons.com/icon/17102/reload?id=17102](http://findicons.com/icon/17102/reload?id=17102) |
||||
### Assets Used |
||||
scripts/img/reload.xcf (modified), src/qt/res/movies/update_spinner.mng |
||||
|
||||
[Vignoni David](http://www.oxygen-icons.org/) |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Designer: Vignoni David |
||||
* Site: http://www.oxygen-icons.org/ |
||||
* License: Oxygen icon theme is dual licensed. You may copy it under the Creative Common Attribution-ShareAlike 3.0 License or the GNU Library General Public License. |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/debugwindow.png |
||||
|
||||
Jonas Schnelli |
||||
----------------------- |
||||
|
||||
### Info |
||||
* Designer: Jonas Schnelli (based on the original bitcoin logo from Bitboy) |
||||
* License: MIT |
||||
|
||||
### Assets Used |
||||
src/qt/res/icons/bitcoin.icns, src/qt/res/src/bitcoin.svg, |
||||
src/qt/res/src/bitcoin.ico, src/qt/res/src/bitcoin.png, |
||||
src/qt/res/src/bitcoin_testnet.png, docs/bitcoin_logo_doxygen.png, |
||||
src/qt/res/icons/toolbar.png, src/qt/res/icons/toolbar_testnet.png, |
||||
src/qt/res/images/splash.png, src/qt/res/images/splash_testnet.png |
@ -0,0 +1,23 @@
@@ -0,0 +1,23 @@
|
||||
Used in 0.8.0 |
||||
--------------------- |
||||
* wallet.dat: personal wallet (BDB) with keys and transactions |
||||
* peers.dat: peer IP address database (custom format); since 0.7.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/index/*; block index (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 |
||||
|
||||
Only used in pre-0.8.0 |
||||
--------------------- |
||||
* blktree/*; block chain index (LevelDB); since pre-0.8, replaced by blocks/index/* in 0.8.0 |
||||
* coins/*; unspent transaction output database (LevelDB); since pre-0.8, replaced by chainstate/* in 0.8.0 |
||||
|
||||
Only used before 0.8.0 |
||||
--------------------- |
||||
* blkindex.dat: block chain index database (BDB); replaced by {chainstate/*,blocks/index/*,blocks/rev000??.dat} in 0.8.0 |
||||
* blk000?.dat: block data (custom, 2 GiB per file); replaced by blocks/blk000??.dat in 0.8.0 |
||||
|
||||
Only used before 0.7.0 |
||||
--------------------- |
||||
* addr.dat: peer IP address database (BDB); replaced by peers.dat in 0.7.0 |
@ -0,0 +1,128 @@
@@ -0,0 +1,128 @@
|
||||
Bitcoin-Qt Readme |
||||
=============================== |
||||
Contains build and configuration instructions for Bitcoin-Qt (Qt4 GUI for Bitcoin). |
||||
|
||||
Build Instructions |
||||
--------------------- |
||||
|
||||
### Debian |
||||
|
||||
|
||||
First, make sure that the required packages for Qt4 development of your |
||||
distribution are installed, these are |
||||
|
||||
|
||||
|
||||
for Debian and Ubuntu <= 11.10 : |
||||
|
||||
|
||||
apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \ |
||||
libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \ |
||||
libssl-dev libdb4.8++-dev |
||||
|
||||
for Ubuntu >= 12.04 (please read the 'Berkely DB version warning' below): |
||||
|
||||
apt-get install qt4-qmake libqt4-dev build-essential libboost-dev libboost-system-dev \ |
||||
libboost-filesystem-dev libboost-program-options-dev libboost-thread-dev \ |
||||
libssl-dev libdb++-dev libminiupnpc-dev |
||||
|
||||
For Qt 5 you need the following, otherwise you get an error with lrelease when running qmake: |
||||
|
||||
|
||||
apt-get install qt5-qmake libqt5gui5 libqt5core5 libqt5dbus5 qttools5-dev-tools |
||||
|
||||
then execute the following: |
||||
|
||||
qmake |
||||
make |
||||
|
||||
Alternatively, install [Qt Creator](http://qt-project.org/downloads/) and open the `bitcoin-qt.pro` file. |
||||
An executable named `bitcoin-qt` will be built. |
||||
|
||||
|
||||
|
||||
### Mac OS X |
||||
|
||||
* Download and install the [Qt Mac OS X SDK](https://qt-project.org/downloads). It is recommended to also install Apple's Xcode with UNIX tools. |
||||
* Download and install either [MacPorts](https://www.macports.org/) or [HomeBrew](http://mxcl.github.io/homebrew/). |
||||
* Execute the following commands in a terminal to get the dependencies using MacPorts |
||||
|
||||
sudo port selfupdate |
||||
sudo port install boost db48 miniupnpc |
||||
|
||||
* Execute the following commands in a terminal to get the dependencies using HomeBrew: |
||||
|
||||
brew update |
||||
brew install boost miniupnpc openssl berkeley-db4 |
||||
|
||||
- If using HomeBrew, edit `bitcoin-qt.pro` to account for library location differences. There's a diff in `contrib/homebrew/bitcoin-qt-pro.patch` that shows what you need to change, or you can just patch by doing |
||||
|
||||
patch -p1 < contrib/homebrew/bitcoin.qt.pro.patch |
||||
|
||||
- Open the bitcoin-qt.pro file in Qt Creator and build as normal (cmd+B) |
||||
|
||||
|
||||
Build Configuration Options |
||||
--------------------- |
||||
|
||||
### UPnP port forwarding |
||||
|
||||
To use UPnP for port forwarding behind a NAT router (recommended, as more connections overall allow for a faster and more stable bitcoin experience), pass the following argument to qmake: |
||||
|
||||
|
||||
|
||||
qmake "USE_UPNP=1" |
||||
|
||||
(in **Qt Creator**, you can find the setting for additional qmake arguments under "Projects" -> "Build Settings" -> "Build Steps", then click "Details" next to **qmake**) |
||||
|
||||
This requires miniupnpc for UPnP port mapping. It can be downloaded from [here]( |
||||
http://miniupnp.tuxfamily.org/files/). UPnP support is not compiled in by default. |
||||
|
||||
Set USE_UPNP to a different value to control this: |
||||
|
||||
|
||||
USE_UPNP=- no UPnP support, miniupnpc not required; |
||||
USE_UPNP=0 (the default) built with UPnP, support turned off by default at runtime; |
||||
USE_UPNP=1 build with UPnP support turned on by default at runtime. |
||||
|
||||
### Notification support for recent (k)ubuntu versions |
||||
|
||||
To see desktop notifications on (k)ubuntu versions starting from 10.04, enable usage of the |
||||
FreeDesktop notification interface through DBUS using the following qmake option: |
||||
|
||||
|
||||
|
||||
qmake "USE_DBUS=1" |
||||
|
||||
### Generation of QR codes |
||||
|
||||
[libqrencode](http://fukuchi.org/works/qrencode/) may be used to generate QRCode images for payment requests. Pass the USE_QRCODE flag to qmake to control this: |
||||
|
||||
|
||||
USE_QRCODE=0 (the default) No QRCode support - libarcode not required |
||||
USE_QRCODE=1 QRCode support enabled |
||||
|
||||
Warnings |
||||
--------------------- |
||||
|
||||
### Berkely DB Version Warning |
||||
|
||||
|
||||
A warning for people using the *static binary* version of Bitcoin on a Linux/UNIX-ish system (tl;dr: **Berkely DB databases are not forward compatible**). |
||||
|
||||
The static binary version of Bitcoin is linked against libdb4.8 (see also [this Debian issue](http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=621425)). |
||||
|
||||
Now the nasty thing is that databases from 5.X are not compatible with 4.X. |
||||
|
||||
If the globally installed development package of Berkely DB installed on your system is 5.X, any source you build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded, and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without significant hassle! |
||||
|
||||
### Ubuntu 11.10 Warning |
||||
|
||||
|
||||
Ubuntu 11.10 has a package called 'qt-at-spi' installed by default. At the time of writing, having that package installed causes bitcoin-qt to crash intermittently. The issue has been reported as [launchpad bug 857790](https://bugs.launchpad.net/ubuntu/+source/qt-at-spi/+bug/857790), but |
||||
isn't yet fixed. |
||||
|
||||
Until the bug is fixed, you can remove the qt-at-spi package to work around the problem, though this will presumably disable screen reader functionality for Qt apps: |
||||
|
||||
sudo apt-get remove qt-at-spi |
||||
|
@ -0,0 +1,89 @@
@@ -0,0 +1,89 @@
|
||||
TOR SUPPORT IN BITCOIN |
||||
====================== |
||||
|
||||
It is possible to run Bitcoin 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 a random port. See [Tor Project FAQ:TBBSocksPort](https://www.torproject.org/docs/faq.html.en#TBBSocksPort) for how to properly |
||||
configure Tor. |
||||
|
||||
|
||||
1. Run bitcoin behind a Tor proxy |
||||
--------------------------------- |
||||
|
||||
The first step is running Bitcoin behind a Tor proxy. This will already make all |
||||
outgoing connections be anonimized, but more is possible. |
||||
|
||||
-socks=5 SOCKS5 supports connecting-to-hostname, which can be used instead |
||||
of doing a (leaking) local DNS lookup. SOCKS5 is the default, |
||||
but SOCKS4 does not support this. (SOCKS4a does, but isn't |
||||
implemented). |
||||
|
||||
-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. |
||||
|
||||
-tor=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 -notor |
||||
to explicitly disable access to hidden service. |
||||
|
||||
-listen When using -proxy, listening is disabled by default. If you want |
||||
to run a hidden service (see next section), you'll need to enable |
||||
it explicitly. |
||||
|
||||
-connect=X When behind a Tor proxy, you can specify .onion addresses instead |
||||
-addnode=X of IP addresses or hostnames in these parameters. It requires |
||||
-seednode=X SOCKS5. In Tor mode, such addresses can also be exchanged with |
||||
other P2P nodes. |
||||
|
||||
In a typical situation, this suffices to run behind a Tor proxy: |
||||
|
||||
./bitcoin -proxy=127.0.0.1:9050 |
||||
|
||||
|
||||
2. Run a bitcoin hidden server |
||||
------------------------------ |
||||
|
||||
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 |
||||
config file): |
||||
|
||||
HiddenServiceDir /var/lib/tor/bitcoin-service/ |
||||
HiddenServicePort 8333 127.0.0.1:8333 |
||||
|
||||
The directory can be different of course, but (both) port numbers should be equal to |
||||
your bitcoind's P2P listen port (8333 by default). |
||||
|
||||
-externalip=X You can tell bitcoin about its publicly reachable address using |
||||
this option, and this can be a .onion address. Given the above |
||||
configuration, you can find your onion address in |
||||
/var/lib/tor/bitcoin-service/hostname. Onion addresses are given |
||||
preference for your node to advertize itself with, for connections |
||||
coming from unroutable addresses (such as 127.0.0.1, where the |
||||
Tor proxy typically runs). |
||||
|
||||
-listen You'll need to enable listening for incoming connections, as this |
||||
is off by default behind a proxy. |
||||
|
||||
-discover When -externalip is specified, no attempt is made to discover local |
||||
IPv4 or IPv6 addresses. If you want to run a dual stack, reachable |
||||
from both Tor and IPv4 (or IPv6), you'll need to either pass your |
||||
other addresses using -externalip, or explicitly enable -discover. |
||||
Note that both addresses of a dual-stack system may be easily |
||||
linkable using traffic analysis. |
||||
|
||||
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 |
||||
|
||||
(obviously, replace the Onion address with your own). If you don't care too much |
||||
about hiding your node, and want to be reachable on IPv4 as well, additionally |
||||
specify: |
||||
|
||||
./bitcoind ... -discover |
||||
|
||||
and open port 8333 on your firewall (or use -upnp). |
||||
|
||||
If you only want to use Tor to reach onion addresses, but not use it as a proxy |
||||
for normal IPv4/IPv6 communication, use: |
||||
|
||||
./bitcoin -tor=127.0.0.1:9050 -externalip=57qr3yd1nyntf5k.onion -discover |
||||
|
Loading…
Reference in new issue