- Rust 91.6%
- Just 3.9%
- Nix 2.6%
- Dockerfile 1.7%
- Shell 0.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .config | ||
| .local/bin | ||
| docs/wit | ||
| LICENSES | ||
| src | ||
| .editorconfig | ||
| .envrc | ||
| .gitignore | ||
| .prettierignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| DCO.md | ||
| flake.lock | ||
| flake.nix | ||
| Justfile | ||
| README.md | ||
| REUSE.toml | ||
| rust-toolchain.toml | ||
mfgames-culture
A CLI for working with various culture libraries.
Configuration
Configuration is supplied with one or more YAML files using the global --config option. Files are merged in the order supplied, so later files override earlier files. Environment variables with the MFGAMES_CULTURE_ prefix are merged after YAML files; nested keys use __.
The configuration currently contains a modules list. Each module has a single url property:
modules:
- url: file:modules/calendar
- url: file:///opt/mfgames/modules/gregorian
- url: https://example.com/mfgames/module
A file:path URL is resolved as a relative path from the directory containing the last configuration file. A file://... URL is resolved as an absolute filesystem URL. Both local forms must point to an existing filesystem entry. Existing files and directories are accepted.
Other valid URL schemes are preserved and are not checked against the local filesystem. Invalid URLs and missing local paths cause configuration loading to fail before the command runs.
For example:
mfgames-culture --config config.yaml calendar test
The environment representation of a module URL uses Figment's nested separator. For example, MFGAMES_CULTURE_MODULES__0__URL overrides the URL of the first module.