actualbudget-report/README.md
2025-12-26 17:23:31 -05:00

1.3 KiB

A simple Go service to generate and email reports on a schedule.

Dependencies

This depends on https://github.com/jhonderson/actual-http-api to provide the API. Setup instructions can be found on that repo.

Installation (NixOS)

If you're using NixOS we provide a simple flake module:

inputs.actualbudget-report.url = "git+https://git.wanderingcrow.net/TheWanderingCrow/actualbudget-report";

Then in your configuration (using sops-nix, you will need to adjust it if you use agenix or alternatives):

nixpkgs.overlays = [ inputs.actualbudget-report.overlays.default ];

imports = [
    inputs.actualbudget-report.nixosModules.default;
];

# Fill out all the following environment variables for the service
sops.templates."actualbudget-report-env".content = ''
    BASE_URL=
    API_KEY=
    SYNC_ID=
    SMTP_USERNAME=
    SMTP_PASSWORD=
    SMTP_HOST=
    SMTP_RECIPIENTS=
'';

services.actualbudget-report = {
    enable = true;
    interval = "Mon-Fri 12:00:00";
    environmentFile = config.sops.templates."actualbudget-report-env".path;
};

Development

If you are on NixOS and have devenv installed, devenv up -d will spin up the mailpit instance and devenv shell will give you tools. If you do not have devenv it is provided in the devShell output at nix shell