diff options
Diffstat (limited to 'community/redict/APKBUILD')
-rw-r--r-- | community/redict/APKBUILD | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/community/redict/APKBUILD b/community/redict/APKBUILD new file mode 100644 index 00000000000..2009e547e8e --- /dev/null +++ b/community/redict/APKBUILD @@ -0,0 +1,105 @@ +# Contributor: V.Krishn <vkrishn4@gmail.com> +# Contributor: Eivind Uggedal <eu@eju.no> +# Contributor: TBK <alpine@jjtc.eu> +# Maintainer: fossdd <fossdd@pwned.life> +pkgname=redict +pkgver=7.3.0 +pkgrel=3 +pkgdesc="A distributed key/value database" +url="https://redict.io/" +arch="all" +license="LGPL-3.0-only" +pkgusers="redict" +pkggroups="redict" +makedepends="linux-headers openssl-dev>3" +checkdepends="tcl procps" +install=" + $pkgname-compat.pre-install + $pkgname.post-install + $pkgname.post-upgrade + $pkgname.pre-install + " +subpackages=" + $pkgname-benchmark + $pkgname-cli + $pkgname-compat::noarch + $pkgname-openrc + " +builddir="$srcdir/$pkgname" +source="redict-$pkgver.tar.gz::https://codeberg.org/redict/redict/archive/$pkgver.tar.gz + redict.conf.patch + sentinel.conf.patch + $pkgname.initd + $pkgname.confd + $pkgname-sentinel.initd + $pkgname.logrotate + " + +case "$CARCH" in + # FIXME: One test is broken on s390x. + s390x) options="!check";; +esac + +build() { + export CFLAGS="$CFLAGS -DUSE_MALLOC_USABLE_SIZE -O2 -flto=auto" + make USE_JEMALLOC=no \ + MALLOC=libc \ + BUILD_TLS=yes \ + all +} + +check() { + make test +} + +package() { + make install PREFIX="$pkgdir/usr" INSTALL_BIN="$pkgdir/usr/bin" + + cd "$pkgdir" + + install -D -m 644 "$builddir"/redict.conf etc/redict.conf + + # This file must be writable for redict, otherwise Sentinel fails to start. + install -D -m 644 -o redict -g redict "$builddir"/sentinel.conf etc/sentinel.conf + + install -D -m 755 "$srcdir"/redict.initd etc/init.d/redict + install -D -m 755 "$srcdir"/redict-sentinel.initd etc/init.d/redict-sentinel + install -D -m 644 "$srcdir"/redict.confd etc/conf.d/redict + install -D -m 644 "$srcdir"/redict.logrotate etc/logrotate.d/redict + + install -d -o redict -g redict \ + var/lib/redict \ + var/log/redict +} + +benchmark() { + pkgdesc="Redict benchmarking tool" + + amove usr/bin/redict-benchmark +} + +cli() { + pkgdesc="Redict CLI client" + + amove usr/bin/redict-cli +} + +compat() { + pkgdesc="Redict command symlinks and system group for compatibility with redis" + depends="!redis !valkey-compat" + + mkdir -p "$subpkgdir"/usr/bin + for i in benchmark check-aof check-rdb cli sentinel server; do + ln -s /usr/bin/redict-$i "$subpkgdir"/usr/bin/redis-$i + done +} + +sha512sums=" +d33f4dfaf728f5a22abe7a6223f3192c39dc41a32e7bcb0f453caaa859f35b512534979c26ced9f4458c19611debd282f37955e930151c0f827035f349647226 redict-7.3.0.tar.gz +96740880cd0caac2cecb11066a555055e7c3f10feb312b2d4c7a206fb92c1003415cf7ab81bec4ac96f7631724d9097b1ca130621c8b564a7987dcd75d2f6e25 redict.conf.patch +a3cec12566097fe78a31d09db77ca956ba52ee1fbb8ac4f5ffc49d0299e29f94ef55830f7760324a875bd47391eee116e0c4efb4bef00d6045bf98b81f392dfc sentinel.conf.patch +555edff7dd7768c9579a101df86e91cc14cb9941365f051e0e993f1c341cd2b46fcfab6f4a6fd4c1d589242363e323734b453652d687d2d46cb651d84d42caee redict.initd +4a0b04388115b5af6d4173aca66b081740432c19e1085c0bd5251fbbfb190c06aaa0540575e160c1e907cf504e33b3dcb67eb916dda3347cf394123d64adffb2 redict.confd +7cc571f9f977a167d61bd952cf74d043ef17e5211113928c77a2f088df1cc8f31dd19e7de79e2795479f7afccd4dd32b66e61b67c99a21ffa8d9560811185728 redict-sentinel.initd +68e0b0c4c8def5d42149b895ac681d91b8c691a5fd90bce64e6bf6c7780f33c6ac02a923642ebdc85f6bb41d8039cc38b7d3be49e5e9f86f097e3d1f6d41ecd4 redict.logrotate +" |