Move all documentation below /docs (#20072)

* Move pages one level deeper under the /docs folder and fix broken links

* Fix broken links

* Flatten clef/qubes links to clef

* Remove path debugging from main template
pull/20200/head
Adam Schmideg 5 years ago committed by Felix Lange
parent 8dc979183f
commit 8e49d1571d
  1. 19
      _config.yml
  2. 2
      _data/navbar.yml
  3. 2
      _layouts/default.html
  4. 8
      docs/_clef/Overview.md
  5. 14
      docs/_clef/Setup.md
  6. 2
      docs/_clef/apis.md
  7. 2
      docs/_doc/Connecting-to-the-network.md
  8. 2
      docs/_doc/Ethereum-Specification.md
  9. 2
      docs/_doc/Ethereum-on-Android.md
  10. 2
      docs/_doc/Japanese-Contracts-and-Transactions.md
  11. 2
      docs/_doc/Setting-up-monitoring-on-local-cluster.md
  12. 4
      docs/_doc/Setting-up-private-network-or-local-cluster.md
  13. 4
      docs/_install-and-build/Backup--restore.md
  14. 5
      docs/_install-and-build/Build-from-Source.md
  15. 14
      docs/_install-and-build/Developers-Guide.md
  16. 6
      docs/_interface/JavaScript-Console.md
  17. 2
      docs/_interface/Management-APIs.md
  18. 6
      docs/_interface/Managing-your-accounts.md
  19. 2
      docs/_legacy/Contract-Tutorial.md
  20. 12
      docs/_legacy/Mining.md
  21. 2
      docs/_legacy/Swarm---TODO.md
  22. 6
      docs/_legacy/Swarm---distributed-preimage-archive.md
  23. 12
      docs/_legacy/geth.md
  24. 2
      docs/_support/FAQ.md
  25. 2
      docs/_whisper/How-to-Whisper.md
  26. 16
      docs/index.md
  27. 2
      install.md

@ -15,52 +15,65 @@ defaults:
- scope: - scope:
path: "*" path: "*"
values: values:
root: "." root: "../.."
- scope: - scope:
path: "*/*" path: "*/*"
values: values:
root: ".." root: "../../.."
- scope:
path: "*/*/*"
values:
root: "../../../.."
default_root: ".." default_root: "../../.."
collections_dir: docs collections_dir: docs
collections: collections:
install-and-build: install-and-build:
output: true output: true
permalink: docs/:collection/:slug
caption: Install and build caption: Install and build
sidebar_index: 1 sidebar_index: 1
frontpage: _install-and-build/Installing-Geth.md frontpage: _install-and-build/Installing-Geth.md
interface: interface:
output: true output: true
permalink: docs/:collection/:slug
caption: Interacting with Geth caption: Interacting with Geth
sidebar_index: 2 sidebar_index: 2
support: support:
output: true output: true
permalink: docs/:collection/:slug
caption: Issues and support caption: Issues and support
sidebar_index: 3 sidebar_index: 3
developers: developers:
output: true output: true
permalink: docs/:collection/:slug
caption: Developer docs caption: Developer docs
sidebar_index: 4 sidebar_index: 4
clef: clef:
output: true output: true
permalink: docs/:collection/:slug
caption: Clef caption: Clef
sidebar_index: 5 sidebar_index: 5
frontpage: _clef/Overview.md frontpage: _clef/Overview.md
whisper: whisper:
output: true output: true
permalink: docs/:collection/:slug
caption: Whisper caption: Whisper
sidebar_index: 6 sidebar_index: 6
frontpage: _whisper/Whisper-Overview.md frontpage: _whisper/Whisper-Overview.md
rpc: rpc:
output: true output: true
permalink: docs/:collection/:slug
caption: JSON RPC APIs caption: JSON RPC APIs
sidebar_index: 7 sidebar_index: 7
doc: doc:
output: true output: true
permalink: docs/:collection/:slug
caption: Other caption: Other
sidebar_index: 8 sidebar_index: 8
legacy: legacy:
output: true output: true
permalink: docs/:collection/:slug
caption: Legacy content caption: Legacy content
sidebar_index: 9 sidebar_index: 9

@ -1,3 +1,3 @@
Install: /install-and-build/Installing-Geth Install: /docs/install-and-build/installing-geth
Downloads: /downloads Downloads: /downloads
Documentation: /docs Documentation: /docs

@ -26,7 +26,7 @@ common-js:
<span class="icon-bar"></span> <span class="icon-bar"></span>
<span class="icon-bar"></span> <span class="icon-bar"></span>
</button> </button>
<a class="navbar-brand" href="{% include link.html url='' %}/">Go Ethereum</a> <a class="navbar-brand" href="{% include link.html url='' %}">Go Ethereum</a>
</div> </div>
<div id="navbar" class="navbar-collapse collapse"> <div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav"> <ul class="nav navbar-nav">

@ -24,9 +24,9 @@ or a separate VM in a [QubesOS](https://www.qubes-os.org/) type os setup.
Check out Check out
* the [tutorial](Tutorial) for some concrete examples on how the signer works. * the [tutorial](tutorial) for some concrete examples on how the signer works.
* the [setup docs](Setup) for some information on how to configure it to work on QubesOS or USBArmory. * the [setup docs](setup) for some information on how to configure it to work on QubesOS or USBArmory.
* more info about [rules](Rules) * more info about [rules](rules)
* the [data types](datatypes) for detailed information on the json types used in the communication between * the [data types](datatypes) for detailed information on the json types used in the communication between
clef and an external UI clef and an external UI
@ -65,7 +65,7 @@ Clef relies on __sign-what-you-see__. To provide as much context as possible,
One setup scenario is to use virtualization, e.g. within QubesOS, where to One setup scenario is to use virtualization, e.g. within QubesOS, where to
Clef is deployed on a non-networked machine (`ethvault` below) Clef is deployed on a non-networked machine (`ethvault` below)
![](./qubes/clef_qubes_qrexec.png) ![](clef_qubes_qrexec.png)
Another option is to deploy Clef on a separate physical device, e.g. USB Armory, Another option is to deploy Clef on a separate physical device, e.g. USB Armory,

@ -40,7 +40,7 @@ There are two ways that this can be achieved: integrated via Qubes or integrated
Qubes provdes a facility for inter-qubes communication via `qrexec`. A qube can request to make a cross-qube RPC request Qubes provdes a facility for inter-qubes communication via `qrexec`. A qube can request to make a cross-qube RPC request
to another qube. The OS then asks the user if the call is permitted. to another qube. The OS then asks the user if the call is permitted.
![Example](qubes/qrexec-example.png) ![Example](qrexec-example.png)
A policy-file can be created to allow such interaction. On the `target` domain, a service is invoked which can read the A policy-file can be created to allow such interaction. On the `target` domain, a service is invoked which can read the
`stdin` from the `client` qube. `stdin` from the `client` qube.
@ -49,11 +49,11 @@ This is how [Split GPG](https://www.qubes-os.org/doc/split-gpg/) is implemented.
##### Server ##### Server
![Clef via qrexec](qubes/clef_qubes_qrexec.png) ![Clef via qrexec](clef_qubes_qrexec.png)
On the `target` qubes, we need to define the rpc service. On the `target` qubes, we need to define the rpc service.
[qubes.Clefsign](qubes/qubes.Clefsign): [qubes.Clefsign](qubes.Clefsign):
```bash ```bash
#!/bin/bash #!/bin/bash
@ -97,7 +97,7 @@ with minimal requirements.
On the `client` qube, we need to create a listener which will receive the request from the Dapp, and proxy it. On the `client` qube, we need to create a listener which will receive the request from the Dapp, and proxy it.
[qubes-client.py](qubes/client/qubes-client.py): [qubes-client.py](qubes-client.py):
```python ```python
@ -140,11 +140,11 @@ $ cat newaccnt.json| qrexec-client-vm debian-work qubes.Clefsign
This should pop up first a dialog to allow the IPC call: This should pop up first a dialog to allow the IPC call:
![one](qubes/qubes_newaccount-1.png) ![one](qubes_newaccount-1.png)
Followed by a GTK-dialog to approve the operation Followed by a GTK-dialog to approve the operation
![two](qubes/qubes_newaccount-2.png) ![two](qubes_newaccount-2.png)
To test the full flow, we use the client wrapper. Start it on the `client` qube: To test the full flow, we use the client wrapper. Start it on the `client` qube:
``` ```
@ -182,7 +182,7 @@ However, it comes with a couple of drawbacks:
The second way to set up Clef on a qubes system is to allow networking, and have Clef listen to a port which is accessible The second way to set up Clef on a qubes system is to allow networking, and have Clef listen to a port which is accessible
form other qubes. form other qubes.
![Clef via http](qubes/clef_qubes_http.png) ![Clef via http](clef_qubes_http.png)

@ -280,7 +280,7 @@ Response
### account_signTypedData ### account_signTypedData
#### Sign data #### Sign data
Signs a chunk of structured data conformant to [EIP712]([EIP-712](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md)) and returns the calculated signature. Signs a chunk of structured data conformant to [EIP712](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md) and returns the calculated signature.
#### Arguments #### Arguments
- account [address]: account to sign with - account [address]: account to sign with

@ -144,7 +144,7 @@ the following into `<datadir>/geth/static-nodes.json`:
] ]
``` ```
You can also add static nodes at runtime via the js console using [`admin.addPeer()`](../interface/JavaScript-Console#addpeer): You can also add static nodes at runtime via the js console using [`admin.addPeer()`](../interface/javascript-console#addpeer):
```js ```js
admin.addPeer("enode://f4642fa65af50cfdea8fa7414a5def7bb7991478b768e296f5e4a54e8b995de102e0ceae2e826f293c481b5325f89be6d207b003382e18a8ecba66fbaf6416c0@33.4.2.1:30303") admin.addPeer("enode://f4642fa65af50cfdea8fa7414a5def7bb7991478b768e296f5e4a54e8b995de102e0ceae2e826f293c481b5325f89be6d207b003382e18a8ecba66fbaf6416c0@33.4.2.1:30303")

@ -15,7 +15,7 @@ Specifications of all ethereum technologies, languages, protocols, etc.
- [JavaScript API](https://github.com/ethereum/wiki/wiki/JavaScript-API#a) - [JavaScript API](https://github.com/ethereum/wiki/wiki/JavaScript-API#a)
- [Generic JSON RPC](https://github.com/ethereum/wiki/JSON-RPC) - [Generic JSON RPC](https://github.com/ethereum/wiki/JSON-RPC)
- [JSRE admin API](../interface/JavaScript-Console#console-api) - [JSRE admin API](../interface/javascript-console#console-api)
- [RLP](https://github.com/ethereum/wiki/wiki/RLP) - [RLP](https://github.com/ethereum/wiki/wiki/RLP)
- [ÐΞVp2p Wire Protocol](https://github.com/ethereum/wiki/wiki/%C3%90%CE%9EVp2p-Wire-Protocol) - [ÐΞVp2p Wire Protocol](https://github.com/ethereum/wiki/wiki/%C3%90%CE%9EVp2p-Wire-Protocol)
- [Web3 Secret Storage](https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition) - [Web3 Secret Storage](https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition)

@ -3,7 +3,7 @@ title: Ethereum on Android
--- ---
Building Geth for Android is a non trivial task, as it requires cross compiling external C dependencies ([GNU Arithmetic Library](https://gmplib.org/)); internal C dependencies ([ethash](https://github.com/ethereum/ethash)); as well as the entire CGO enabled Go code-base to Android. This is further complicated by the Position Independent Executables (PIE) security feature introduced since Android 4.1 Jelly Bean, requiring different compiler and linker options based on the target Android platform version. Building Geth for Android is a non trivial task, as it requires cross compiling external C dependencies ([GNU Arithmetic Library](https://gmplib.org/)); internal C dependencies ([ethash](https://github.com/ethereum/ethash)); as well as the entire CGO enabled Go code-base to Android. This is further complicated by the Position Independent Executables (PIE) security feature introduced since Android 4.1 Jelly Bean, requiring different compiler and linker options based on the target Android platform version.
To cope with all the build issues, the [`xgo`](https://github.com/karalabe/xgo) CGO enabled Go cross compiler is used, which assembles an entire multi-platform cross compiler suite into a single mega docker container. Details about using `xgo` can be found in the project's [README](https://github.com/karalabe/xgo/blob/master/README.md), with Ethereum specifics on the go-ethereum cross compilation [wiki page](Cross-compiling-Ethereum). To cope with all the build issues, the [`xgo`](https://github.com/karalabe/xgo) CGO enabled Go cross compiler is used, which assembles an entire multi-platform cross compiler suite into a single mega docker container. Details about using `xgo` can be found in the project's [README](https://github.com/karalabe/xgo/blob/master/README.md), with Ethereum specifics on the [go-ethereum cross compilation](../developers/cross-compiling-ethereum).
TL;DR TL;DR

@ -13,7 +13,7 @@ Both types of accounts have an ether balance.
Transactions can be fired from from both types of accounts, though contracts only fire transactions in response to other transactions that they have received. Therefore, all action on ethereum block chain is set in motion by transactions fired from externally controlled accounts. Transactions can be fired from from both types of accounts, though contracts only fire transactions in response to other transactions that they have received. Therefore, all action on ethereum block chain is set in motion by transactions fired from externally controlled accounts.
The simplest transactions are ether transfer transactions. But before we go into that you should read up on [accounts](../how-to/Managing-your-accounts) and perhaps on [mining](../how-to/Mining). The simplest transactions are ether transfer transactions. But before we go into that you should read up on [accounts](../interface/managing-your-accounts) and perhaps on [mining](../legacy/mining).
## Ether transfer ## Ether transfer

@ -1,7 +1,7 @@
--- ---
title: Setting up monitoring on local cluster title: Setting up monitoring on local cluster
--- ---
This page describes how to set up a monitoring site, [like this one](http://eth-netstats.herokuapp.com/), for your private network. It builds upon [this wiki article](Setting-up-private-network-or-local-cluster) and assumes you've created a local cluster using [this script (gethcluster.sh)](https://github.com/ethersphere/eth-utils). This page describes how to set up a monitoring site, [like this one](http://eth-netstats.herokuapp.com/), for your private network. It builds upon [this page](setting-up-private-network-or-local-cluster) and assumes you've created a local cluster using [this script (gethcluster.sh)](https://github.com/ethersphere/eth-utils).
The monitoring system consists of two components: The monitoring system consists of two components:

@ -4,7 +4,7 @@ title: Setting up private network or local cluster
This page describes how to set up a local cluster of nodes, advise how to make it private, and how to hook up your nodes on the eth-netstat network monitoring app. This page describes how to set up a local cluster of nodes, advise how to make it private, and how to hook up your nodes on the eth-netstat network monitoring app.
A fully controlled ethereum network is useful as a backend for network integration testing (core developers working on issues related to networking/blockchain synching/message propagation, etc or DAPP developers testing multi-block and multi-user scenarios). A fully controlled ethereum network is useful as a backend for network integration testing (core developers working on issues related to networking/blockchain synching/message propagation, etc or DAPP developers testing multi-block and multi-user scenarios).
We assume you are able to build `geth` following the [build instructions](../install-and-build/Building-Ethereum) We assume you are able to build `geth` following the [build instructions](../install-and-build/build-from-source)
## Setting up multiple nodes ## Setting up multiple nodes
@ -115,5 +115,5 @@ I0216 10:01:40.094089 p2p/discover/udp.go:227] Listening, enode://890b6b5367ef60
[This page](https://github.com/ethereum/wiki/wiki/Network-Status) describes how to use the [The Ethereum (centralised) network status monitor (known sometimes as "eth-netstats")](http://stats.ethdev.com) to monitor your nodes. [This page](https://github.com/ethereum/wiki/wiki/Network-Status) describes how to use the [The Ethereum (centralised) network status monitor (known sometimes as "eth-netstats")](http://stats.ethdev.com) to monitor your nodes.
[This page](Setting-up-monitoring-on-local-cluster) or [this README](https://github.com/ethersphere/eth-utils) [This page](../doc/setting-up-monitoring-on-local-cluster) or [this README](https://github.com/ethersphere/eth-utils)
describes how you set up your own monitoring service for a (private or public) local cluster. describes how you set up your own monitoring service for a (private or public) local cluster.

@ -23,9 +23,9 @@ The default data directory locations are platform specific:
Accounts are stored in the `keystore` subdirectory. The contents of this directories should be transportable between nodes, platforms, implementations (C++, Go, Python). Accounts are stored in the `keystore` subdirectory. The contents of this directories should be transportable between nodes, platforms, implementations (C++, Go, Python).
To configure the location of the data directory, the `--datadir` parameter can be specified. See [CLI Options](../interface/Command-Line-Options) for more details. To configure the location of the data directory, the `--datadir` parameter can be specified. See [CLI Options](../interface/command-line-options) for more details.
_**Note:** The [Ethash DAG](../how-to/Mining#ethash-dag) is stored at `~/.ethash` (Mac/Linux) or `%APPDATA%\Ethash` (Windows) so that it can be reused by all clients. You can store this in a different location by using a symbolic link._ _**note:** the [ethash dag](../legacy/mining#ethash-dag) is stored at `~/.ethash` (Mac/Linux) or `%APPDATA%\Ethash` (Windows) so that it can be reused by all clients. You can store this in a different location by using a symbolic link._
## Upgrades ## Upgrades

@ -1,7 +1,8 @@
---
title: Build from source
---
<!-- TODO: Maybe move? --> <!-- TODO: Maybe move? -->
## Build from source
Go Ethereum (as its name implies) is written in [Go](https://golang.org), and as such to build from source code you need to have at least Go 1.7 installed (preferably the latest version, currently at 1.9.2). This guide does not go into details on how to install Go itself, for that please read the [Go installation instructions](https://golang.org/doc/install). Go Ethereum (as its name implies) is written in [Go](https://golang.org), and as such to build from source code you need to have at least Go 1.7 installed (preferably the latest version, currently at 1.9.2). This guide does not go into details on how to install Go itself, for that please read the [Go installation instructions](https://golang.org/doc/install).
Assuming you have Go installed, you can download our project via: Assuming you have Go installed, you can download our project via:

@ -2,7 +2,7 @@
title: Developers' guide title: Developers' guide
--- ---
**NOTE: These instructions are for people who want to contribute Go source code changes. **NOTE: These instructions are for people who want to contribute Go source code changes.
If you just want to run ethereum, use the normal [Installation Instructions](Installing-Geth)** If you just want to run ethereum, use the normal [Installation Instructions](installing-geth)**
This document is the entry point for developers of the Go implementation of Ethereum. Developers here refer to the hands-on: who are interested in build, develop, debug, submit a bug report or pull request or contribute code to go-ethereum. This document is the entry point for developers of the Go implementation of Ethereum. Developers here refer to the hands-on: who are interested in build, develop, debug, submit a bug report or pull request or contribute code to go-ethereum.
@ -49,7 +49,7 @@ go-ethereum exectuables can be built individually. To build just geth, use:
go install -v ./cmd/geth go install -v ./cmd/geth
``` ```
Read about cross compilation of go-ethereum [here](../doc/Cross-compiling-Ethereum). read about cross compilation of go-ethereum [here](../developers/cross-compiling-ethereum).
### Git flow ### Git flow
@ -84,7 +84,7 @@ for more see [go test flags](http://golang.org/cmd/go/#hdr-Description_of_testin
### Metrics and monitoring ### Metrics and monitoring
`geth` can do node behaviour monitoring, aggregation and show performance metric charts. `geth` can do node behaviour monitoring, aggregation and show performance metric charts.
Read about [metrics and monitoring](../doc/Metrics-and-Monitoring) read about [metrics and monitoring](../doc/metrics-and-monitoring)
### Getting Stack Traces ### Getting Stack Traces
@ -126,7 +126,7 @@ PRs need to be based on and opened against the `master` branch (unless by explic
agreement, you contribute to a complex feature branch). agreement, you contribute to a complex feature branch).
Your PR will be reviewed according to the [Code Review Your PR will be reviewed according to the [Code Review
Guidelines](../doc/Code-Review-Guidelines). guidelines](../developers/code-review-guidelines).
We encourage a PR early approach, meaning you create the PR the earliest even without the We encourage a PR early approach, meaning you create the PR the earliest even without the
fix/feature. This will let core devs and other volunteers know you picked up an issue. fix/feature. This will let core devs and other volunteers know you picked up an issue.
@ -134,8 +134,8 @@ These early PRs should indicate 'in progress' status.
## Dev Tutorials (mostly outdated) ## Dev Tutorials (mostly outdated)
* [Private networks, local clusters and monitoring](../doc/Setting-up-private-network-or-local-cluster) * [private networks, local clusters and monitoring](../doc/setting-up-private-network-or-local-cluster)
* [P2P 101](../doc/Peer-to-Peer): a tutorial about setting up and creating a p2p server and p2p sub protocol. * [p2p 101](../developers/peer-to-peer): a tutorial about setting up and creating a p2p server and p2p sub protocol.
* [How to Whisper](../doc/How-to-Whisper): an introduction to whisper. * [how to whisper](../whisper/whisper-overview): an introduction to whisper.

@ -3,7 +3,7 @@ title: JavaScript console
--- ---
Ethereum implements a **javascript runtime environment** (JSRE) that can be used in either interactive (console) or non-interactive (script) mode. Ethereum implements a **javascript runtime environment** (JSRE) that can be used in either interactive (console) or non-interactive (script) mode.
Ethereum's Javascript console exposes the full [web3 JavaScript Dapp API](https://github.com/ethereum/wiki/wiki/JavaScript-API) and the [admin API](JavaScript-Console#javascript-console-api). Ethereum's Javascript console exposes the full [web3 JavaScript Dapp API](https://github.com/ethereum/wiki/wiki/JavaScript-API) and the [admin API](#javascript-console-api).
## Interactive use: the JSRE REPL Console ## Interactive use: the JSRE REPL Console
@ -18,7 +18,7 @@ The attach node accepts an endpoint in case the geth node is running with a non
$ geth attach http://191.168.1.1:8545 $ geth attach http://191.168.1.1:8545
$ geth attach ws://191.168.1.1:8546 $ geth attach ws://191.168.1.1:8546
Note that by default the geth node doesn't start the http and weboscket service and not all functionality is provided over these interfaces due to security reasons. These defaults can be overridden when the `--rpcapi` and `--wsapi` arguments when the geth node is started, or with [admin.startRPC](Management-APIs#admin_startrpc) and [admin.startWS](Management-APIs#admin_startws). Note that by default the geth node doesn't start the http and weboscket service and not all functionality is provided over these interfaces due to security reasons. These defaults can be overridden when the `--rpcapi` and `--wsapi` arguments when the geth node is started, or with [admin.startRPC](management-apis#admin_startrpc) and [admin.startWS](management-apis#admin_startws).
If you need log information, start with: If you need log information, start with:
@ -74,4 +74,4 @@ In addition to the full functionality of JS (as per ECMA5), the ethereum JSRE is
Beside the official [DApp API](https://github.com/ethereum/wiki/JSON-RPC) interface the go ethereum node has support for additional management API's. These API's are offered using [JSON-RPC](http://www.jsonrpc.org/specification) and follow the same conventions as used in the DApp API. The go ethereum package comes with a console client which has support for all additional API's. Beside the official [DApp API](https://github.com/ethereum/wiki/JSON-RPC) interface the go ethereum node has support for additional management API's. These API's are offered using [JSON-RPC](http://www.jsonrpc.org/specification) and follow the same conventions as used in the DApp API. The go ethereum package comes with a console client which has support for all additional API's.
[The management API has its own wiki page](Management-APIs). [The management API has its own page](management-apis).

@ -58,7 +58,7 @@ These additional APIs follow the same conventions as the official DApp APIs. Web
[extended](https://github.com/ethereum/web3.js/pull/229) and used to consume these additional APIs. [extended](https://github.com/ethereum/web3.js/pull/229) and used to consume these additional APIs.
The different functions are split into multiple smaller logically grouped APIs. Examples are given The different functions are split into multiple smaller logically grouped APIs. Examples are given
for the [JavaScript console](JavaScript-Console) but for the [JavaScript console](javascript-console) but
can easily be converted to an RPC request. can easily be converted to an RPC request.
**2 examples:** **2 examples:**

@ -27,7 +27,7 @@ or import). Without it you are not able to unlock your account.
Note that exporting your key in unencrypted format is NOT supported. Note that exporting your key in unencrypted format is NOT supported.
Keys are stored under `<DATADIR>/keystore`. Make sure you backup your keys regularly! See Keys are stored under `<DATADIR>/keystore`. Make sure you backup your keys regularly! See
[DATADIR backup & restore](../doc/Backup--restore) [DATADIR backup & restore](../install-and-build/backup-restore)
for more information. If a custom datadir and keystore option are given the keystore for more information. If a custom datadir and keystore option are given the keystore
option takes preference over the datadir option. option takes preference over the datadir option.
@ -62,7 +62,7 @@ OPTIONS:
--keystore Directory for the keystore (default = inside the datadir) --keystore Directory for the keystore (default = inside the datadir)
``` ```
Accounts can also be managed via the [Javascript Console](../interface/JavaScript-Console) Accounts can also be managed via the [Javascript Console](../interface/javascript-console)
## Examples ## Examples
### Interactive use ### Interactive use
@ -335,7 +335,7 @@ That can then be executed with:
Since this function will disappear after restarting geth, it can be helpful to store Since this function will disappear after restarting geth, it can be helpful to store
commonly used functions to be recalled later. The commonly used functions to be recalled later. The
[loadScript](../interface/JavaScript-Console#loadscript) [loadScript](../interface/javascript-console#loadscript)
function makes this very easy. function makes this very easy.
First, save the `checkAllBalances()` function definition to a file on your computer. For First, save the `checkAllBalances()` function definition to a file on your computer. For

@ -112,7 +112,7 @@ If you have the SolC Solidity Compiler installed, you need now reformat by remo
#### Linking your compiler in Geth #### Linking your compiler in Geth
Now [go back to the console](../doc/geth) and type this command to install solC, replacing _path/to/solc_ to the path that you got on the last command you did: Now [go back to the console](../interface/javascript-console) and type this command to install solC, replacing _path/to/solc_ to the path that you got on the last command you did:
admin.setSolc("path/to/solc") admin.setSolc("path/to/solc")

@ -15,11 +15,11 @@ The C++ implementation of Ethereum also offers a GPU miner, both as part of Eth
_**NOTE:** Ensure your blockchain is fully synchronised with the main chain before starting to mine, otherwise you will not be mining on the main chain._ _**NOTE:** Ensure your blockchain is fully synchronised with the main chain before starting to mine, otherwise you will not be mining on the main chain._
When you start up your ethereum node with `geth` it is not mining by default. To start it in mining mode, you use the `--mine` [command line option](../interface/Command-Line-Options). The `-minerthreads` parameter can be used to set the number parallel mining threads (defaulting to the total number of processor cores). When you start up your ethereum node with `geth` it is not mining by default. To start it in mining mode, you use the `--mine` [command line option](../interface/command-line-options). The `-minerthreads` parameter can be used to set the number parallel mining threads (defaulting to the total number of processor cores).
`geth --mine --minerthreads=4` `geth --mine --minerthreads=4`
You can also start and stop CPU mining at runtime using the [console](../interface/JavaScript-Console#adminminerstart). `miner.start` takes an optional parameter for the number of miner threads. You can also start and stop CPU mining at runtime using the [console](../interface/javascript-console#adminminerstart). `miner.start` takes an optional parameter for the number of miner threads.
``` ```
> miner.start(8) > miner.start(8)
@ -30,7 +30,7 @@ true
Note that mining for real ether only makes sense if you are in sync with the network (since you mine on top of the consensus block). Therefore the eth blockchain downloader/synchroniser will delay mining until syncing is complete, and after that mining automatically starts unless you cancel your intention with `miner.stop()`. Note that mining for real ether only makes sense if you are in sync with the network (since you mine on top of the consensus block). Therefore the eth blockchain downloader/synchroniser will delay mining until syncing is complete, and after that mining automatically starts unless you cancel your intention with `miner.stop()`.
In order to earn ether you must have your **etherbase** (or **coinbase**) address set. This etherbase defaults to your [primary account](Managing-your-accounts). If you don't have an etherbase address, then `geth --mine` will not start up. In order to earn ether you must have your **etherbase** (or **coinbase**) address set. This etherbase defaults to your [primary account](../interface/managing-your-accounts). If you don't have an etherbase address, then `geth --mine` will not start up.
You can set your etherbase on the command line: You can set your etherbase on the command line:
@ -46,7 +46,7 @@ miner.setEtherbase(eth.accounts[2])
Note that your etherbase does not need to be an address of a local account, just an existing one. Note that your etherbase does not need to be an address of a local account, just an existing one.
There is an option [to add extra Data](../interface/JavaScript-Console#adminminersetextra) (32 bytes only) to your mined blocks. By convention this is interpreted as a unicode string, so you can set your short vanity tag. There is an option [to add extra Data](../interface/javascript-console#adminminersetextra) (32 bytes only) to your mined blocks. By convention this is interpreted as a unicode string, so you can set your short vanity tag.
``` ```
miner.setExtra("ΞTHΞЯSPHΞЯΞ") miner.setExtra("ΞTHΞЯSPHΞЯΞ")
@ -66,7 +66,7 @@ Header:
See also [this proposal](https://github.com/ethereum/wiki/wiki/Extra-Data) See also [this proposal](https://github.com/ethereum/wiki/wiki/Extra-Data)
You can check your hashrate with [miner.hashrate](../interface/JavaScript-Console#adminminerhashrate), the result is in H/s (Hash operations per second). You can check your hashrate with [miner.hashrate](../interface/javascript-console#adminminerhashrate), the result is in H/s (Hash operations per second).
``` ```
> miner.hashrate > miner.hashrate
@ -235,7 +235,7 @@ ethminer -G // -G for GPU, -M for benchmark
tail -f geth.log tail -f geth.log
``` ```
`ethminer` communicates with geth on port 8545 (the default RPC port in geth). You can change this by giving the [`--rpcport` option](https://github.com/ethereum/go-ethereum/Command-Line-Options) to `geth`. `ethminer` communicates with geth on port 8545 (the default RPC port in geth). You can change this by giving the [`--rpcport` option](../interface/command-line-options) to `geth`.
Ethminer will find get on any port. Note that you need to set the CORS header with `--rpccorsdomain localhost`. You can also set port on `ethminer` with `-F http://127.0.0.1:3301`. Setting the ports is necessary if you want several instances mining on the same computer, although this is somewhat pointless. If you are testing on a private cluster, we recommend you use CPU mining instead. Ethminer will find get on any port. Note that you need to set the CORS header with `--rpccorsdomain localhost`. You can also set port on `ethminer` with `-F http://127.0.0.1:3301`. Setting the ports is necessary if you want several instances mining on the same computer, although this is somewhat pointless. If you are testing on a private cluster, we recommend you use CPU mining instead.
Also note that you do **not** need to give `geth` the `--mine` option or start the miner in the console unless you want to do CPU mining on TOP of GPU mining. Also note that you do **not** need to give `geth` the `--mine` option or start the miner in the console unless you want to do CPU mining on TOP of GPU mining.

@ -31,7 +31,7 @@ title: Swarm TODO
## APIs ## APIs
- DAPP API - js integration (Fabian, Alex) - DAPP API - js integration (Fabian, Alex)
- mist dapp storage scheme, url->hash mapping (Fabian, Alex) [URL scheme](URL-Scheme) - mist dapp storage scheme, url->hash mapping (Fabian, Alex) [URL scheme](../doc/url-scheme)
# Discuss alternatives # Discuss alternatives

@ -10,15 +10,15 @@ title: Swarm - distributed preimage archive
- http://www.amazon.co.uk/Swarmwise-Tactical-Manual-Changing-World/dp/1463533152/ - http://www.amazon.co.uk/Swarmwise-Tactical-Manual-Changing-World/dp/1463533152/
## Docs & specs ## Docs & specs
- [Swarm TODO](Swarm---TODO) - [Swarm TODO](./swarm-todo)
- Dani & Viktor on public wiki: https://github.com/ethereum/wiki/wiki/Distributed-Preimage-Archive - Dani & Viktor on public wiki: https://github.com/ethereum/wiki/wiki/Distributed-Preimage-Archive
- Dani on swarm hash: https://github.com/ethereum/wiki/wiki/Swarm-Hash - Dani on swarm hash: https://github.com/ethereum/wiki/wiki/Swarm-Hash
- Dani on incentive system: https://github.com/ethersphere/swarm/blob/master/doc/incentives.md - Dani on incentive system: https://github.com/ethersphere/swarm/blob/master/doc/incentives.md
- [The swarm smart contract](Swarm-Contract) - [The swarm smart contract](./swarm-contract)
- gav on url-hint https://github.com/ethereum/wiki/wiki/URL-Hint-Protocol - gav on url-hint https://github.com/ethereum/wiki/wiki/URL-Hint-Protocol
- Gav on public wiki: https://github.com/ethereum/cpp-ethereum/wiki/Swarm - Gav on public wiki: https://github.com/ethereum/cpp-ethereum/wiki/Swarm
- network (DEVp2p) - network (DEVp2p)
- [Peer-to-Peer](Peer-to-Peer) - [Peer-to-Peer](../developers/peer-to-peer)
- on kademlia: https://github.com/ethereum/wiki/wiki/Cademlia-Peer-Selection - on kademlia: https://github.com/ethereum/wiki/wiki/Cademlia-Peer-Selection
## Talks ## Talks

@ -18,20 +18,20 @@ By installing and running `geth`, you can take part in the ethereum frontier liv
Supported Platforms are Linux, Mac Os and Windows. Supported Platforms are Linux, Mac Os and Windows.
We support two types of installation: binary or scripted install for users. We support two types of installation: binary or scripted install for users.
See [Install instructions](../install-and-build/Building-Ethereum) for binary and scripted installs. See [Install instructions](../install-and-build/build-from-source) for binary and scripted installs.
Developers and community enthusiast are advised to read the [Developers' Guide](../install-and-build/Developers-Guide), which contains detailed instructions for manual build from source (on any platform) as well as detailed tips on testing, monitoring, contributing, debugging and submitting pull requests on github. Developers and community enthusiast are advised to read the [Developers' Guide](../install-and-build/developers-guide), which contains detailed instructions for manual build from source (on any platform) as well as detailed tips on testing, monitoring, contributing, debugging and submitting pull requests on github.
## Interfaces ## Interfaces
* Javascript Console: `geth` can be launched with an interactive console, that provides a javascript runtime environment exposing a javascript API to interact with your node. [Javascript Console API](../interface/JavaScript-Console) includes the `web3` javascript Ðapp API as well as an additional admin API. * Javascript Console: `geth` can be launched with an interactive console, that provides a javascript runtime environment exposing a javascript API to interact with your node. [Javascript Console API](../interface/javascript-console) includes the `web3` javascript Ðapp API as well as an additional admin API.
* JSON-RPC server: `geth` can be launched with a json-rpc server that exposes the [JSON-RPC API](https://github.com/ethereum/wiki/JSON-RPC) * JSON-RPC server: `geth` can be launched with a json-rpc server that exposes the [JSON-RPC API](https://github.com/ethereum/wiki/JSON-RPC)
* [Command line options](../interface/Command-Line-Options) documents command line parameters as well as subcommands. * [Command line options](../interface/command-line-options) documents command line parameters as well as subcommands.
## Basic Use Case Documentation ## Basic Use Case Documentation
* [Managing accounts](../how-to/Managing-your-accounts) * [Managing accounts](../interface/managing-your-accounts)
* [Mining](../how-to/Mining) * [Mining](../legacy/mining)
**Note** buying and selling ether through exchanges is not discussed here. **Note** buying and selling ether through exchanges is not discussed here.

@ -10,7 +10,7 @@ title: FAQ
**Q.** I would like to run multiple geth instances but got the error "Fatal: blockchain db err: resource temporarily unavailable". **Q.** I would like to run multiple geth instances but got the error "Fatal: blockchain db err: resource temporarily unavailable".
**A.** Geth uses a datadir to store the blockchain, accounts and some additional information. This directory cannot be shared between running instances. If you would like to run multiple instances follow [these](../doc/Setting-up-private-network-or-local-cluster) instructions. **A.** Geth uses a datadir to store the blockchain, accounts and some additional information. This directory cannot be shared between running instances. If you would like to run multiple instances follow [these](../doc/setting-up-private-network-or-local-cluster) instructions.
--- ---

@ -3,7 +3,7 @@ title: How to Whisper
--- ---
Whisper is a pure identity-based messaging system. Whisper provides a low-level (non-application-specific) but easily-accessible API without being based upon or prejudiced by the low-level hardware attributes and characteristics, particularly the notion of singular endpoints. Whisper is a pure identity-based messaging system. Whisper provides a low-level (non-application-specific) but easily-accessible API without being based upon or prejudiced by the low-level hardware attributes and characteristics, particularly the notion of singular endpoints.
This tutorial assumes you've read [p2p 101](Peer-to-Peer). If you haven't read it I suggest you read it. This tutorial will guide you to setting up a full p2p server with whisper capabilities. This tutorial assumes you've read [p2p 101](../developers/peer-to-peer). If you haven't read it I suggest you read it. This tutorial will guide you to setting up a full p2p server with whisper capabilities.
Let's quickly cover some of whisper's basic functionality and discuss it in greater detail later. Let's quickly cover some of whisper's basic functionality and discuss it in greater detail later.

@ -9,13 +9,13 @@ This is the documentation for the official Ethereum golang implementation. For g
Main entry points: Main entry points:
* [Installation Instructions](../install-and-build/Building-Ethereum) * [Installation Instructions](./install-and-build/installing-geth)
* [Management APIs](../interface/Management-APIs) * [Management APIs](./interface/management-apis)
* [Managing Accounts](../interface/Managing-your-accounts) * [Managing Accounts](./interface/managing-your-accounts)
* [Command Line Options](../interface/Command-Line-Options) * [Command Line Options](./interface/command-line-options)
* [JavaScript Console](../interface/JavaScript-Console) * [JavaScript Console](./interface/javascript-console)
* [Private Network](../doc/Private-network) * [Private Network](./doc/private-network)
* [Developers' Guide](../install-and-build/Developers-Guide) * [Developers' Guide](./install-and-build/developers-guide)
* [Whisper v6](../doc/Whisper) * [Whisper v6](./whisper/whisper-overview)
Sidebar lists all pages. Sidebar lists all pages.

@ -3,4 +3,4 @@ title: Install
root: .. root: ..
permalink: /install/ permalink: /install/
--- ---
See [Installing Geth](../doc/Installing-Geth). See [Installing Geth](../docs/install-and-build/installing-geth).
Loading…
Cancel
Save