From 2db7e868835ad8a24d3904a53f43777a1c2db62f Mon Sep 17 00:00:00 2001 From: Pjotr Prins Date: Thu, 6 Oct 2022 07:18:34 -0500 Subject: Topic: file sharing and replace IPFS --- topics/file-sharing/replace-ipfs.gmi | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 topics/file-sharing/replace-ipfs.gmi (limited to 'topics') diff --git a/topics/file-sharing/replace-ipfs.gmi b/topics/file-sharing/replace-ipfs.gmi new file mode 100644 index 0000000..9eb10ba --- /dev/null +++ b/topics/file-sharing/replace-ipfs.gmi @@ -0,0 +1,21 @@ +# Replace IPFS + +IPFS has some nice features exposing hashed files through HTTP. The overall system, however is overengineered and puts load on the server. Also it is hard to deal with private data. + +Our requirements: + +* Expose files over the web +* Serve them under a hash, so we can guarantee/encourage reproducibility +* Deduplication on the disk drive + +## Create a hash of the directory + +``` +find current/ -type f -exec md5sum {} \;|awk '{ print $1 }'|md5sum +``` + +Then move the files into a dir of that name and expose through, say nginx. + +## Deduplication + +This can be handled later. One option is to symlink identical files. Another is to use a deduplicating file system or even borg with fuse mounts. git-mount and gitfs may do the job too, though git is not particularly great at handling large files. \ No newline at end of file -- cgit v1.2.3