No description
| modules/actualbudget-report | ||
| .env.example | ||
| .envrc | ||
| .gitignore | ||
| devenv.lock | ||
| devenv.nix | ||
| devenv.yaml | ||
| flake.lock | ||
| flake.nix | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| main.go | ||
| README.md | ||
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=
BUDGET_ENCRYPTION_KEY=
'';
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