home/git: preexec maintenance with repo discovery script
This commit is contained in:
@ -333,6 +333,35 @@ in
|
||||
})
|
||||
];
|
||||
|
||||
systemd.user.services."git-maintenance@".Service = lib.mkIf cfg.maintenance.enable {
|
||||
ExecStartPre = let
|
||||
repoDirs = lib.escapeShellArgs [
|
||||
"${config.home.homeDirectory}/git"
|
||||
"${config.home.homeDirectory}/work"
|
||||
"${config.home.homeDirectory}/pvv"
|
||||
];
|
||||
|
||||
script = pkgs.writeShellApplication {
|
||||
name = "discover-git-maintenance-repos";
|
||||
text = ''
|
||||
{
|
||||
echo "[maintenance]"
|
||||
for repoLocation in ${repoDirs}; do
|
||||
for repo in "$repoLocation"/*/.git; do
|
||||
echo "repo = $(realpath "''${repo%"/.git"}")"
|
||||
done
|
||||
done
|
||||
} > "$1"
|
||||
'';
|
||||
};
|
||||
in "${lib.getExe script} %t/maintenance-repos";
|
||||
|
||||
ExecStart = lib.mkForce ''
|
||||
"${lib.getExe cfg.package}" -c include.path="%t/maintenance-repos" for-each-repo --keep-going --config=maintenance.repo maintenance run --schedule=%i
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
home.packages = [
|
||||
(pkgs.writeShellApplication {
|
||||
name = "git-tcommit";
|
||||
|
@ -18,11 +18,5 @@
|
||||
"microbel pvv-users pvv-mail".proxyJump = "tsuki-ws";
|
||||
};
|
||||
|
||||
sops.secrets."git/nordicsemi-maintenance-repos-config" = { };
|
||||
|
||||
programs.git.includes = [
|
||||
{ path = config.sops.secrets."git/nordicsemi-maintenance-repos-config".path; }
|
||||
];
|
||||
|
||||
programs.waybar.settings.mainBar.output = [ "DP-1" ];
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
git:
|
||||
nordicsemi-config: ENC[AES256_GCM,data:ziuM41RTsxkiutxjj8Pl5YuoETkxQNWEbGKd2Y99E0kTV9fL67g+YeGjeVFXErraeB/+jBVpjitK3lSHxlpxZLWckZ0G6A7NAFNagY9cORCFlLb+egyKb44xu8vBt4V5eA==,iv:yG06oluENc038cm5A9tpmSQtaGjd6nYDi/FnBd3A8Rk=,tag:ky6bCsYLOZmWObHnJ816Zw==,type:str]
|
||||
nordicsemi-maintenance-repos-config: ENC[AES256_GCM,data:oZ5hgpJj6ENM4S360Zo7SKGbZCDlBZ2NMJ/xRw7MUUvrFcvNSmhSf+WjjJbh+IXr2J82g92guI4Gw/1sOwyfmDfTo0cmKAGY1ZXIjHgSfpdufyl+sGWhpVG+fxmcqQTuiWYkCdLE3Rr+JoTCQ9f8N54uYJHU9X3MeFyrZjaPQA6tFDT8EIq35HifptN1uFEQyKxwaN9iKRyFEI3C9i6mvLYW6XuYYK+oirPgCecaMB3aVZotsMcLnO9C51N2hKKGdkx/JT/jqqAJ4IYUExDNTnBxvgKCrEldaqRGqi9F/3iPVuNSKCUG0uefG3010OhiwnU8WrXblw9jHSHkZ5crIhC2S/y9fzvA+ZuJUctan+GuoIG7VbqdLy0Jz2FXGDs6qNQX6/I0Eud7ajvIHAz+Zp/lVF8U91BwzY2dXLdEKK+KRHtT5gXWXPQHO3HEBlYjxVsMf0V/1WGuUeAQMu46q7YRuRuwuBNVFj2QkRKJo8TX8vXeWrdpzR6qQ4RynioUmI+GLZY=,iv:1wEwje63Ui6aKVq0yNtVsODmWe0kYkBt3pbp/RKqr/s=,tag:Ujhi6tRNphbPtFUL5m8jpw==,type:str]
|
||||
nordicsemi:
|
||||
envvars: ENC[AES256_GCM,data:6vx077unPWt6WRy0oZKC3qpVA8BKigYDdhsZ2rmLYFtzW//01CrRgXX420UB,iv:e2hJuRj4A8ZBGG0j2YINdvM3IXzpCnJK0Sm5AXhOTZM=,tag:9SdpNIFSiLhI073dk3cC5g==,type:str]
|
||||
ssh:
|
||||
@ -29,8 +28,8 @@ sops:
|
||||
UDBQRkFtTzYveU9Cc3dYVjQyMVJQUjgKu2zXnw1OCUPW/4/colAqdzU4TUAHZqFd
|
||||
s4n79dNnTxp4AnhN3UWpN6kUWIOkezVqXPFAz+bQcglZOm6gmBEJow==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-10-07T23:05:27Z"
|
||||
mac: ENC[AES256_GCM,data:0EgnvPIiDHfE6YYVISwMdYycXUXRkvJLpi5llNF5HMCUMQNFIPemb4OkPbcZhP0HkZCRQC6pFhTXWMU9NbxpTmDWHV0+pNrlkX4PiRKjCJ7Yqq9dNkJzCfq7091ZYYCH9UrgKIyi6+/6jGANI1sq+QuEyZFVPYMnaeSVo+ntqVE=,iv:pJogp+pCfkDaTGh/Qy+GDcELw35Q4Sa8iMKU4JfGCRk=,tag:JGpN4HymcHpJS47fGx6cjg==,type:str]
|
||||
lastmodified: "2025-04-28T08:30:45Z"
|
||||
mac: ENC[AES256_GCM,data:jPjNTuXKuONVKbMeb2/DtklT6OxORn0UdjWYTmcryn1qaAaTHD+gr2sPSWNRlZe3o3tugTCOlpeAbTDnyQmy60zzXJV/PGLWdW5XcnECkt7Eutop/25sPuVAkrJcCY8hRkqUv0Jk7HOAukHKJr8EIU4Op2nYjvIlyULgCmYAZ5o=,iv:x/MHOazISB0T15vpiClpLgVPMPfpevRo9fMwurQXVI8=,tag:6i8wAN1SKGWfTesPblhaFQ==,type:str]
|
||||
pgp:
|
||||
- created_at: "2025-04-02T10:09:10Z"
|
||||
enc: |-
|
||||
@ -53,4 +52,4 @@ sops:
|
||||
-----END PGP MESSAGE-----
|
||||
fp: F7D37890228A907440E1FD4846B9228E814A2AAC
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
version: 3.9.4
|
||||
|
Reference in New Issue
Block a user