# Maintainer: Joachim Schlöffel <me@joachim-schloeffel.com>
pkgname=gitea
pkgver=1.27.1
pkgrel=1
pkgdesc="Self-hosted Git service written in Go"
url="https://about.gitea.com/"
arch="x86_64 aarch64"
license="MIT"
depends="git git-lfs gnupg"
makedepends="tar xz"
provides="cmd:gitea=$pkgver-r$pkgrel"
install="$pkgname.pre-install"
pkgusers="gitea"
pkggroups="www-data"
subpackages="
	$pkgname-doc
	$pkgname-openrc:_openrc:noarch
	"
options="!check !strip !tracedeps"

case "$CARCH" in
	x86_64)
		_archive="$pkgname-$pkgver-linux-amd64.xz"
		;;
	aarch64)
		_archive="$pkgname-$pkgver-linux-arm64.xz"
		;;
esac

source="
	$pkgname-$pkgver-linux-amd64.xz::https://github.com/go-gitea/gitea/releases/download/v$pkgver/gitea-$pkgver-linux-amd64.xz
	$pkgname-$pkgver-linux-arm64.xz::https://github.com/go-gitea/gitea/releases/download/v$pkgver/gitea-$pkgver-linux-arm64.xz
	$pkgname-src-$pkgver.tar.gz::https://github.com/go-gitea/gitea/releases/download/v$pkgver/gitea-src-$pkgver.tar.gz
	gitea.ini
	gitea.initd
	"
builddir="$srcdir/gitea-src-$pkgver"

prepare() {
	default_prepare
	xz -dc "$srcdir/$_archive" > "$srcdir"/gitea
	chmod 0755 "$srcdir"/gitea
}

package() {
	local _dir
	for _dir in gitea gitea/git gitea/data gitea/db gitea/custom; do
		install -d -m 0750 -o gitea -g www-data \
			"$pkgdir"/var/lib/$_dir
	done

	install -d -m 0755 -o gitea -g www-data "$pkgdir"/var/log/gitea
	install -Dm755 "$srcdir"/gitea "$pkgdir"/usr/bin/gitea
	install -Dm644 -o gitea -g www-data "$srcdir"/gitea.ini \
		"$pkgdir"/etc/gitea/app.ini
	chown gitea:www-data "$pkgdir"/etc/gitea

	install -d -m 0755 "$pkgdir"/usr/share/webapps/gitea
	cp -r "$builddir"/options "$builddir"/public "$builddir"/templates \
		"$pkgdir"/usr/share/webapps/gitea/
	install -Dm644 "$builddir"/LICENSE -t "$pkgdir"/usr/share/licenses/gitea/
}

_openrc() {
	pkgdesc="$pkgdesc (OpenRC service)"
	depends="$pkgname=$pkgver-r$pkgrel openrc"

	install -Dm755 "$srcdir"/gitea.initd "$subpkgdir"/etc/init.d/gitea
}

sha512sums="
1eb7f75e4dd887da837e47daf8b0b2dc93b36e494f0c6b3f83cac7f8c9bf856ffc93242efd02acee02d5a721d8d4ad59eb5dc820464073ef6214f2903085a809  gitea-1.27.0-linux-amd64.xz
e9ca35afc475cc14eb0b1dec578fa684caa209d308891401a53c35ec81b67fe3b0e0a4152e8ae23c12fc4d3ace03615d254f46d586917195f9af1443c331b280  gitea-1.27.0-linux-arm64.xz
c11d91a1574fa9e131e8e3d5b29f06f4499eebd0f9610585c534d1e622dd5a2ffc0af0492b8025670070868f44ac0a192614085326f0b34cd31f35c368f3906a  gitea-src-1.27.0.tar.gz
431184faffa8996873d92d7b0d16bc4b1a0178d264cd2928d1f49b13ad3e6470d9ede7a18c12112deeeb38f0647ccc0b012e98bcbd96e7b8496a3dc18f5b1fb7  gitea.ini
9474d707df8b049c93ec4642f71195adff699e1e812f315cac4295b3ab29eeb9ba8b83bf3307c50b04e072a4a9dc4c4f84ac490ee22291bd50015009795c1598  gitea.initd
"
