mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-11-15 10:46:15 +02:00
eb7d7780b1
This is needed to avoid this https://github.com/mesonbuild/meson/issues/13774 when we go back to making our subproject directory `src`.
18 lines
721 B
Markdown
18 lines
721 B
Markdown
# Garbage Collector Roots
|
|
|
|
The roots of the garbage collector are all store paths to which there
|
|
are symlinks in the directory `prefix/nix/var/nix/gcroots`. For
|
|
instance, the following command makes the path
|
|
`/nix/store/d718ef...-foo` a root of the collector:
|
|
|
|
```console
|
|
$ ln -s /nix/store/d718ef...-foo /nix/var/nix/gcroots/bar
|
|
```
|
|
|
|
That is, after this command, the garbage collector will not remove
|
|
`/nix/store/d718ef...-foo` or any of its dependencies.
|
|
|
|
Subdirectories of `prefix/nix/var/nix/gcroots` are also searched for
|
|
symlinks. Symlinks to non-store paths are followed and searched for
|
|
roots, but symlinks to non-store paths *inside* the paths reached in
|
|
that way are not followed to prevent infinite recursion.
|