home/direnv: add auto prune timer
This commit is contained in:
parent
dfc0a3728d
commit
2f59d3d2bf
|
@ -11,7 +11,7 @@ in {
|
||||||
|
|
||||||
./programs/atuin.nix
|
./programs/atuin.nix
|
||||||
./programs/comma.nix
|
./programs/comma.nix
|
||||||
./programs/direnv.nix
|
./programs/direnv
|
||||||
./programs/gdb.nix
|
./programs/gdb.nix
|
||||||
./programs/gh.nix
|
./programs/gh.nix
|
||||||
./programs/git
|
./programs/git
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
cfg = config.programs.direnv;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
config = {
|
||||||
|
systemd.user.services.prune-allowed-direnv-dirs = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Prune unused allowed directories for direnv";
|
||||||
|
Documentation = [ "man:direnv(1)" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
Service = {
|
||||||
|
Type = "oneshot";
|
||||||
|
CPUSchedulingPolicy = "idle";
|
||||||
|
IOSchedulingClass = "idle";
|
||||||
|
ExecStart = "${lib.getExe cfg.package} prune";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.timers.prune-allowed-direnv-dirs = {
|
||||||
|
Unit = {
|
||||||
|
Description = "Prune unused allowed directories for direnv";
|
||||||
|
Documentation = [ "man:direnv(1)" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
Timer = {
|
||||||
|
Unit = "prune-allowed-direnv-dirs.service";
|
||||||
|
OnCalendar = "daily";
|
||||||
|
Persistent = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
Install = {
|
||||||
|
WantedBy = [ "timers.target" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,5 +1,9 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
./auto-prune.nix
|
||||||
|
];
|
||||||
|
|
||||||
programs.direnv = {
|
programs.direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
Loading…
Reference in New Issue