Leo Famulari skribis: > 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? I think this issue is identical to what has been reported a few years ago in bug#33848 (https://issues.guix.gnu.org/33848) which is still open. The binaries created by SBCL store some pathnames as UTF-32 strings, and the reference scanner of Guix doesn't support that, so it misses some references.