|
| 1 | +# Packaging assets |
| 2 | + |
| 3 | +This directory contains helper material for building release bundles of the |
| 4 | +WORR mod. The most important entry point is [`make_bundle.py`](make_bundle.py), |
| 5 | +which assembles binaries, configuration files, and documentation into a |
| 6 | +versioned ZIP archive that follows the ``WORR-vMAJOR.MINOR.PATCH[-pre].zip`` |
| 7 | +convention. |
| 8 | + |
| 9 | +## Quick start |
| 10 | + |
| 11 | +1. Build the project so that the compiled binaries land in `build/bin/` (or any |
| 12 | + directory of your choosing). |
| 13 | +2. Run the bundler: |
| 14 | + |
| 15 | + ```sh |
| 16 | + python tools/pack/make_bundle.py \ |
| 17 | + --binary build/bin \ |
| 18 | + --config tools/pack/rerelease \ |
| 19 | + --doc docs |
| 20 | + ``` |
| 21 | + |
| 22 | + The command creates `tools/pack/dist/WORR-vX.Y.Z[-pre].zip` containing |
| 23 | + platform binaries in `bin/`, packaged configuration content in `config/`, |
| 24 | + the documentation set in `docs/`, and top-level metadata such as `LICENSE`, |
| 25 | + `README.md`, and `VERSION`. |
| 26 | + |
| 27 | +## Options |
| 28 | + |
| 29 | +`make_bundle.py` accepts multiple `--binary`, `--config`, `--doc`, and |
| 30 | +`--extra` flags. Each flag may point to files or directories, allowing you to |
| 31 | +add platform-specific builds or additional resources. `--no-extras` disables the |
| 32 | +default inclusion of `README.md`, `LICENSE`, and `VERSION`. Use `--version` to |
| 33 | +override the version string if you need to stage a release without touching the |
| 34 | +repository's `VERSION` file. |
| 35 | + |
| 36 | +All options are cross-platform and rely on standard Python libraries. The |
| 37 | +resulting archives can be produced from Windows, macOS, or Linux without any |
| 38 | +additional tooling. |
| 39 | + |
| 40 | +## Legacy artifacts |
| 41 | + |
| 42 | +Older Muff Mode packages are kept here for reference. They are not touched by |
| 43 | +the bundler but can be inspected if historical assets are required. New |
| 44 | +releases should always be generated through `make_bundle.py` to ensure the |
| 45 | +expected naming scheme and directory layout. |
0 commit comments