Commit Graph

217 Commits

Author SHA1 Message Date
96ea8fc9b0 client: archlinux: move less from custom build to base build 2026-01-28 15:30:39 -08:00
bbdb53eba5 client: docker-finance.d: archlinux: clarify optional blocks 2026-01-28 15:29:22 -08:00
697763b17e client: lib_docker: return compose error code
Returns code of compose failure or if `run`'s container returns error.
2026-01-28 15:22:21 -08:00
f37e2662f6 client: Dockerfiles: local: dev-tools: bind-mount .gitea
Will allow linter to access files in the .gitea directory.
2026-01-28 11:36:49 -08:00
e2d6330669 client: lib_gen: generate custom plugin layout for all images
Previously only generated for the finance image.
2026-01-28 11:30:10 -08:00
cc3226a5ea client: lib_env: allow non-root system user; print warning
Needed for CI.
2026-01-28 11:16:34 -08:00
fcb5b1fa92 client: lib_docker: up: only allocate pseudo-TTY when needed 2026-01-21 14:25:33 -08:00
7b15588681 client: lib_docker: exec: only allocate pseudo-TTY when needed 2026-01-21 12:36:46 -08:00
592e08efb8 client: lib_docker: dev-tools: use fatal error for invalid build types 2026-01-21 11:34:52 -08:00
af59978202 client: plugins: tor: increase bootstrap wait time 2026-01-21 11:08:28 -08:00
2a0c2610b3 client: plugins: tor: disable interactive pseudo-TTY
Not needed, change required for CI.
2026-01-21 11:08:16 -08:00
9526b1bb23 client: manifest: bump version to v1.1.1 2026-01-15 11:09:10 -08:00
e9aa72c64a client: dev-tools: lib_linter: php-cs-fixer: add given-file(s) init, refactor 2026-01-15 10:57:13 -08:00
0c9cfa07ba client: dev-tools: lib_linter: refactor with lib_docker::exec 2026-01-15 10:32:14 -08:00
76755f1032 client: dev-tools: lib_linter: php-cs-fixer: add init
php-cs-fixer's 3.92 series requires `init` before `fix`ing or `check`ing
2026-01-15 10:19:49 -08:00
3ac9e98d1e client: manifest: bump version to v1.1.0 2026-01-12 12:37:59 -08:00
63a7eb928c client: manifest: update botan2 to botan (botan3)
Updated internally in 8b59cee84c
2026-01-09 15:55:19 -08:00
a3e03880bc client: Dockerfiles: remote: hledger-suite: bump hledger to 1.51.2 2026-01-08 10:25:49 -08:00
4debfda786 client: Dockerfiles: remote: root: bump to 6.38.00-3 2026-01-06 10:52:05 -08:00
550de73651 client: Dockerfiles: remote: hledger-suite: bump hledger-flow to v0.16.2 2026-01-06 10:52:05 -08:00
d130d078ca client: add bitcoin plugin, update custom build deps
Adds bitcoin building plugin and finance image build dependencies.

See the code documentation in this commit for details.
2025-12-18 16:20:38 -08:00
bbf4e0e439 client: Dockerfiles: remote: root: bump to 6.38.00-2 2025-12-18 15:04:47 -08:00
c7fcebfe0b client: Dockerfiles: remote: root: update multi-stage
Parses out build stage into separate build target.
2025-12-10 12:43:53 -08:00
f669c01f97 client: Dockerfiles: remote: hledger-suite: use multi-stage
The previous hledger-suite image was treated as a monolithic development
image that was never intended to be pulled from directly, at least
outside of the `dfi` build system.

hledger-suite has now been parsed out into separate build targets for
faster maintenance and development, with the final production image
being a massively slimmer "placeholder" image for the built binaries.

`hledger-suite:latest` can now be pulled from directly without pulling
the entire build system and related artifacts.
2025-12-10 11:56:43 -08:00
a88dbf5704 client: Dockerfiles: remote: hledger-suite: bump hledger to 1.51.1 2025-12-10 09:35:24 -08:00
5e45f307ad client: Dockerfiles: local: root: package updates
- Prevents system upgrades from using Arch's `root` package
  * Currently, their package does not build with C++20 support

- Updates remote image package artifact location
  * Remote image's build artifact moved from /home/builder to /root

- Uses wildcard for local `root` package version
  * Reduces maintenance since any remote bump should rebuild this module
2025-12-01 14:59:11 -08:00
70be50b0d4 client: Dockerfiles: remote: root: use multi-stage
A single development stage ended up not being needed.

