Hello! Ludovic Courtès writes: > Could you add a package recipe to Guix for the right version of GNUnet?
Working on it! > Could you remind me what the right GNUnet command is to check whether > the thing is actually published and visible? `gnunet-fs -i` should do the thing, otherwise you can search for your store-path using its basename. For instance: $ gnunet-fs -i /gnu/store/zxfivagcmg1r76v137cfjiyzbqcv8bxh-attr-2.4.46/share/doc/attr/README /gnu/store/zxfivagcmg1r76v137cfjiyzbqcv8bxh-attr-2.4.46/share/doc/attr/COPYING /gnu/store/zxfivagcmg1r76v137cfjiyzbqcv8bxh-attr-2.4.46/share/doc/attr/CHANGES.gz … $ gnunet-identity -d testego - GKDCJH769N07V0WXGSMQWMT30HZCR7PGB6TS368WK8624A4537H0 $ gnunet-search gnunet://fs/sks/GKDC…H0/zxfiv…xh-attr-2.4.46 #0: gnunet-download gnunet://fs/loc/NMR5JZ76WTFZF52B7EBQJDBJZ5WV3W1MXM9YT4SN8… #1: gnunet-download gnunet://fs/loc/6ZEY7E5QT9F7PRYKHP19YKE7K7C2VH8WPDFN63R23… #2: gnunet-download gnunet://fs/loc/F3QMX8J51EKEM9VDZSB3GTYQFYE1DTP1BCNJGYW68… #3: gnunet-download gnunet://fs/loc/2WPBMM7BZMKG9Q70DF837QKGZDAGHWCMW79QB5D58… #4: gnunet-download gnunet://fs/loc/6F94CAE022SP1AZX7TSHKGQHGKS290AP0VXHR97GF > Nitpick: it’s a bit annoying that we have to specify a GNUnet > configuration file. Yes, GNUnet programs usually look for `~/.config/gnunet.conf`, and `publish-gnunet` does the same. Now, maybe `publish-gnunet` could somehow obtain the config file used by `gnunet-arm`? > Instead of using ‘file-system-tree’, this variant should probably use > ‘live-paths’ from (guix store), which returns the list of live store > items. Well, `file-system-tree` is only used to recursively index a random directory’s content (in our case, a single store item). It looked viable for publishing a single store item, but won’t be good for indexing at once the entire set of live paths; I should ask the GNUnet team how to properly index such a huge amount of directories. On my machine, running `live-paths` takes ~2 seconds, but the publication of the entire store will probably take much longer anyway. > BTW, I noticed there’s quite a bunch of global variables that are > ‘set!’. It would be better to avoid that, but I suppose the > continuation-passing style that the GNUnet libraries impose makes it > difficult. Hopefully, using the “closure” parameters of the GNUnet API in the bindings should reduce the need for global variables, and improve elegance of end-user programs. Finally, the previously mentionned repositories are: libextractor: https://gnunet.org/svn/Extractor/ GNUnet: https://gnunet.org/svn/gnunet bindings: http://git.savannah.gnu.org/cgit/guix/gnunet.git and the commands to get the code: $ svn co -r 36031 https://gnunet.org/svn/Extractor $ svn co -r 36242 https://gnunet.org/svn/gnunet $ git clone http://git.savannah.gnu.org/cgit/guix/gnunet.git Good afternoon! -- Rémi