makedeb


caddy 2.4.5-1


Fast web server with automatic HTTPS

Viewing /PKGBUILD.

View raw.

Click here to go back to the Git tree for caddy.

# Maintainer: Roland Vet <vet.roland@gmail.com>

pkgname=caddy
pkgver=2.4.5
_gitcommit=v2.4.5
_distcommit=093d76bdd6ecacd8aeb21de3aa0c35b82a0eb064
pkgrel=1
pkgdesc='Fast web server with automatic HTTPS'
url='https://caddyserver.com'
arch=('x86_64')
license=('Apache')
depends=('libc-bin')
makedepends=('gcc' 'libc-dev' 'golang-go>=2:1.16~1' 'git')
backup=('etc/caddy/Caddyfile')
source=("git+https://github.com/caddyserver/caddy#tag=${_gitcommit}?signed"
        caddy-dist::"git+https://github.com/caddyserver/dist#commit=${_distcommit}"
        caddy.service
        caddy-api.service
        caddy.tmpfiles
        caddy.sysusers
        Caddyfile
        use-data-dir-for-autosave.patch
        override-main-module-version.patch)
sha512sums=('SKIP'
            'SKIP'
            'b6f69b9818b1807ebd614f696f39ca2bacc58b748273d1122c2a96641093c2acf9e168ff6a2d5b2e8b2da073993b5245740d77975d4ca823ff0598675a6b7806'
            'a4d9bbcccf3c6fe9be2b7ba98214d579ecd40991c5cc520ca1d105f307b31622f1c6b5a6cd7a4e8b32ccd2a229ed70115cba9c507baa413803897b7183f9abe0'
            '55ee8d3f8b14f9adddc7a1026addcea4f85b4bae4cd512fd4da2a5e8adaae4b6fd0f486d2e3847f75518f4710a897b4fca84e48ee15700b968bad762125c4742'
            'c893d88fec89e37da6596030c8dce7103e7e575371e8542a24d2a0741e877358d85219f2d8ade9d6aa0f515efe1156a4badd9fef5f65f553a5b0c72330c4728f'
            '716da3f4edeb3561243aeaf5c32b01ff7a4ac810b6deba8364fb12a1f71b6a5278c34a97b289bcfdc48784679b942bf780f1f36d416a575791168c94b0d59fe0'
            '563d6b45e91fc584fb5a27caaa382f59c140cb0a1b28b8d8faced4f7c7cad86d8671eb6ac10056f41518a842c8f606130d7e0c71df2b731d5eb0b4c868ea5d41'
            'b06369dd976cfcc9b519782c088efa5fba25db61663112fcc4e20b108d5165cbebcf63b6fe6d1e36119a55271374bac0037a4d07af412241d6a4d2b4f4efda0b')
validpgpkeys=(
  29D0817A67156E4F25DC24782A349DD577D586A5 # Matthew Holt <mholt@users.noreply.github.com>
)

pkgver() {
  cd ${pkgname}
  git describe --tags --match 'v*' | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

prepare() {
  cd "${pkgname}"
  # welcome page
  cp ../caddy-dist/welcome/index.html .
  sed 's|/var/www/html|/srv/http|g' -i index.html
  # do not write in /etc
  patch -Np1 < "${srcdir}/use-data-dir-for-autosave.patch"
  # fix version identifier if not built from a module
  patch -Np1 < "${srcdir}/override-main-module-version.patch"
  sed 's|"unknown"|"v'"${pkgver}"'"|g' -i caddy.go
}

build() {
  cd "${pkgname}/cmd/caddy/"
  export CGO_LDFLAGS="${LDFLAGS}"
  export CGO_CPPFLAGS="${CPPFLAGS}"
  export CGO_CFLAGS="${CFLAGS}"
  export CGO_CXXFLAGS="${CXXFLAGS}"
  export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
  go build .
}

check() {
  cd "${pkgname}"
  go test ./...
  version=$(./cmd/caddy/caddy version)
  echo "Caddy version: ${version}"
  if [[ $version != v$pkgver ]]; then
    exit 1
  fi
}

package() {
  cd "${pkgname}"
  install -Dm 755 cmd/caddy/caddy -t "${pkgdir}/usr/bin"

  install -Dm 644 "${srcdir}/caddy.service" "${srcdir}/caddy-api.service" -t "${pkgdir}/usr/lib/systemd/system"
  install -Dm 644 "${srcdir}/caddy.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/caddy.conf"
  install -Dm 644 "${srcdir}/caddy.sysusers" "${pkgdir}/usr/lib/sysusers.d/caddy.conf"

  install -Dm 644 "${srcdir}/Caddyfile" -t "${pkgdir}/etc/caddy"
  install -d "${pkgdir}/etc/caddy/conf.d"

  install -Dm 644 index.html "${pkgdir}/usr/share/caddy/index.html"

  install -Dm 644 "${srcdir}/caddy-dist/scripts/completions/_caddy" -t "${pkgdir}/usr/share/zsh/site-functions"
  install -Dm 644 "${srcdir}/caddy-dist/scripts/completions/bash-completion" "${pkgdir}/usr/share/bash-completion/completions/caddy"
}

# vim: ts=2 sw=2 et: