How To Blockchain a Git Repository for Public Archive

Undescribed Horrific Abuse, One Victim & Survivor of Many gmkarl at
Tue Nov 15 00:51:48 PST 2022

This is not the best way. It is a way I have used. I have typed the
below without testing it in depth.

Blockchain: Arweave (written in erlang)
Tool: arkb (written in typescript)

If all the .pack and object files in your bare repository are 100,000
bytes or smaller, the upload can be made for free. Otherwise, it will
cost a small number of AR coins. You should get AR coins either way:
it opens up your options in the future.

If you want to generate a wallet offline, wallet.json is simply a JWK
file holding a 4096-bit RSA keys. Arweave has an online process at .

# install arkb with yarn or npm
yarn global add arkb
# or with npm
#npm install --global arkb

# check your wallet address and balance if needed
arkb balance --wallet ~/wallet.json

# make a dedicated folder to be the upload
mkdir deployment_dir

# place the repository in the folder
git clone --mirror --bare my/remote/repository deployment_dir/repository.git

# generate dumb HTTP information in the repository so it can be cloned
from a gateway
git --git-dir deployment_dir/repository.git update-server-info

# might be optional: add .keepme files to any important empty folders
find deployment_dir -type d -empty | while read path; do touch
$path/.keepme; done

# add an index file to show web browsers, or even entire web content
echo 'Clone the repository.git subfolder.' > deployment_dir/index.txt

# deploy with arkb
arkb deploy deployment_dir --wallet ~/wallet.json --index index.txt
--bundle --debug
# or deploy files all <100,000 bytes using
#arkb deploy deployment_dir --index index.txt --use-bundlr

# when arkb finishes, it will output a url on the gateway

# during times of congestion, it may take multiple runs of arkb for success
# bundlr automatically retries if that happens; otherwise you may need to

# after a couple blocks have been mined, the repo should be cloneable

More information about the cypherpunks mailing list