5238cda077
Also, needed to understand Byzantine fault tolerant paxos better. Still do not.
75 lines
2.8 KiB
Markdown
75 lines
2.8 KiB
Markdown
---
|
|
title: >-
|
|
README
|
|
---
|
|
[pre alpha documentation (mostly a wish list)](docs/index.htm)
|
|
|
|
[copyright © and license](./license.txt)
|
|
|
|
pre-requisite, Pandoc to build the html documentation from the markdown files.
|
|
|
|
Windows pre-requisites: Visual Studio and git-bash
|
|
|
|
To obtain the source code from which the project can be built, including
|
|
this README, from the bash command line (git-bash in windows).
|
|
|
|
```bash2
|
|
git clone missing url
|
|
cd wallet
|
|
./winConfigure.sh
|
|
```
|
|
|
|
To configure and build the required third party libraries in windows, then
|
|
build the program and run unit test for the first time, launch the Visual
|
|
Studio X64 native tools command prompt in the cloned directory, then:
|
|
|
|
```bat
|
|
winConfigure.bat
|
|
```
|
|
|
|
[cryptographic software is under attack]:./docs/contributor_code_of_conduct.html#code-will-be-cryptographically-signed
|
|
"Contributor Code of Conduct"
|
|
{target="_blank"}
|
|
|
|
winConfigure.bat also configures the repository you just created to use
|
|
`.gitconfig` in the repository, causing git to to implement GPG signed
|
|
commits -- because [cryptographic software is under attack] from NSA
|
|
entryists, and shills, who seek to introduce backdoors.
|
|
|
|
This may be inconvenient if you do not have `gpg` installed and set up.
|
|
|
|
`.gitconfig` adds several git aliases:
|
|
|
|
1. `git lg` to display the gpg trust information for the last four commits.
|
|
For this to be useful you need to import the repository public key
|
|
`public_key.gpg` into gpg, and locally sign that key.
|
|
1. `git fixws` to standardise white space to the project standards
|
|
1. `git graph` to graph the commit tree
|
|
1. `git alias` to display the git aliases.
|
|
|
|
```bash
|
|
# To verify that the signature on future pulls is unchanged.
|
|
gpg --import public_key.gpg
|
|
gpg --lsign 096EAE16FB8D62E75D243199BC4482E49673711C
|
|
# We ignore the Gpg Web of Trust model and instead use
|
|
# the Zooko identity model.
|
|
# We use Gpg signatures to verify that remote repository
|
|
# code is coming from an unchanging entity, not for
|
|
# Gpg Web of Trust. Web of Trust is too complicated
|
|
# and too user hostile to be workable or safe.
|
|
# Never --sign any Gpg key related to this project. --lsign it.
|
|
# Never check any Gpg key related to this project against a
|
|
# public gpg key repository. It should not be there.
|
|
# Never use any email address on a gpg key related to this project
|
|
# unless it is only used for project purposes, or a fake email,
|
|
# or the email of someone whom you do not like.
|
|
```
|
|
|
|
To build the documentation in its intended html form from the markdown
|
|
files, execute the bash script file `docs/mkdocs.sh`, in an environment where
|
|
`pandoc` is available. On Windows, if Git Bash and Pandoc has been
|
|
installed, you should be able to run a shell file in bash by double clicking on it.
|
|
|
|
[Pre alpha release](./RELEASE_NOTES.html), which means it does not yet work even well enough for
|
|
it to be apparent what it would do if it did work.
|