My Guix contribution journal - 0x02
Introduction
It is been a while since I got time to contribute. In this entry, I will report about some progress that I got about two months ago.
Docker
I succeeded to skip the failing test that I commented in my last journal entry.
The problem was in the parameter BUILDFLAGS in the unit test file that referenced libsystemd.
A simple substitution, as shown below, fixes the problem.
(substitute* "hack/test/unit"
(("BUILDFLAGS=.*")
(string-append "BUILDFLAGS=(-tags 'netgo')\n")))
I then reported my progress to the related issue. After some days, Hellseher replied to me and suggested that I collaborate on codesberg, the new git web instance used by Guix’s community.
Hellseher also suggested to ‘devendor’ Docker.
Some Golang projects, such as Docker, store all dependencies in a folder called vendor.
This folder “hides” the dependencies from the Guix package system, so it is a good practice to remove this
folder and declare all dependencies as inputs in the packages’s recipe.
The problem is that Docker contains a lot of dependencies, so it is a lot of work to devendor it. I intend to start adding these dependecies in the next week.