Hi Chris, On Sun, 31 May 2020 at 23:04, Chris Marusich <cmmarus...@gmail.com> wrote:
> Anyway, the point is: you begin with a previous image. The previous > image already has these store paths from the previous installation of > Guix. Therefore, they exist on the previous layer. Because they exist > on the previous layer, they cannot be removed from the Docker image, and > they are carried forward in that previous layer, to all new images. > Regardless of any changes to guix-daemon we might make, the way in which > you build your images will cause them to grow by hundreds of megabytes > every day. I agree that the core of the issue is the Docker layers filesystem. And it cannot be fixed on the Guix side. Therefore, even it is *bad* and dangerous, what about --8<---------------cut here---------------start------------->8--- root@guix /# guix gc root@guix /# guix gc --list-dead | xargs rm -rf root@guix /# exit $ docker stop $ docker commit $ docker export $ID | docker import - guix-new > --8<---------------cut here---------------end--------------->8--- ? Well, it cannot be recommended because it is dangerous. But it somehow bypasses the guix-daemon and "hard-removes" the items and then, as Vincent suggested, 'docker export | docker import' flattens the layers so the dead items are then really gone in the new Docker image. And I have shown [1], "guix gc+export/import" does not lead to an image where the dead items are gone, I have not mistaken. [1] http://issues.guix.gnu.org/41607#6 WDYT? Cheers, simon