Subject: bug#47201: sbcl-cl-webkit doesn't protect webkitgtk from garbage collection

From: Leo Famulari <[email-masked]>
Date: Tue, 16 Mar 2021 19:54:02 -0400

On Tue, Mar 16, 2021 at 11:40:05PM +0000, pkill9 wrote:
> I have nyxt installed, which has sbcl-cl-webkit as an input, which has
> webkitgtk as an input, and recently it produced an error which was
> fixed by building webkitgtk, so it wasn't in the store.
> 
> sbcl-cl-webkit won't be deleted by `guix gc`, however webkitgtk will
> be, so it seems it's not protected from garbage collection by
> sbcl-cl-webkit. Am I wrong in this?

You can check on this with the `guix gc` tool.

Specifically, like this:

$ guix gc --references $(guix build sbcl-cl-webkit)

That will show you the "store references" of the built sbcl-cl-webkit
package. These store references are strings that refer to files in
/gnu/store, found by scanning the result of building sbcl-cl-webkit. 

These references are recorded in the Guix database at
'/var/guix/db/db.sqlite'.

The built package must keep references to its runtime dependencies, or
they will be subject to garbage collection, and that would represent a
bug in the package definition.

Does that make sense?