aboutsummaryrefslogtreecommitdiff
path: root/src/init.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/init.sh')
-rw-r--r--src/init.sh42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/init.sh b/src/init.sh
new file mode 100644
index 0000000..32aa300
--- /dev/null
+++ b/src/init.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+set -eufCo pipefail
+export SHELLOPTS
+IFS=$'\t\n'
+
+PORT=${PORT:-5000}
+LEDGER_ROOT=${LEDGER_ROOT:-/ledger}
+LEDGER2BEANCOUNT_CONFIG=${LEDGER2BEANCOUNT_CONFIG:-$(cat ~/.ledger2beancount.yaml)}
+ADDITIONAL_CONFIG=${ADDITIONAL_CONFIG:-$(
+ cat <<EOF
+option "operating_currency" "EUR"
+2016-04-14 custom "fava-option" "language" "en"
+2016-04-14 custom "fava-option" "invert-income-liabilities-equity" "true"
+EOF
+)}
+
+echo "${LEDGER2BEANCOUNT_CONFIG}" >|~/.ledger2beancount.yaml
+
+echo "LEDGER2BEANCOUNT_CONFIG"
+cat ~/.ledger2beancount.yaml
+echo
+echo "ADDITIONAL_CONFIG"
+echo "$ADDITIONAL_CONFIG"
+echo
+
+tmp_file=$(mktemp)
+
+while read -r ledger_file; do
+ echo "Processing ${ledger_file}"
+ ledger2beancount -c ~/.ledger2beancount.yaml "$(realpath "${ledger_file}")" >>"${tmp_file}"
+done < <(find "${LEDGER_ROOT}" -type f -name '*.ledger')
+
+bean-check "${tmp_file}"
+
+echo "${ADDITIONAL_CONFIG}" >>"${tmp_file}"
+
+fava \
+ --host 0.0.0.0 \
+ --port "${PORT}" \
+ --read-only \
+ "${tmp_file}"
+rm "${tmp_file}"