# Maintainer: Joachim Schlöffel <me@joachim-schloeffel.com>
pkgname=greptimedb
pkgver=1.0.2
pkgrel=0
pkgdesc="Cloud-native observability database for metrics, logs, and traces"
url="https://github.com/GreptimeTeam/greptimedb"
arch="x86_64"
license="Apache-2.0"
depends="ca-certificates"
makedepends="
	binutils
	clang
	cmake
	coreutils
	lld
	linux-headers
	make
	mold
	openssl-dev
	openssl-libs-static
	perl
	protobuf
	protobuf-dev
	rustup
	zlib-dev
	zlib-static
	zstd-dev
	zstd-static
	"
options="net"
source="$pkgname-$pkgver.tar.gz::https://github.com/GreptimeTeam/greptimedb/archive/refs/tags/v$pkgver.tar.gz"

_rust_toolchain="nightly-2026-03-21"
_cargo_profile="nightly"
export CARGO_HOME="$srcdir/cargo"
export RUSTUP_HOME="$srcdir/rustup"
export CARGO_BUILD_JOBS="${CARGO_BUILD_JOBS:-2}"
export CARGO_PROFILE_NIGHTLY_CODEGEN_UNITS="${CARGO_PROFILE_NIGHTLY_CODEGEN_UNITS:-16}"
export CARGO_PROFILE_NIGHTLY_DEBUG="${CARGO_PROFILE_NIGHTLY_DEBUG:-false}"
export CARGO_PROFILE_NIGHTLY_LTO="${CARGO_PROFILE_NIGHTLY_LTO:-thin}"
export LIBRARY_PATH="/usr/lib"

prepare() {
	default_prepare
	rustup-init \
		-y \
		--no-modify-path \
		--profile minimal \
		--default-toolchain "$_rust_toolchain"
}

build() {
	"$CARGO_HOME"/bin/rustup run "$_rust_toolchain" cargo build \
		--profile "$_cargo_profile" \
		--locked \
		--bin greptime \
		--features servers/dashboard
}

check() {
	"$builddir"/target/"$_cargo_profile"/greptime --version
}

package() {
	install -Dm755 "$builddir"/target/"$_cargo_profile"/greptime \
		"$pkgdir"/usr/bin/greptime
}

sha512sums="
7f4ac722b84a26816030e65d504b37a53edfca15de669a4f6ee7a903f1a29c8358dcc2376a0a6cfd9ded13b0c5d7550a6856b9b10dc8cd080c6b12970553a0ea  greptimedb-1.0.2.tar.gz
"
