Size: 2837
Comment: p2p
|
Size: 2943
Comment: inserted non-freenet link with infocalypse details
|
Deletions are marked like this. | Additions are marked like this. |
Line 48: | Line 48: |
For details see freenet:USK@-bk9znYylSCOEDuSWAvo5m72nUeMxKkDmH3nIqAeI-0,qfu5H3FZsZ-5rfNBY-jQHS5Ke7AT2PtJWd13IrPZjcg,AQACAAE/feral_codewright/16/infocalypse_howto.html#basic | For details see freenet:USK@-bk9znYylSCOEDuSWAvo5m72nUeMxKkDmH3nIqAeI-0,qfu5H3FZsZ-5rfNBY-jQHS5Ke7AT2PtJWd13IrPZjcg,AQACAAE/feral_codewright/16/infocalypse_howto.html#basic or http://draketo.de/light/english/freenet/infocalypse-mercurial-survive-the-information-apocalypse#basic |
Infocalypse
Infocalypse offers efficient, decentralized (p2p), anonymous code-sharing over Freenet ( http://freenetproject.org ).
Contents
1. Status
This extension is not distributed with Mercurial.
Author: dkarbott
Repository: https://bitbucket.org/dkarbott/wiki_hacking/
Web page: https://bitbucket.org/dkarbott/wiki_hacking/src/tip/infocalypse/doc/infocalypse_howto.html
2. Overview
The Infocalypse 2.0 hg extension is an extension for Mercurial that allows you to create, publish and maintain incrementally updateable repositories in Freenet.
For better persistency, Infocalypse stores graphs of Mercurial bundles in Freenet, which can be reinserted by any user of the repo.
Some of the links in this article can only be retrieved over Freenet.
3. Configuration
Infocalypse can be installed normally or anonymously.
To install it normally, just clone the wiki_hacking repo: https://bitbucket.org/dkarbott/wiki_hacking/
- To install anonymously, you can get a bootstrap bundle from freenet and use that to pull the current code. See the wiki_hacking install instructions in Freenet for more details. You need only Infocalypse: freenet:USK@Gq-FBhpgvr11VGpapG~y0rGFOAHVfzyW1WoKGwK-fFw,MpzFUh5Rmw6N~aMKwm9h2Uk~6aTRhYaY0shXVotgBUc,AQACAAE/fniki/85/InstallingFniki
Configure your .hgrc to enable the extension by adding following lines:
[extensions] infocalypse = /full/path/to/wiki_hacking/infocalypse
Run fn-setup to create the config file and temp dir. i.e.
hg fn-setup
4. Usage
For details see freenet:USK@-bk9znYylSCOEDuSWAvo5m72nUeMxKkDmH3nIqAeI-0,qfu5H3FZsZ-5rfNBY-jQHS5Ke7AT2PtJWd13IrPZjcg,AQACAAE/feral_codewright/16/infocalypse_howto.html#basic or http://draketo.de/light/english/freenet/infocalypse-mercurial-survive-the-information-apocalypse#basic
Bare Basics are:
Generate a key: hg fn-genkey → get a USK key (the last of the keys), from now on called KEY.
In the KEY replace NAME by <project name>.R1 for higher reliability and redundancy or <project name>.R0 for stronger anonymity when inserting.
Create a freenet-based repo: hg fn-create --uri KEY
Push the changes: hg fn-push [--aggressive] [--uri KEY] ; aggressive makes sure you use the latest revision, even if you specify an older one.
Pull changes from others: hg fn-pull [--aggressive] [--uri REQUESTKEY]; request key is the public key which is also used for retrieving a freesite. It is NOT the KEY.
Reinsert if the repo is inaccessible: for i in 1 2 3 4 5: do hg fn-reinsert --level $i; done; DO NOT use fn-reinsert if you're concerned about correlation attacks - level 2, 3 and 5 can be done by any contributor, not only the author of the code, so you can “sponsor” a repository.