diff --git a/home/programs/git/default.nix b/home/programs/git/default.nix index 26687a3..d9ed407 100644 --- a/home/programs/git/default.nix +++ b/home/programs/git/default.nix @@ -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"; diff --git a/hosts/dosei/home/default.nix b/hosts/dosei/home/default.nix index 4c71285..6f9a870 100644 --- a/hosts/dosei/home/default.nix +++ b/hosts/dosei/home/default.nix @@ -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" ]; } diff --git a/secrets/home.yaml b/secrets/home.yaml index f5662dd..928498d 100644 --- a/secrets/home.yaml +++ b/secrets/home.yaml @@ -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