Mark H Weaver <m...@netris.org> writes:
... > On my GuixSD system where substitutes are completely disabled and I > build everything locally, I've been running my Guix daemon with both > --gc-keep-derivations=yes and --gc-keep-outputs=yes for years. Here's > the relevant excerpt of my OS config: > > (services (cons* <... my custom services here ...> > (modify-services (remove (lambda (svc) > (eq? (service-kind svc) > wicd-service-type)) > %base-services) > (guix-service-type > config => > (guix-configuration > (inherit config) > (use-substitutes? #f) > (authorized-keys '()) > (substitute-urls '()) > (extra-options '("--gc-keep-derivations=yes" > "--gc-keep-outputs=yes"))))))) > > This configuration allows me to run "guix gc" without losing the > dependencies that are needed to build the packages that are currently > protected by GC roots, e.g. the packages in my profiles and system > generations. It's not perfect: I lose a few packages apparently related > to grafts, but it's not too much in practice, and I can manually add > more GC roots to handle those cases. > > Contrary to what Pierre wrote above, I've found that the use of these > flags certainly does _not_ lead to an ever-growing store. On my GNOME 3 > GuixSD system, my store requires ~30 gigabytes, and as long as I trim my > older profiles and system generations regularly, the space requirements > are fairly stable over time. > > Regards, > Mark Hi Mark, I switched to this approach. It works great and I see similar results. Thanks again for posting it. - George