No description
In light of experience gained in running the Stage 1 bootstrap, some essential refinements have been made to all three of the programs Inputs to programs are sanitized, so that PGP key fingerprints and UUIDs can be specified with some flexibility, and bad entries will not mess things up. The programs take in data files where appropriate, instead of having hard-wired parameters at the heads of source codes. Thus re-compilation and re-deployment of the binaries should not be necessary to change the operations of the toolkit. The programs emit a message on successful start-up informing of the PID and essential parameters, such as TCP ports being monitored. * README.txt : brought up to date * rust/Cargo.toml : version to 1.2.0 * rust/src/bin/bootstrap-0/mycelium-data--example.json : NEW file * rust/src/bin/bootstrap-0/mycelium.rs : extensive changes * rust/src/bin/bootstrap-1/adjudicator-data--example.json : NEW file * rust/src/bin/bootstrap-1/adjudicator.rs : extensive changes * rust/src/bin/bootstrap-1/polling-booth.rs : extensive changes * rust/src/lib.rs : functions to normalize fingerprints and UUIDs * rust/src/person.rs : normalization of a Person object |
||
|---|---|---|
| rust | ||
| .guix-authorizations | ||
| bootstrap-stage-0.html | ||
| bootstrap-stage-0.txt | ||
| bootstrap-stage-1.html | ||
| bootstrap-stage-1.txt | ||
| GPLv3.txt | ||
| README.txt | ||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
MYCELIUM TOOLKIT FOR ON-LINE GOVERNANCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Table of Contents
─────────────────
1. GIT Repository
.. 1. Branches
.. 2. Tags
2. Building
3. Deployment
.. 1. People / Bootstrap Stage Zero
.. 2. Projects / Bootstrap Stage One
The Mycelium network is a non-discoverable, totally un-centred, network
of nodes each of which mutually assert that a small set of other nodes
belong to actual, trustworthy people, and each node offers opinions of
other people in some contexts. The network can be used to establish the
authenticity of strangers as actual people, and to conduct opinion polls
regarding some project issues.
At the moment the network is only useful for people involved in FOSS
projects who run their own web site. When user-friendliness is worked
out, it will be available to a much wider audience.
1 GIT Repository
════════════════
1.1 Branches
────────────
main
this branch, providing all available white papers, and the code
to produce the `mycelium', `polling-booth' and `adjudicator'
applications,
boot-0
the minimal, self-contained code to produce the *definitive*
`mycelium' application,
broken-guile-implementation
partial development of a Guile version of the `mycelium'
application; see the git log for information.
1.2 Tags
────────
Tags exist for all version release points, and all public
announcements: the state of the code actually deployed to effect an
announced action. The currently pertinent tags are
‣ `v1.0.2', the definitive `mycelium' program,
‣ `V1.2.0', the current mainline head,
‣ `announce-1', the bootstrap stage 0 announcement,
‣ `announce-2', the bootstrap stage 1 announcement.
2 Building
══════════
Users should have a Rust toolchain available. The project can be
built simply by running `cargo build --release'.
3 Deployment
════════════
3.1 People / Bootstrap Stage Zero
─────────────────────────────────
To be a verified person on the network you need to be familiar with
the Bootstrap Stage Zero white paper (available in this directory),
must create the data file for `mycelium.rs' (there is an example with
the code called `mycelium-data--example.json'), and then run this
program as a web service proxied by a front-end web server which can
deal with TLS security. [Out of band, you will want to hook up with
some trusted friends who are also engaging with the Mycelium network
to establish mutual cross-references with each other.]
You will find the refined version of mycelium.rs in the
`rust/src/bin/bootstrap-0' directory. If you want total peace of
mind, the original self-contained simpler version is available in the
`boot-0' branch of this repository (in either case you should ensure
you are up to date with the head of the branch).
3.2 Projects / Bootstrap Stage One
──────────────────────────────────
Projects wishing to vote on an issue should be familiar with the
Bootstrap Stage One white paper (available in this directory), must
modify the heads of the `polling_booth.rs' and `adjudicator.rs' files
and the files referenced therein, and then run these two programs
under a public web server. [This will need to be accompanied by a lot
of out-of-band work of general, social, project governance to
establish the parameters of a vote (including a hard deadline),
advertise it, and make sure that all the governors of a project are on
board.]