about summary refs log tree commit diff
path: root/src/libstore/gc.hh
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2005-02-01T13·48+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2005-02-01T13·48+0000
commit630ae0c9d7f65a2d6bef85a5194b4d704e54eded (patch)
tree1cbb2dce71e58abb4617239857bbd144b1f355c1 /src/libstore/gc.hh
parentdcc37c236c66ba463bd61fec23d046485d8a412f (diff)
* nix-build: use an indirection scheme to make it easier for users to
  get rid of GC roots.  Nix-build places a symlink `result' in the
  current directory.  Previously, removing that symlink would not
  remove the store path being linked to as a GC root.  Now, the GC
  root created by nix-build is actually a symlink in
  `/nix/var/nix/gcroots/auto' to `result'.  So if that symlink is
  removed the GC root automatically becomes invalid (since it can no
  longer be resolved).  The root itself is not automatically removed -
  the garbage collector should delete dangling roots.

Diffstat (limited to 'src/libstore/gc.hh')
-rw-r--r--src/libstore/gc.hh3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libstore/gc.hh b/src/libstore/gc.hh
index 03e1d769153b..e3da4505d5dd 100644
--- a/src/libstore/gc.hh
+++ b/src/libstore/gc.hh
@@ -27,7 +27,8 @@ void addTempRoot(const Path & path);
 void removeTempRoots();
 
 /* Register a permanent GC root. */
-Path addPermRoot(const Path & storePath, const Path & gcRoot);
+Path addPermRoot(const Path & storePath, const Path & gcRoot,
+    bool indirect);
 
 
 #endif /* !__GC_H */