# Contributor: Carlo Landmeter # Maintainer: Carlo Landmeter pkgname=caddy # When updating pkgver don't forget to run glide_init. pkgver=0.9.3 _vcheck="0.9.3" pkgrel=1 pkgdesc="Fast, cross-platform HTTP/2 web server with automatic HTTPS" url="https://caddyserver.com/" arch="all !s390x" license="ASL 2.0" depends="ca-certificates" makedepends="go libcap bash glide" install="$pkgname.pre-install" pkgusers="$pkgname" pkggroups="$pkgname" source="$pkgname-$pkgver.tar.gz::https://github.com/mholt/$pkgname/archive/v$pkgver.tar.gz $pkgname.initd $pkgname.confd $pkgname.conf glide.yaml glide.lock " builddir="$srcdir/$pkgname-$pkgver" prepare() { # prevent abump to auto update this pkg. [ "$pkgver" = "$_vcheck" ] || error "Please run glide_init and update _vcheck" default_prepare || return 1 } build() { export GOPATH="$startdir" cd "$builddir" cp "$srcdir"/glide.yaml "$srcdir"/glide.lock . glide install --skip-test || return 1 cd caddy && ./build.bash || return 1 } package() { cd "$builddir" install -Dm755 caddy/caddy "$pkgdir"/usr/sbin/caddy || return 1 # caddy currently does not support dropping privileges so we # change attributes with setcat to allow access to priv ports # https://caddyserver.com/docs/faq setcap cap_net_bind_service=+ep \ "$pkgdir"/usr/sbin/caddy || return 1 install -d -o caddy -g caddy \ "$pkgdir"/var/lib/caddy \ "$pkgdir"/etc/caddy \ "$pkgdir"/var/www || return 1 install -Dm755 "$srcdir"/$pkgname.initd \ "$pkgdir"/etc/init.d/$pkgname || return 1 install -Dm644 "$srcdir"/$pkgname.confd \ "$pkgdir"/etc/conf.d/$pkgname || return 1 install -Dm644 "$srcdir"/$pkgname.conf \ "$pkgdir"/etc/$pkgname/$pkgname.conf || return 1 } glide_init() { # caddy does not handle versioned dependencies. # we calculate them with glide and lock them. abuild clean deps unpack prepare cd "$builddir" export GOPATH="$startdir" rm -f glide.yaml glide.lock glide init --non-interactive || return 1 glide update || return 1 cp glide.yaml glide.lock "$startdir" cd "$startdir" && abuild checksum clean } md5sums="d63e1ac220a6abddf9e21c5cf02b95d9 caddy-0.9.3.tar.gz 8217cae6d4621dc942b15dad6a364e6a caddy.initd b5f1f62ac7d59b722bdebdcc9d2a6af5 caddy.confd 82217943769d0761c24e333e9fd51f1f caddy.conf 5c6ceee23c8bb64de0106b3a922090f1 glide.yaml c8d945904c94350efe80bb62028feb7e glide.lock" sha256sums="ec2f6e708262f6474a48a3503a1fbfb6e05e050772c0639ec823edda5e467668 caddy-0.9.3.tar.gz c9070cce0b57cef69894f05841b1eb7eca33cf9b50af71c15e57ebf17a40af2c caddy.initd 61a23e879e2aa9743f631fc54a62b9c23a1944606194b9dbbbcf3f563a8998c1 caddy.confd 08065486d87a9922464b3ae033343db27eca86d790cc0233dbb9b6666641db98 caddy.conf 1e6a02c40eb314944c34d47d8e13f46d7aa8dc6e8517bb2f0a57e1ff6472bbb6 glide.yaml 0f690f6e147d91c7db9ebd8e32697436d803498654a365cf21f79aba4cc308ef glide.lock" sha512sums="90a797e727f132c0c70fc9d9d973f37fc5c678668f8776e4f9598a2316ca231dde92076b723dad53f07f11827e1ecf04d2d012b485213959e79b7dbde86c1d20 caddy-0.9.3.tar.gz 00fe095efd8d801f0c2c69832c7240858080407ea3696ca07f6b53d3304f7e2784566d8a6b447cb83d7dc4542db551f1b4fa48ff031da7e4a1d4a26e59fc05c5 caddy.initd 7808688e92ab9950403a9b8ad29777f5bd0f75aa8cccc1d49958bb1e5af1b972dfba0c6d31931354f702a3a13933d0a1b8f28b82eed263773d71b79ec95cc15c caddy.confd c24805d17234e6cf40fe1dd102c03f05cf6129d43f58f5567d540a0e4400ce89994820bb0e317f611c65459ae26bcf7110e23a8fecaae11ca78a561892b45d75 caddy.conf ba28f42636fd4e4681f62cbf3246d6f5574ecfa9dad6f8d366f119a428b877610ecfe8c33c53f1733f029b7348b34f15815cf73c33d2e1e4904d80ff8408e05c glide.yaml ee251f44e940b269f421567e1faa51d8ea47f3b8488125353eafeb07ae74add41284493b6665b7416a47ba15e1d920b2ea233f5c13846ca73eaf637ac19bd4c7 glide.lock"