feat(servers): add subtitle cleaning script job
All checks were successful
Discord / discord commits (push) Successful in 35s

This commit is contained in:
matt1432 2024-03-24 22:13:02 -04:00
parent 3f121e0259
commit f47047a58e
2 changed files with 53 additions and 0 deletions

View file

@ -13,6 +13,7 @@ in {
./modules/mergerfs.nix
./modules/qbittorrent
./modules/snapraid.nix
./modules/subtitles/sub-clean.nix
];
vars = {

View file

@ -0,0 +1,52 @@
{
config,
pkgs,
...
}: let
inherit (config.vars) mainUser;
scriptSrc = pkgs.fetchFromGitHub {
owner = "brianspilner01";
repo = "media-server-scripts";
rev = "00d9efcd37bb2667d23d7747240b59291cde64d3";
hash = "sha256-Qql6Z+smU8vEJaai0POjdMnYpET9ak4NddNQevEQ8Ds=";
};
script = pkgs.concatTextFile {
name = "sub-clean.sh";
files = ["${scriptSrc}/sub-clean.sh"];
executable = true;
};
in {
systemd = {
services.sub-clean = {
serviceConfig = {
Type = "oneshot";
User = mainUser;
Group = config.users.users.${mainUser}.group;
};
path = with pkgs; [
findutils
(writeShellApplication {
name = "sub-clean";
runtimeInputs = [findutils gnugrep gawk];
text = ''
exec ${script} "$@"
'';
})
];
script = ''
find /data/anime -name '*.srt' -exec sub-clean "{}" \;
find /data/movies -name '*.srt' -exec sub-clean "{}" \;
find /data/tv -name '*.srt' -exec sub-clean "{}" \;
'';
};
timers.sub-clean = {
wantedBy = ["timers.target"];
partOf = ["sub-clean.service"];
timerConfig.OnCalendar = ["0:00:00"];
};
};
}