forked from EvergreenCrypto/docker-finance
86 lines
4.1 KiB
Bash
86 lines
4.1 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
# docker-finance | modern accounting for the power-user
|
|
#
|
|
# Copyright (C) 2021-2024 Aaron Fiore (Founder, Evergreen Crypto LLC)
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
# docker-finance @DOCKER_FINANCE_VERSION@
|
|
|
|
#
|
|
# Subprofile script
|
|
#
|
|
|
|
[ -z "$DOCKER_FINANCE_CONTAINER_CMD" ] && echo "DOCKER_FINANCE_CONTAINER_CMD not set, check installation" >&2
|
|
|
|
# NOTE: ledger-based commands ending in `\`: the escape is needed so you can add more arguments as needed
|
|
# TODO: remove default 'not:' arguments to `ledger{-ui,-web}` once distributions support hledger 1.34.99-gcf0c7c2ef-20240702 or higher (--conf support)
|
|
|
|
# CLI ledger
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_ledger='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ ledger'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_hledger='@DOCKER_FINANCE_SUBPROFILE@_ledger'
|
|
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_bal='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ ledger bal \
|
|
assets liabilities \
|
|
not:desc:balances\$ not:equity:balances\$ not:archive \
|
|
'
|
|
|
|
# Terminal UI
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_ui='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ ledger-ui -w \
|
|
assets liabilities \
|
|
not:desc:balances\$ not:equity:balances\$ not:archive \
|
|
'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_ledger-ui='@DOCKER_FINANCE_SUBPROFILE@_ui'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_hledger-ui='@DOCKER_FINANCE_SUBPROFILE@_ui'
|
|
|
|
# Terminal UI (visidata)
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_vui='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ ledger-vui'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_ledger-vui='@DOCKER_FINANCE_SUBPROFILE@_vui'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_hledger-vui='@DOCKER_FINANCE_SUBPROFILE@_vui'
|
|
|
|
# Web UI
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_web='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ ledger-web --serve --host=0.0.0.0 --base-url http://127.0.0.1:5000 --allow=view \
|
|
assets liabilities \
|
|
not:desc:balances\$ not:equity:balances\$ not:archive \
|
|
'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_ledger-web='@DOCKER_FINANCE_SUBPROFILE@_web'
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_hledger-web='@DOCKER_FINANCE_SUBPROFILE@_web'
|
|
|
|
# Fetches, imports, generates taxes and reports (using defaults)
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_all='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ all'
|
|
|
|
# Edit configuration files
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_edit='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ edit'
|
|
|
|
# Fetch using remote APIs
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_fetch='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ fetch'
|
|
|
|
# hledger-flow CSV import
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_import='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ import'
|
|
|
|
# Financial metadata viewer
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_meta='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ meta'
|
|
|
|
# Generate financial reports
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_reports='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ reports'
|
|
|
|
# ROOT.cern / Metadata analysis / C++ interpreter
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_root='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ root'
|
|
|
|
# Generate tax reports
|
|
alias @DOCKER_FINANCE_SUBPROFILE@_taxes='$DOCKER_FINANCE_CONTAINER_CMD @DOCKER_FINANCE_PROFILE@/@DOCKER_FINANCE_SUBPROFILE@ taxes'
|
|
|
|
# vim: syn=bash sw=2 sts=2 si ai et
|