# Maintainer: Christian Kampka <christian@kampka.net>

pkgname=docker-registry
pkgver=2.6.2
pkgrel=0
pkgdesc="An implementation of the Docker Registry HTTP API V2 for use with docker 1.6+"
url="https://github.com/docker/distribution"
arch="x86 x86_64 ppc64le"
license="Apache-2.0"
makedepends="git go"
install="$pkgname.pre-install"
pkgusers="docker-registry"
pkggroups="docker-registry"
subpackages="$pkgname-dbg"
source="$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz
	docker-registry.initd
	config-example.patch"
builddir="$srcdir/distribution-$pkgver"

prepare() {
	default_prepare || return 1

	cd "$builddir"
	sed -i '/^VERSION\s*=/d' Makefile
	sed -Ei "s/^(var Version\s*=\s*).*/\1\"$pkgver\"/" version/version.go
}

build() {
	cd "$builddir"

	# GOPATH fix
	mkdir -p Godeps/_workspace/src/github.com/docker
	ln -s "$builddir" Godeps/_workspace/src/github.com/docker/distribution || return 1

	make clean binaries \
		DISTRIBUTION_DIR="$builddir" \
		GOPATH="$builddir/Godeps/_workspace" \
		VERSION="$pkgver" \
		|| return 1
}

check() {
	cd "$builddir"

	./bin/registry --version
}

package() {
	cd "$builddir"

	install -D -m 755 bin/registry \
		"$pkgdir"/usr/bin/$pkgname || return 1

	install -D -m 644 cmd/registry/config-example.yml \
		"$pkgdir"/etc/$pkgname/config.yml || return 1

	install -D -m 644 LICENSE \
		"$pkgdir"/usr/share/licenses/$pkgname || return 1

	install -D -m 755 "$srcdir"/$pkgname.initd \
		"$pkgdir"/etc/init.d/$pkgname || return 1

	install -d -m 750 -o $pkgusers -g $pkggroups \
		"$pkgdir"/var/lib/$pkgname
}

sha512sums="a091db2e15d7c1dc8cd39a40de5bb63cc1ead68e95dfaf6b3735a789adb87f146c03eff81f700e0059e5f6ffc43e6c3dd3358503697882cb080b991629f82c60  docker-registry-2.6.2.tar.gz
96100a4de311afa19d293a3b8a63105e1fcdf49258aa8b1752befd389e6b4a2b1f70711341ea011b450d4468bd37dbd07a393ffab3b9aa1b2213cf0fdd915904  docker-registry.initd
5a38f4d3f0ee5cd00c0a5ced744eb5b29b839da5921adea26c5de3eb88b6b2626a7ba29b1ab931e5f8fbfafbed8c94cb972a58737ec0c0a69cf515c32139e387  config-example.patch"
