# Maintainer: Celeste <cielesti@protonmail.com>
maintainer="Celeste <cielesti@protonmail.com>"
pkgname=tootik
pkgver=0.13.0
pkgrel=0
pkgdesc="Federated nanoblogging service with Gemini frontend"
url="https://github.com/dimkr/tootik"
arch="all"
license="Apache-2.0"
depends_openrc="openssl"
makedepends="go sqlite-dev"
install="$pkgname.pre-install"
pkgusers="tootik"
pkggroups="tootik"
subpackages="$pkgname-openrc"
source="https://github.com/dimkr/tootik/archive/refs/tags/$pkgver/tootik-$pkgver.tar.gz
	tootik.cfg
	tootik.initd
	tootik.confd
	"

export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"

export CGO_ENABLED=1
export _GOTAGS="libsqlite3 fts5"

build() {
	local _goldflags="
		-X github.com/dimkr/tootik/buildinfo.Version=$pkgver
		"

	go generate -v ./migrations
	go vet -v -tags "$_GOTAGS" ./...
	go build -v -ldflags "$_goldflags" -tags "$_GOTAGS" ./cmd/tootik
}

check() {
	./tootik --version

	# cleanup sqlite database files used by test/register_test.go
	rm -vf /tmp/TestRegister*.sqlite3

	go test -v -tags "$_GOTAGS" -timeout 30m ./...
}

package() {
	install -Dm755 tootik -t "$pkgdir"/usr/bin/
	install -dm750 -o tootik -g tootik "$pkgdir"/var/lib/tootik

	install -dm750 -o tootik -g tootik "$pkgdir"/etc/tootik
	install -Dm640 -o tootik -g tootik "$srcdir"/tootik.cfg \
		-t "$pkgdir"/etc/tootik/

	install -Dm755 "$srcdir"/tootik.initd "$pkgdir"/etc/init.d/tootik
	install -Dm644 "$srcdir"/tootik.confd "$pkgdir"/etc/conf.d/tootik
}

sha512sums="
3dcdcdab569d4a360fd340f995dcfc3dc77256e8045d1d4957877bee424dfee047af2188b5bce8621fdf05e7b63206e8cb38d1679722996b1acdda7e2a0af1ac  tootik-0.13.0.tar.gz
af0b78ef08a762a23372bda3a55a5849d4ca337f0bd347808827989c8de0f513f610833c8b29abd57b5b98413ace838b367292ac7c5b906f21339b18d4a8fa06  tootik.cfg
27e2900591d93829dbde0775cffe8a6098cabb0f4366ebd059902da991229686145650a842adb2c28ccae7f9180bd80c8fd054af9e58799eeb4844a3b53ff503  tootik.initd
11fa51d25baaeb295c80cf3e154eb1eab67f9633e23f01cc0a25c427af368746d536bff17de2153b5be925489e3f84ca5ba492a4a43c32aaf33b8c4d00d14fd6  tootik.confd
"
