Differences between revisions 15 and 16
Revision 15 as of 2015-11-24 15:13:46
Size: 3303
Editor: ArneBab
Comment: add usage example link
Revision 16 as of 2016-11-07 07:42:39
Size: 4044
Editor: ArneBab
Comment: clickable link first
Deletions are marked like this. Additions are marked like this.
Line 49: Line 49:
hg fn-setup hg fn-setup [--truster NAME]
}}}

If you did not use --truster, you can prepare the easier usage with user-id separately by running

{{{
hg fn-setupwot --truster NAME
Line 56: Line 62:
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 If you setup a user-id, you can use freenet like a typical hosting platform:

{{{#!python
# freenet -> local
hg clone freenet://ArneBab/life-repo
# local -> freenet
hg clone life-repo real-life
hg clone real-life freenet://ArneBab/real-life
# send pull request
cd real-life
hg fn-pull-request --wot ArneBab/life-repo
(enter message)
# check for pull-requests
cd ../life-repo
sleep 1800 # (wait for confidential delivery)
hg fn-check-notifications --wot ArneBab
}}}

For practical examples, see ''http://draketo.de/english/freenet/real-life-infocalypse''



For details see http://draketo.de/light/english/freenet/infocalypse-mercurial-survive-the-information-apocalypse#basic or freenet:USK@-bk9znYylSCOEDuSWAvo5m72nUeMxKkDmH3nIqAeI-0,qfu5H3FZsZ-5rfNBY-jQHS5Ke7AT2PtJWd13IrPZjcg,AQACAAE/feral_codewright/16/infocalypse_howto.html#basic

Infocalypse

Infocalypse offers efficient, decentralized (p2p), anonymous code-sharing over Freenet ( http://freenetproject.org ).

1. Status

This extension is not distributed with Mercurial.

Author: dkarbott

Maintainer: ArneBab

Repository: https://bitbucket.org/ArneBab/wiki_hacking/

Usage: http://draketo.de/english/freenet/real-life-infocalypse

Web page: http://draketo.de/light/english/freenet/infocalypse-mercurial-survive-the-information-apocalypse

Simple Setup including dependencies: http://draketo.de/light/english/freenet-and-why-i-use-it/install-and-setup-infocalypse-gnulinux-script

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 [--truster NAME]

If you did not use --truster, you can prepare the easier usage with user-id separately by running

hg fn-setupwot --truster NAME

4. Usage

In the most recent version from the setup script you can just push and pull normally to and from freenet keys.

If you setup a user-id, you can use freenet like a typical hosting platform:

   1 # freenet -> local
   2 hg clone freenet://ArneBab/life-repo
   3 # local -> freenet
   4 hg clone life-repo real-life
   5 hg clone real-life freenet://ArneBab/real-life
   6 # send pull request
   7 cd real-life
   8 hg fn-pull-request --wot ArneBab/life-repo
   9 (enter message)
  10 # check for pull-requests
  11 cd ../life-repo
  12 sleep 1800 # (wait for confidential delivery)
  13 hg fn-check-notifications --wot ArneBab

For practical examples, see http://draketo.de/english/freenet/real-life-infocalypse

For details see http://draketo.de/light/english/freenet/infocalypse-mercurial-survive-the-information-apocalypse#basic or freenet:USK@-bk9znYylSCOEDuSWAvo5m72nUeMxKkDmH3nIqAeI-0,qfu5H3FZsZ-5rfNBY-jQHS5Ke7AT2PtJWd13IrPZjcg,AQACAAE/feral_codewright/16/infocalypse_howto.html#basic

Bare Basics are:

  1. Generate a key: hg fn-genkey → get a USK key (the last of the keys), from now on called KEY.

  2. In the KEY replace NAME by <project name>.R1 for higher reliability and redundancy or <project name>.R0 for stronger anonymity when inserting.

  3. Create a freenet-based repo: hg fn-create --uri KEY

  4. Push the changes: hg fn-push [--aggressive] [--uri KEY] ; aggressive makes sure you use the latest revision, even if you specify an older one.

  5. 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.

  6. 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.

5. See also


CategoryExtensionsByOthers

Infocalypse (last edited 2022-10-29 08:38:20 by ArneBab)