Hello! Pierre Neidhardt <m...@ambrevar.xyz> skribis:
> I'm in the process of packaging IPFS. > It has about 100 dependencies, most of which are currently missing in > Guix, so that's gonna take me some hours :p FWIW Pierre-Antoine (who was working with me as an intern on Guix-HPC) has given me the last revision of the gopkg importer, which I’m planning to include soon. It might be useful to you! > - IPFS is rather peculiar about its dependency versions. > If I package all those dependencies in Guix, I should use the same > versions. But then we should make sure that no one is going to update > those packages independently, which would break the strict versioning of > IPFS. This seems to be the same for all Go packages: they specify the exact commit of each of their dependencies, AIUI. In practice it may be that upgrading will often be fine, but it does mean that every time we upgrade a Go package, we have to build everything “guix refresh -l GO-PACKAGE” reports to make sure. > - gx retrieves the deps over IPFS: how important is this? Should we do > the same? What about using "gx"? We could also implement a new > "gx-fetch" method fully written in Guile. In Guix dependencies are listed statically in the ‘inputs’ fields, so I suppose we have to run it once to retrieve that list and then “encode” it as ‘inputs’, no? HTH, Ludo’.