feat(teal): Add fava-web

Fava-web is a simple solution for accounting based on 'beancount' (a
text-based accounting system).

Previously we attempted to use frappe, but found it was overly-complex,
so something with simpler concepts that was more geared towards a
smaller use-case was at the top of our goals.

The fact that I have used beancount before also helped.

We've secured this behind our tailnet, as generally we trust anyone who
can access teal through the tailnet.

Change-Id: I0db2ee0bd98cb7560ca26d303396e179fcb0f283
Reviewed-on: https://git.clicks.codes/c/Infra/NixFiles/+/787
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Skyler Grey <minion@clicks.codes>
3 files changed
tree: b37b99f781073239bf1cca1b9a5b448a0667dbf5
  1. .reuse/
  2. .vscode/
  3. lib/
  4. LICENSES/
  5. modules/
  6. overlays/
  7. shells/
  8. systems/
  9. .editorconfig
  10. .envrc
  11. .gitignore
  12. .gitreview
  13. .gitreview.license
  14. .sops.nix
  15. configure.sh
  16. CONTRIBUTORS.md
  17. flake.lock
  18. flake.lock.license
  19. flake.nix
  20. README.md
README.md

Clicks - Infrastructure

This repository contains system configuration for Clicks's infrastructure.

Config

Config is written using Snowfall lib. It keeps us organized and has some nice features like namespaces.

Systems

Devices are named after colors, areas are named as a letter, with the matching phonetic alphabet word. Areas are generally managed by one member of Clicks, who has full access to all of the servers in that area. If you require help for a specific area you can email admin@clicks.codes and in the subject line include the area you want help for.

SystemDescriptionAddress
tealPrimary Hostteal.alpha.clicks.domains
a1d2Build Serverd2.a1.clicks.domains

Deploying

Deploys are done with deploy-rs, you'll need to be able to ssh into a machine with its hostname (either by a nifty .ssh/config rule or tailscale).

Once you've done that, you'll be able to deploy with

$ deploy .#MACHINE_NAME