From 2e6bf723e4d63d661d26443a4477a040a96c7257 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 1 Feb 2005 20:53:14 +0000 Subject: [PATCH] * Added a global configuration file (/nix/etc/nix/nix.conf). It contains options for the garbage collector right now, but other stuff can be added here later. --- Makefile.am | 8 +++++++- nix.conf.example | 30 ++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 nix.conf.example diff --git a/Makefile.am b/Makefile.am index 7e386f84c..f50351b05 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,6 @@ SUBDIRS = externals src scripts corepkgs doc misc tests -EXTRA_DIST = substitute.mk nix.spec nix.spec.in bootstrap.sh svn-revision +EXTRA_DIST = substitute.mk nix.spec nix.spec.in bootstrap.sh \ + svn-revision nix.conf.example include ./substitute.mk @@ -12,6 +13,11 @@ relname: echo -n $(distdir) > relname install-data-local: init-state + $(INSTALL) -d $(DESTDIR)$(sysconfdir)/nix + $(INSTALL_DATA) nix.conf.example $(DESTDIR)$(sysconfdir)/nix + if ! test -e $(DESTDIR)$(sysconfdir)/nix/nix.conf; then \ + $(INSTALL_DATA) nix.conf.example $(DESTDIR)$(sysconfdir)/nix/nix.conf; \ + fi if INIT_STATE if SETUID_HACK diff --git a/nix.conf.example b/nix.conf.example new file mode 100644 index 000000000..1af5df952 --- /dev/null +++ b/nix.conf.example @@ -0,0 +1,30 @@ +### Option `gc-keep-outputs' +# +# If `true', the garbage collector will keep the outputs of +# non-garbage derivations. If `false' (default), outputs will be +# deleted unless they are GC roots themselves (or reachable from other +# roots). +# +# In general, outputs must be registered as roots separately. +# However, even if the output of a derivation is registered as a root, +# the collector will still delete store paths that are used only a +# build time (e.g., the C compiler, or source tarballs downloaded from +# the network). To prevent it from doing so, set this option to +# `true'. +gc-keep-outputs = false + + +### Option `gc-keep-derivations' +# +# If `true' (default), the garbage collector will keep the derivations +# from which non-garbage store paths were built. If `false', they +# will be deleted unless explicitly registered as a root (or reachable +# from other roots). +# +# Keeping derivation around is useful for querying and traceability +# (e.g., it allows you to ask with what dependencies or options a +# store path was built), so by default this option is on. Turn it off +# to safe a bit of disk space (or a lot if `gc-keep-outputs' is also +# turned on). +gc-keep-derivations = true +