2026/10 (#14)
Build Alpine Packages / preflight (push) Successful in 4s
Build Alpine Packages / build (greptimedb) (push) Successful in 4s
Build Alpine Packages / build (gitea) (push) Successful in 53s
Build Alpine Packages / build (seaweedfs) (push) Successful in 4s
Build Alpine Packages / build (lavinmq) (push) Successful in 2m20s
Build Alpine Packages / verify-and-publish (push) Successful in 42s

Co-authored-by: Joachim Schlöffel <me@joachim-schloeffel.com>
Reviewed-on: #14
This commit was merged in pull request #14.
This commit is contained in:
2026-10-05 20:23:33 +02:00
co-authored by Joachim Schlöffel
parent 1716f42970
commit bded7c8adc
8 changed files with 73 additions and 44 deletions
+29 -1
View File
@@ -11,7 +11,7 @@ Build command:
make
```
LavinMQ 2.10.0 requires Crystal 1.21.0 or newer. The package uses Alpine
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.
@@ -44,6 +44,34 @@ Wrapper settings in `/etc/conf.d/lavinmq`:
- `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. Add versioned vendored archives for the locked Shards dependencies and
frontend assets. If the new upstream `shard.lock` and the asset rules in its
`Makefile` are unchanged, the existing archives can be reused under the new
names:
```sh
cd packaging/alpine/local/lavinmq
cp lavinmq-2.10.1-shards.tar.gz lavinmq-<version>-shards.tar.gz
cp lavinmq-2.10.1-assets.tar.gz lavinmq-<version>-assets.tar.gz
git add -f lavinmq-<version>-shards.tar.gz lavinmq-<version>-assets.tar.gz
```
When `shard.lock` changes, extract the upstream source, run
`shards install --production` in it, and create the shards archive with
`tar -czf lavinmq-<version>-shards.tar.gz lib`. If the asset rules change,
download the files specified by the new `Makefile` to a staging directory
and create `lavinmq-<version>-assets.tar.gz` from that directory's contents.
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: