maintainer="Hoang Nguyen <folliekazetani@protonmail.com>"
pkgname=nickel
pkgver=1.9.1
pkgrel=0
pkgdesc="Generic configuration language for less"
url="https://nickel-lang.org/"
# s390x, loongarch64: nix crate fails to build
# riscv64: check_manual_snippets_doc_manual_syntax_md test hangs indefinitely
arch="all !s390x !riscv64 !loongarch64"
license="MIT"
makedepends="cargo cargo-auditable"
checkdepends="python3"
subpackages="$pkgname-doc $pkgname-language-server:_langserver"
options="net"
source="$pkgname-$pkgver.tar.gz::https://github.com/tweag/nickel/archive/refs/tags/$pkgver.tar.gz
	explicit-dep-comrak.patch
	"

prepare() {
	default_prepare

	cargo fetch --target="$CTARGET" --locked
}

build() {
	cargo auditable build --frozen --release --workspace \
		--bin nickel --bin nls
}

check() {
	cargo test --frozen --workspace
}

package() {
	install -Dm755 -t "$pkgdir"/usr/bin/ \
		target/release/nickel \
		target/release/nls

	install -Dm644 doc/manual/*.md -t "$pkgdir"/usr/share/doc/$pkgname/
}

_langserver() {
	pkgdesc="LSP server for Nickel configuration language"
	amove usr/bin/nls
}

sha512sums="
23b926125f1c5ad7ff9fae1105f63164ea71b44c3cb1e4568e9fe40dec37e96e464c9c4ab8b4272f28ab35de6c3fa833e04e4815143aef4ec5ae16b9b62f9be0  nickel-1.9.1.tar.gz
a5d2c2899e81d480702f4f43d42373019a28d032e711a12d133b320ff4ad43b158bb4fb9577a5bfbc150131913d7267a8fe511b908b1e62b09de089fb440a677  explicit-dep-comrak.patch
"
