locate.nix: write /etc/updatedb.conf
This commit is contained in:
parent
6ac771d917
commit
fc62de2043
@ -43,6 +43,9 @@ in {
|
||||
The format is described in
|
||||
<citerefentry><refentrytitle>systemd.time</refentrytitle>
|
||||
<manvolnum>7</manvolnum></citerefentry>.
|
||||
|
||||
To disable automatic updates, set to <literal>"never"</literal>
|
||||
and run <command>updatedb</command> manually.
|
||||
'';
|
||||
};
|
||||
|
||||
@ -192,6 +195,18 @@ in {
|
||||
{ LOCATE_PATH = cfg.output;
|
||||
};
|
||||
|
||||
environment.etc = {
|
||||
# write /etc/updatedb.conf for manual calls to `updatedb`
|
||||
"updatedb.conf" = {
|
||||
text = ''
|
||||
PRUNEFS="${lib.concatStringsSep " " cfg.pruneFS}"
|
||||
PRUNENAMES="${lib.concatStringsSep " " cfg.pruneNames}"
|
||||
PRUNEPATHS="${lib.concatStringsSep " " cfg.prunePaths}"
|
||||
PRUNE_BIND_MOUNTSFR="${lib.boolToString cfg.pruneBindMounts}"
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
warnings = optional (isMLocate && cfg.localuser != null) "mlocate does not support the services.locate.localuser option; updatedb will run as root. (Silence with services.locate.localuser = null.)"
|
||||
++ optional (isFindutils && cfg.pruneNames != []) "findutils locate does not support pruning by directory component"
|
||||
++ optional (isFindutils && cfg.pruneBindMounts) "findutils locate does not support skipping bind mounts";
|
||||
@ -238,7 +253,7 @@ in {
|
||||
serviceConfig.ReadWritePaths = dirOf cfg.output;
|
||||
};
|
||||
|
||||
systemd.timers.update-locatedb =
|
||||
systemd.timers.update-locatedb = mkIf (cfg.interval != "never")
|
||||
{ description = "Update timer for locate database";
|
||||
partOf = [ "update-locatedb.service" ];
|
||||
wantedBy = [ "timers.target" ];
|
||||
|
Loading…
Reference in New Issue
Block a user