on master help sign in
Unify install instructions
78f0310Morgan Sutherland
README.md+26−19
@@ -10,26 +10,33 @@ Python 3.7.2
10
10
11### Instructions
11### Instructions
12
12
13−1. To use Bridge, [download a release](https://github.com/urbit/bridge/releases) and unzip it (`bridge-$version.zip`).
13+Before using Bridge, you'll need access to whatever media you're using to store the Ethereum wallet that owns or will own your Azimuth points. This could be an Urbit HD wallet containing a Master Ticket, a BIP39 mnemonic, a Ledger or Trezor hardware wallet, or an Ethereum private key or keystore file.
14−2. Open up your command line interface (Terminal on MacOS, Command Prompt on Windows).
15−3. `cd` into the `bridge-$version` directory.
16−4. Run this command: `python3 -m http.server 5000 --bind 127.0.0.1`. If you're using Bridge with a Ledger hardware wallet, skip this step and see the Ledger Support subsection below.
17−5. You can then use Bridge by navigating to http://localhost:5000 using a web browser.
18
14
19−#### Ledger Support
15+With that in hand, to use Bridge, [download a release](https://github.com/urbit/bridge/releases) and unzip it (`bridge-$version.zip`), then do one of the following:
20
16
21−To authenticate and sign transactions with a [Ledger](https://www.ledger.com/), Bridge must be serving over HTTPS on localhost. This requires self-signed certificates. You can do this via the following:
17+#### Non-Ledger
22
18
19+If you plan to authenticate and sign transactions with a Master Ticket, BIP39 mnemonic, Ethereum private key, or keystore file:
20+
21+1. Open up your command line interface (Terminal on MacOS, Command Prompt on Windows)
22+2. `cd` into the `bridge-$version` directory
23+3. Run this command: `python3 -m http.server 5000 --bind 127.0.0.1`
24+4. Navigate to http://localhost:5000 using a web browser to access Bridge
25+
26+#### Ledger support
27+
28+To authenticate and sign transactions with a [Ledger](https://www.ledger.com/), Bridge must be serving over HTTPS on localhost. This requires self-signed certificates. To do this, follow these steps:
29+
23−* Install [mkcert](https://github.com/FiloSottile/mkcert)
30+1. Install [mkcert](https://github.com/FiloSottile/mkcert)
24−* If you're using Firefox, additionally install [nss](https://github.com/nss-dev/nss)
31+2. If you're using Firefox, additionally install [nss](https://github.com/nss-dev/nss)
25−* Install a local certificate authority via `mkcert -install`
32+3. Install a local certificate authority via `mkcert -install`
26−* In your `bridge` directory, generate a certificate valid for localhost via
33+4. In the `bridge-$version` directory, generate a certificate valid for localhost via
27 `mkcert localhost`. This will produce two files: `localhost.pem`, the local
34 `mkcert localhost`. This will produce two files: `localhost.pem`, the local
28− certificate, and `localhost-key.pem`, its corresponding private key.
35+ certificate, and `localhost-key.pem`, its corresponding private key
29−* Run `python bridge-https.py`
36+5. Run `python bridge-https.py` from the `bridge-$version` directory
30−* Navigate to https://localhost:4443 in a web browser
37+6. Navigate to https://localhost:4443 in a web browser to access Bridge
31
38
32−### Verify Checksums
39+### Verify checksums
33
40
34To validate your downloaded file's integrity, compare the lines in checksum.txt to SHA-256 hashes of the `bridge-$version` directory's contents.
41To validate your downloaded file's integrity, compare the lines in checksum.txt to SHA-256 hashes of the `bridge-$version` directory's contents.
35
42
@@ -37,14 +44,14 @@ To validate your downloaded file's integrity, compare the lines in checksum.txt
37- On Linux: `sha256sum -c checksums.txt .`
44- On Linux: `sha256sum -c checksums.txt .`
38- On Windows: Go into the `build` directory and verify files individually with `CertUtil -hashFile [file_name] SHA256`
45- On Windows: Go into the `build` directory and verify files individually with `CertUtil -hashFile [file_name] SHA256`
39
46
40−## Development Notes
47+## Development notes
41
48
42### Install / Build
49### Install / Build
43
50
44Clone the repo, and use a simple `npm install`. You can then use a `npm run
51Clone the repo, and use a simple `npm install`. You can then use a `npm run
45build` to create an optimised static build (serve it with e.g. [serve][serv]).
52build` to create an optimised static build (serve it with e.g. [serve][serv]).
46
53
47−### General Notes
54+### General notes
48
55
49For development, use `npm run pilot` to get going after a `npm install`. This
56For development, use `npm run pilot` to get going after a `npm install`. This
50will boot up a Ganache node in the background, deploy the Azimuth contracts to
57will boot up a Ganache node in the background, deploy the Azimuth contracts to
@@ -63,7 +70,7 @@ $ nvm use v11.0.0
63
70
64before running `npm run pilot`.
71before running `npm run pilot`.
65
72
66−### Useful Accounts
73+### Useful accounts
67
74
68The ecliptic owner is the only account that's able to create galaxies, so
75The ecliptic owner is the only account that's able to create galaxies, so
69it's a good place to get started. On the testnet, it's the address:
76it's a good place to get started. On the testnet, it's the address:
@@ -97,7 +104,7 @@ with 100 ETH:
97To play around with any of these, authenticate using the same mnemonic, but
104To play around with any of these, authenticate using the same mnemonic, but
98use a custom HD path of `m/44'/60'/0'/0/1`, `m/44'/60'/0'/0/2`, and so on.
105use a custom HD path of `m/44'/60'/0'/0/1`, `m/44'/60'/0'/0/2`, and so on.
99
106
100−### Initial Development State
107+### Initial development state
101
108
102You can also tweak a couple of things to change your development state
109You can also tweak a couple of things to change your development state
103somewhat (say, for example, you want to start on the points list screen, instead
110somewhat (say, for example, you want to start on the points list screen, instead