# Maintainer: Johannes Löthberg <johannes@kyriasis.com>
# Maintainer: T.J. Townsend <blakkheim@archlinux.org>
# Contributor: Jonathan Steel <jsteel at archlinux.org>
# Contributor: Abhishek Dasgupta <abhidg@gmail.com>
# Contributor: David Rosenstrauch <darose@darose.net>

pkgname=ddclient
pkgver=4.0.0
pkgrel=1
pkgdesc="Update dynamic DNS entries for accounts on many dynamic DNS services"
url="https://github.com/ddclient/ddclient"
arch=('any')
license=('GPL2')
backup=('etc/ddclient/ddclient.conf')
depends=('curl' 'perl-digest-sha1' 'net-tools')
makedepends=('git')
optdepends=('smtp-forwarder: email support requires sendmail binary')
source=("git+https://github.com/ddclient/ddclient.git?signed#tag=v${pkgver}"
         permission.patch)
sha256sums=('c8c665aa6d587b4a7987fd557a6a22c12ab0d892ad8f01c316af5f5fab0ec8dc'
            'SKIP')
validpgpkeys=(
    '53B26AEDC08246715E15504B236B6291555E8401' # Sandro Jäckel
    '61EEC1A7BEF093E5F6455CCDE3015D57145B85BE' # Richard Hansen
    'D852004BCC1AEC6F2449631D394799890605C42A' # Lenard Heß
)

prepare() {
  patch -Np1 -d ${pkgname} -i "${srcdir}/permission.patch"
}

build() {
  cd ${pkgname}
  ./autogen
  ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var
  make
}

# Tests are currently broken when missing some test dependencies which aren't in the repos.
# https://github.com/ddclient/ddclient/issues/812
# https://github.com/ddclient/ddclient/issues/815
#check() {
#
#  cd ${pkgname}
#  make VERBOSE=1 check
#}

package() {
  cd ${pkgname}
  make DESTDIR="${pkgdir}" install

  install -Dm644 sample-etc_systemd.service "$pkgdir"/usr/lib/systemd/system/ddclient.service
  install -d "$pkgdir"/var/cache/ddclient

  install -Dm644 README.cisco "$pkgdir"/usr/share/doc/ddclient/README.cisco
  install -Dm644 README.md "$pkgdir"/usr/share/doc/ddclient/README.md
  install -Dm644 COPYING "$pkgdir"/usr/share/licenses/$pkgname/COPYING
  install -Dm644 COPYRIGHT "$pkgdir"/usr/share/licenses/$pkgname/COPYRIGHT

  # https://github.com/ddclient/ddclient/blob/e0611ab192d6b8d3d2b09d6868d063ca5591ad02/ddclient.in#L1576
  # ddclient.conf should be root:ddclient with 640 permissions
  chmod 640 "$pkgdir"/etc/ddclient/ddclient.conf
  echo 'g ddclient - -' | install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
  echo 'z /etc/ddclient/ddclient.conf 0640 root ddclient - -' | install -Dm644 /dev/stdin "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
}
