From e1bcbc32389a0985b198cbf9ba7cec98deee5f19 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Wed, 1 May 2024 07:21:51 -1000 Subject: [PATCH] ;doc: restart Developer FAQ --- doc/DEVFAQ.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++ doc/dev.md | 5 +++-- 2 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 doc/DEVFAQ.md diff --git a/doc/DEVFAQ.md b/doc/DEVFAQ.md new file mode 100644 index 000000000..cfc43c278 --- /dev/null +++ b/doc/DEVFAQ.md @@ -0,0 +1,53 @@ +# Developer FAQ + + + +This is just getting started. It will absorb some of the other [Developer docs](dev.md). + +## Developing hledger + +### How do I get/build the hledger source ? + +```cli +$ git clone https://github.com/simonmichael/hledger +$ stack build +``` +You can specify `hledger`, `hledger-ui` or `hledger-web` as an argument to build just that executable. +Please see [Install > Build from source](install.md#build-from-source) for more details and other build methods. + +### What other repos are there ? + +There are three official repos: +- - the main hledger repo, for hledger, hledger-ui and hledger-web. Shortcut url: +- - the hledger.org website +- - the hledger project's financial ledger + +And third-party add-ons and tools (hledger-iadd, hledger-utils, full fledged hledger, hledger-flow, etc.) have their own repos. + +### How do I run a build in place ? + +After building with stack, +```cli +$ stack exec -- hledger [ARGS] # or hledger-ui, hledger-web +``` + +Or after building with cabal, +```cli +$ cabal exec -- hledger [ARGS] +``` + +### How do I install a build in $PATH ? + +```cli +$ stack install +``` +This installs the hledger executables to `~/.local/bin`. You should have this directory configured in $PATH. +Or you can install to another directory with `--local-bin-path`. +It builds the executables first if needed; see [Install > Build from source](install.md#build-from-source) for more about building. +You can specify `hledger`, `hledger-ui` or `hledger-web` as an argument to build/install just that executable. + +If you use cabal, it has a similar command; the argument is required. +It will install executables to `~/.cabal/bin`: +```cli +$ cabal install all:exes +``` diff --git a/doc/dev.md b/doc/dev.md index 0ea692682..cac3d9298 100644 --- a/doc/dev.md +++ b/doc/dev.md @@ -7,7 +7,9 @@ workflows of the hledger project - "the machine that makes the machine". These mostly are kept in doc/ in the main hledger repo, and then symlinked into the hledger_site repo for rendering on hledger.org. -- [README](dev-README.md) +- [Contributor Quick Start](CONTRIBUTING.md) +- [Developer FAQ](DEVFAQ.md) +- [Project README](dev-README.md) - [ROADMAP](ROADMAP.md) - [ACHIEVEMENTS](ACHIEVEMENTS.md) @@ -16,7 +18,6 @@ and then symlinked into the hledger_site repo for rendering on hledger.org. - [CLIMATE](CLIMATE.md) - [CODE](CODE.md) - [COMMITS](COMMITS.md) -- [CONTRIBUTING](CONTRIBUTING.md) - [CREDITS](CREDITS.md) - [DECISIONS](DECISIONS.md) - [DEVWORKFLOWS](DEVWORKFLOWS.md)