(name . guix-patches)(address . guix-patches@gnu.org)
Hi Guix, for a while now I have been using a service I wrote that allows you to run portable binaries, such as AppImages, which expect to be run on distros that respect the filesystem hierarchy standard i.e store required libraries in /usr, /lib, etc, which is most distros.
I think it could be a valuable tool to have in Guix, as it allows you to run software that hasn't yet been packaged in Guix that is distributed as binaries by the author. Also, if builds are failing in Guix, it's useful to have the alternative - for example, calibre currently can't be built due to build failure of a dependency (qtwebkit), so I use the Calibre tar bundle distributed by the website for now.
This still requires some work before it's ready for inclusion in Guix - decisions on how it's implemented need to be made, and the code needs cleanup. But if I don't submit it in it's imperfect state, i won't get anything done on it.
I've done a little writeup on how it works here: http://miha.info/2019/June/24/guix-fhs-service
I've attached a patch for it. To build a guix system with it, add to the guix system services:
(service fhs-binaries-compatibility-service-type
(fhs-configuration
(lib-packages <list of package objects to provide libraries for the binaries>)
(additional-special-files <more special files to add>)
(additional-profile-packages <packages to add to system profile>)))
The additional-special-files and additional-profile-packages are functionally exactly the same as using special-files-service-type and profile-service-type separately, it's purely for organising the config so the admin knows why those special files and profile packages were added.