# LavinMQ Alpine Package Builds LavinMQ from the upstream source release for `x86_64` and packages the OpenRC service plus `/etc/lavinmq` defaults. The locked Shards dependencies and frontend assets are versioned, checksummed source inputs, so the build does not need network access. Build command: ```sh make ``` LavinMQ 2.10.1 requires Crystal 1.21.0 or newer. The package uses Alpine edge's native Crystal package, avoiding a glibc toolchain in the Alpine musl build. ## Runtime Layout Installs: - `lavinmq` - `lavinmqctl` - `lavinmqperf` - `/etc/lavinmq/lavinmq.ini` - `/var/lib/lavinmq` Default ports: - `5672`: AMQP - `15672`: management UI ## OpenRC Usage ```sh apk add lavinmq lavinmq-doc lavinmq-openrc rc-update add lavinmq default rc-service lavinmq start ``` Install daily rotation for the OpenRC service log, retaining 14 compressed archives: ```sh apk add lavinmq-logrotate ``` Wrapper settings in `/etc/conf.d/lavinmq`: - `LAVINMQ_CONFIG`: config file path passed with `--config` - `LAVINMQ_DATA_DIR`: data directory passed with `-D` - `LAVINMQ_OPTS`: extra LavinMQ arguments appended after package defaults ## Updating LavinMQ 1. In `APKBUILD`, set `pkgver` to the new upstream version and reset `pkgrel` to `0`. 2. Generate the versioned, locked Shards and frontend-asset archives: ```sh ALPINE_PACKAGE=lavinmq mise run apk:update-generated ``` The hook uses the upstream `shard.lock` and `Makefile`, so it also refreshes the bundled inputs when either dependency list changes. 3. From the repository root, refresh checksums and build the package: ```sh ALPINE_PACKAGE=lavinmq mise run apk:checksum ALPINE_PACKAGE=lavinmq mise run apk:build ``` ## Package Commands Refresh checksums: ```sh ALPINE_PACKAGE=lavinmq mise run apk:checksum ``` Build: ```sh ALPINE_PACKAGE=lavinmq mise run apk:build ``` Install-test local build: ```sh ALPINE_PACKAGE=lavinmq SKIP_BUILD=1 mise run apk:test-install ``` Install-test published repository: ```sh ALPINE_PACKAGE=lavinmq \ SKIP_BUILD=1 \ ALPINE_REPOSITORY_URL=https://code.factoring.digital/api/packages/public/alpine/v3.24/alpine-packages \ ALPINE_REPOSITORY_KEY_URL=https://code.factoring.digital/api/packages/public/alpine/key \ mise run apk:test-install ```