Hi Guixs, this is actually a feature wish. I tried to use guix to manage many of my softwares on my system, but some dependencies are missing which is blocking a full transition to Guix based system and development environment. Most notably is GPU computing support.
My daily routine is doing machine learning, which requires GPU for computing nowadays. Currently I need to use CUDA from NVidia, as many of you might know, it's not free software, not even an open source software. However, it's the de fato toolchain in deep learning community, so basically it's a must have dependency for most of the related libraries if you want decent performance. Time passes and hardwork have been done, now we have some libraries ported to OpenCL or HIP (from AMD), it's not mature yet but I think we have a pretty good shot at working them out in near future. However, I wanted to manage all of these with guix so that we can have a unified dependency tree. Currently there are a few options for OpenCL runtime. Namely, beignet, neo from Intel, ROCm stack from AMD, the POCL project and the implementation in mesa. I tried to package beignet (an old OpenCL runtime from Intel) but it wasn't successful due to failed tests (it failed from recognizing device). https://github.com/trivialfis/guixpkgs/blob/master/opencl.scm To support GPU computing, we need a full stack of softwares, from kernel to user space libraries. When it comes to low level part I got have litte to no knowledge, so I am hoping someone here can provide some help/insight for having GPU computing libraries in Guix. Thanks.