NOTE: `dfi` will still only pull the package artifact from the final image.
2025-12-01 14:58:58 -08:00
8816d5fd17 client: Dockerfiles: remote: root: bump to 6.38.00 2025-12-01 09:24:30 -08:00
221a5f7049 client: docker: add exec wrapper, update completion 2025-11-25 15:51:05 -08:00
0d4b293b2d client/container: root: refactor common namespace
- Factor out respective common from macro and apply to all scopes
  * `dfi::common`
  * `dfi::macro::common`
  * `dfi::plugin::common`

- Add deprecation warnings in `dfi::macro::common`
  * Common functionality (not macro specific) is now in `dfi::common`

- Add convenience wrappers to inner common impl, where appropriate
  * Allows for backwards compatibility

- Add/update/clarify code docs and Doxygen definitions

- Related refactoring

NOTE: all changes are backward compatible (no need to bump major).
2025-11-19 13:23:52 -08:00
31cc320298 client: Dockerfiles: remote: hledger-suite: bump hledger to 1.50.3 2025-11-18 19:13:44 -08:00
8bd51fed65 client: Dockerfiles: remote: root: add PACKAGER to makepkg
When querying with pacman, provides clearer information instead of
"Unknown Packager".
2025-11-13 14:07:53 -08:00
cf3eccd52b client: Dockerfiles: remote: root: remove more GUI opts
These are currently not needed. Improves build time and package size.
2025-11-13 13:52:13 -08:00
8b59cee84c client/container: root: migrate to Botan3
- This is possible now that `dfi`'s ROOT build supports C++20
- No internal `dfi` API or impl changes are necessary
  * This includes any Botan signatures
2025-11-07 13:13:53 -08:00
78ee492c46 client: Dockerfiles: local: root: use evergreencrypto/root image
- Provides C++20 support and a slimmer package (~18% smaller)
- Required for issue #23 (bitcoin-core lib support)
2025-11-06 16:22:40 -08:00
7b67bcf115 client: Dockerfiles: remote: root: add evergreencrypto/root image
Provides C++20 support and a slimmer package (~18% smaller).
2025-11-06 16:22:40 -08:00
3215d3242c client: manifest: bump version to v1.0.0 2025-10-30 16:28:57 -07:00
0266157abe client/container: usage help updates 2025-10-28 12:13:10 -07:00
b130f22318 client: completion: add update command 2025-10-08 13:37:45 -07:00
9eca664dc8 client: docker/lib_docker: add update feature
Simply rebuilds image without cache because modules are built locally
(meaning, there's no "newer version" image of modules to pull against).
2025-10-07 11:46:27 -07:00
5e02aa4825 client: migrate from xsv to xan
`xsv` is no longer maintained and the author recommends `xan` instead.

Fortunately, `xan` is very suitable for our use-case; is very efficient,
and produces no differences in our expected output.
2025-10-03 14:09:34 -07:00
1dafa487ad client: Dockerfiles: remote: hledger-suite: bump hledger to 1.50.2 2025-09-29 11:45:02 -07:00
c7b438aa1b client: dev-tools: lib_linter: fix finding .clang-format
Trailing slash is needed for when client bind-mount is a symlink.
2025-09-19 13:05:45 -07:00
f28a148f5c client: Dockerfiles: remote: hledger-suite: bump hledger to 1.50.1
Also update build process for a successful build and better caching.
2025-09-18 20:52:45 -07:00
6c1b7a0fb1 client: Dockerfiles: remote: hledger-suite: bump hledger-iadd to v1.3.22
Also update build process for a successful build and better caching.

Despite recent releases, hledger-iadd's stack configuration is not
regularly maintained (very out of date). The install documentation is
also very out of date. The maintainer appears to be using cabal for
building.
2025-09-18 20:50:43 -07:00
4c0474ea9f client: Dockerfiles: remote: hledger-suite: bump hledger-flow to v0.16.0
Also update build process for a successful build and better caching.
2025-09-18 20:50:00 -07:00
cc0ec7a112 client: Dockerfiles: remote: hledger-suite: use hledger-flow master tip
As discussed in #216, hledger-flow breaks with the latest hledger
release (1.50).

Until hledger-flow has another release, current master tip appears to be
as stable as v0.15.0 and includes fixes that work with hledger 1.50.
2025-09-05 16:36:50 -07:00
a7289bde16 client: Dockerfiles: remote: hledger-suite: bump hledger to 1.50 2025-09-04 15:14:54 -07:00
5e7453d468 client: lib_linter: specify .clang-format location
This commit allows *custom* C++ plugins to be linted/formatted in the
same way as their repo counterparts (using the same repo rulesets).

Previously, when runing the linter, only *repo* C++ plugins would be
formatted. Since custom plugin formatting for both Bash and PHP are
already in place, this simply extends the feature to C++.
2025-08-19 14:17:42 -07:00
21bb54588c client: manifest: bump version to v1.0.0-rc.3 2025-08-12 12:05:56 -07:00