gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnunet-scheme] 53/324: doc: add a section on Guix in the roadmap


From: gnunet
Subject: [gnunet-scheme] 53/324: doc: add a section on Guix in the roadmap
Date: Tue, 21 Sep 2021 13:21:33 +0200

This is an automated email from the git hooks/post-receive script.

maxime-devos pushed a commit to branch master
in repository gnunet-scheme.

commit 606563fe3063398a509fb8389093837830a79261
Author: Maxime Devos <maximedevos@telenet.be>
AuthorDate: Mon Jan 25 20:54:23 2021 +0100

    doc: add a section on Guix in the roadmap
    
    * ROADMAP.org (Substitutes over GNUnet):
      create section.
---
 ROADMAP.org | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 76 insertions(+)

diff --git a/ROADMAP.org b/ROADMAP.org
new file mode 100644
index 0000000..cacdf9b
--- /dev/null
+++ b/ROADMAP.org
@@ -0,0 +1,76 @@
+# Copyright (C) 2020, 2021 Maxime Devos
+# SPDX-License-Identifier: FSFAP
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved.  This file is offered as-is,
+# without any warranty.
+
+* (Guix) Substitutes over GNUnet
+
+  Source files:
+  + gnu/gnunet/scripts/download-store.scm
+  + gnu/gnunet/scripts/publish-store.scm
+
+  For previous attempts, see the guix mailing list
+  and guile-gnunet.
+
+** DONE Publishing and fetching directories over GNUnet
+   Example usage of publish-store:
+   #+BEGIN_SRC shell
+   guile -L . -e '(@ (gnu gnunet scripts publish-store) main)' -- -i `guix 
build hello`
+   #+END_SRC
+
+   Output:
+   #+BEGIN_SRC fundamental
+   Published at 
gnunet://fs/chk/DD0C9CM0EG1WPV5MQMWJ1B6QPVPR4R0DEZH8EW2BPASV9B9Q13P2TXWWX59RRBYGSS29TJEJE8WBNS97WQBDWHB7PGE0P21FMNYT83G.YVWEM5SWBHFQR1YFG8TAJD5J3284XDEK144BFY3B2F3BRD678T3HZPDTP7WB18A04N3HT4HC0SZZ6H71XQRVVZNZX2ZGJXXSJXD9KW0.24798
 in gnunet-nix-archive-json/0 format
+   #+END_SRC
+
+   Example usage of download-store:
+   #+BEGIN_SRC shell
+     guile -L . -e '(@ (gnu gnunet scripts download-store) main)' -- -i 
$THE_GNUNET_URI -o t
+     # Output: plenty of progress messages
+     ls -R t
+     # Success!
+   #+END_SRC
+
+** TODO Doing it *efficiently* [1/7]
+
+   Some proposals (some forthe implementation, some of the directory format):
+
+   * [ ] inline tiny files
+   * [ ] parallel downloads
+   * [ ] compress files
+     Potential problem: if some peers use different compressors,
+     then the files will be different --> more duplication on the network,
+     less performant.
+   * [ ] maybe use a binary format instead of JSON
+   * [ ] factor out store names.
+
+     Sometimes, changing a build dependency changes very little,
+     perhaps only the embedded store names (e.g. when grafting). Maybe
+     zero out the store references in the files, and mark the location
+     anv value in the JSON container. This way, less data should be
+     duplicated over the network (which should lead to better performance!).
+   * [X] indexing (letting gnunet-service-fs refer to the store items by
+     file name instead of inserting the store items in a database).
+     This is done by default in the implementation for the
+     gnunet-nix-archive-json/0 format. The former point ‘factor out store
+     names’ will undo this, however (which could be resolved with
+     a Hurd translator or FUSE filesystem).
+   * [ ] contact 'gnunet-service-fs' directly, instead of calling a
+     binary for each file.
+
+** TODO Let Guix use a GNUnet substituter
+   Make the substituters ‘pluggable’ somehow. Maybe allow
+   to use the user's substituter, instead of the system's
+   subsituter? (Practical for testing and experimentation.)
+
+   Allow substitutes over http, ipfs, GNUnet, torrents (?).
+   Insert some text about open coding here.
+** TODO (external) GNUnet service for Guix System
+
+   Put it in a container to easy people's minds (including
+   my own).
+** TODO more TODO
+   Maybe substitutes in GNS or something? Let's first
+   address the former points.

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]