diff --git a/packaging/alpine/local/lavinmq/APKBUILD b/packaging/alpine/local/lavinmq/APKBUILD index e515b4e..8a8b696 100644 --- a/packaging/alpine/local/lavinmq/APKBUILD +++ b/packaging/alpine/local/lavinmq/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: Joachim Schlöffel pkgname=lavinmq -pkgver=2.10.0 -pkgrel=2 +pkgver=2.10.1 +pkgrel=0 pkgdesc="High-performance AMQP and MQTT message queue server" url="https://github.com/cloudamqp/lavinmq" arch="x86_64" @@ -72,9 +72,9 @@ _openrc() { } sha512sums=" -b494892dada6eb713025bc3245e16035a63265805d77c537b4530226195f00dacab1fb14de5bf4c999165faa6bf2f7ef7c6b8ffb4c6f4a921977f1c13a4f1545 lavinmq-2.10.0.tar.gz -d0dfdd5c0e474024f57deb9e31c76e3f176e798c8d21dea53d3aea1b05436bd03fa34e69ccddf322bc89adedce5f379df5a316cddbbdfe12520e5bf672ad8228 lavinmq-2.10.0-shards.tar.gz -ae3cea2534b211abbcbd1e4fcb6da73dfaf383a19aef1c45f367cba77492cc20a7ce8283fc42f26c0a023149114c369bed307fb8cde0b8f27fba61165092e986 lavinmq-2.10.0-assets.tar.gz +1c2c932a0698227abfe8353988ea75b48f9048f183d85410797af5bc14495e2cb4497e72acc8fc9ff9ef8f78e8ebb648a1b40b5cf7f1b86e18597d10297417ff lavinmq-2.10.1.tar.gz +d0dfdd5c0e474024f57deb9e31c76e3f176e798c8d21dea53d3aea1b05436bd03fa34e69ccddf322bc89adedce5f379df5a316cddbbdfe12520e5bf672ad8228 lavinmq-2.10.1-shards.tar.gz +ae3cea2534b211abbcbd1e4fcb6da73dfaf383a19aef1c45f367cba77492cc20a7ce8283fc42f26c0a023149114c369bed307fb8cde0b8f27fba61165092e986 lavinmq-2.10.1-assets.tar.gz 62a609d50f28db960098c4c84ce4f1dad78413366a9a9aca18fe321114d687be3bf7b71924d4ace69bd74383c5ac40d2ee09ae0eef9c1bfe653b97448e42e110 lavinmq.confd 1853196e70297b5c4a2207fde50df735620cf6d99c4994644fd676bffaf863d67300ad7ae771c4bbb86fce1a0485c2a7968cf912c5f5bb878e08b15e5a28ba1b lavinmq.initd e7617099f745ecbf2f0686830d0a1b28044741ebd543798505b5b3c08f1be96b6cc478eb18f6785af49b100c2f49d837775f0721ac27519ddf3f081e681c581c use-vendored-build-inputs.patch diff --git a/packaging/alpine/local/lavinmq/README.md b/packaging/alpine/local/lavinmq/README.md index a66a7f0..bd15ebf 100644 --- a/packaging/alpine/local/lavinmq/README.md +++ b/packaging/alpine/local/lavinmq/README.md @@ -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--shards.tar.gz + cp lavinmq-2.10.1-assets.tar.gz lavinmq--assets.tar.gz + git add -f lavinmq--shards.tar.gz lavinmq--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--shards.tar.gz lib`. If the asset rules change, + download the files specified by the new `Makefile` to a staging directory + and create `lavinmq--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: diff --git a/packaging/alpine/local/lavinmq/lavinmq-2.10.1-assets.tar.gz b/packaging/alpine/local/lavinmq/lavinmq-2.10.1-assets.tar.gz new file mode 100644 index 0000000..6c501e4 Binary files /dev/null and b/packaging/alpine/local/lavinmq/lavinmq-2.10.1-assets.tar.gz differ diff --git a/packaging/alpine/local/lavinmq/lavinmq-2.10.1-shards.tar.gz b/packaging/alpine/local/lavinmq/lavinmq-2.10.1-shards.tar.gz new file mode 100644 index 0000000..cc9c905 Binary files /dev/null and b/packaging/alpine/local/lavinmq/lavinmq-2.10.1-shards.tar.gz differ