Hi :)

On 2018-11-01 11:21, Pjotr Prins wrote:
On Thu, Nov 01, 2018 at 10:44:19AM +0100, swedebugia wrote:
   Also to help us to associate new and existing packages with
   wikidata-entries we could devise a guile-programmed way to associate
   wikidata-entries to existing package objects and perhaps use this to
   populate new package-recipes created with guix import

   Guix would then be the first package manager to both be completely free
   of proprietary software and to leverage knowledge from Wikidata and WP.

   What do you think?
Absolutely the way forward. Totally excited you want to run with this!

Wikidata is linked data and dry and by using it we can share between
distros and software building projects (conda, easybuild etc.). It
scales because the software maintainers themselves will be encouraged
to update project information - such as a reference to a mailing list
- which is the only way to really keep up-to-date in a scalable way.
Wikipedia will use that information too. Wikidata is DRY.

First I did not understand DRY. Found https://en.wikipedia.org/wiki/Don't_repeat_yourself

Agreed, it would be nice if changes to Wikidata would be driven by the authors of the programs and shared with leaf nodes (package managers, etc.)

People don't realise it, but in science to find the right tools for
the job is often a challenge. Wikidata will help us create sections
for tools that address certain tasks. For example variant calling in
sequencing data. I and others here have a direct stake in solving this
problem. This meta-information does not belong in Guix, so we need a
place to handle it. 
I agree. Though it would be good to find a way to keep queries to wikidata to a minimum. Caching maybe.
When you have a proof-of-concept we can even
consider writing a paper about it.
Eh, unfortunately my guile and guix fu is not really anything to brag about, yet ;-). I am reading up on guile and trying to understand the code in guix.

Right now my skill level is at


This wikidata endeavor would likely take some time for me to accomplish with a good mentor.

First up is deciding whether the core procedures interacting with wikidata should be in guix or as a separate module. I suggest separate module.

Then writing client procedures to interface with the SPARQL API in wikidata. This has already been done in python 3 (beta) see https://github.com/dahlia/wikidata gplv3+

We could piggyback on this client (essentially making guix dependent on python :/) or better yet contribute to one of the existing guile sql libraries:

The last one looks most promising but I did not look at the code yet.

Will you join our Guix event at FOSDEM? This would be an interesting
working group. 
Thanks for the invitation. I will think about it.

I look forward to hone my guile and guix skills :)
Cheers
Swedebugia