# $Id: PKGBUILD 109064 2014-04-10 02:01:57Z fyan $
# Maintainer: Felix Yan <felixonmars@gmail.com>
# Contributor: cuihao <cuihao dot leo at gmail dot com>
# Contributor: Guten <ywzhaifei@gmail.com> 

pkgname=goagent
pkgver=3.1.8
pkgrel=1
pkgdesc="A gae proxy forked from gappproxy/wallproxy"
arch=("any")
url="http://goagent.googlecode.com"
license=("GPL2")
depends=('python2' 'python2-pyopenssl' 'python2-gevent' 'python2-dnslib')
conflicts=('python2-gevent<0.99')
optdepends=('python2-crypto: Optimization for RC4'
            'python2-pacparser: PAC proxy support'
            'python2-pygeoip: for GAE Regions mode support & DNS region auto detect')
makedepends=('git')
source=("git+https://github.com/goagent/goagent.git#tag=v$pkgver"
        https://github.com/goagent/goagent/commit/cc91b381c5bbd43220c36dd74491584cec3f20cd.patch
        "${pkgname}.user.ini"
        "${pkgname}.service")
backup=('etc/goagent')
install=goagent.install

prepare() {
  cd $pkgname

  # https://code.google.com/p/goagent/issues/detail?id=13208
  patch -p1 -i ../cc91b381c5bbd43220c36dd74491584cec3f20cd.patch

  sed -e "s|^#!/usr/bin/env python|#!/usr/bin/env python2|" \
      -e 's|^    geoip = .*)\( if.*\)$|    geoip = pygeoip.GeoIP("/usr/share/GeoIP/GeoIP.dat")\1|' \
      -i local/proxy.py
}

package() {
  cd $pkgname

  install -Dm755 local/proxy.py "$pkgdir/usr/share/$pkgname/local/goagent"
  install -Dm755 local/dnsproxy.py "$pkgdir/usr/share/$pkgname/local/dnsproxy.py"
  install -Dm644 local/proxy.pac "$pkgdir/usr/share/$pkgname/local/proxy.pac"
  install -Dm644 local/cacert.pem "$pkgdir/usr/share/$pkgname/local/cacert.pem"
  install -Dm644 local/SwitchyOptions.bak "$pkgdir/usr/share/$pkgname/local/SwitchyOptions.bak"
  install -Dm644 local/SwitchySharp.crx "$pkgdir/usr/share/$pkgname/local/SwitchySharp_1_9_52.crx"

  install -Dm644 local/proxy.ini "$pkgdir/usr/share/$pkgname/local/goagent.ini"
  install -Dm640 -g nobody ../goagent.user.ini "$pkgdir/etc/goagent"
  ln -sf "/etc/goagent" "${pkgdir}/usr/share/$pkgname/local/goagent.user.ini"
  
  cp -r server "$pkgdir/usr/share/$pkgname/"
  rm "$pkgdir/usr/share/$pkgname/server/uploader.bat"

  # systemd service
  install -Dm644 "${srcdir}/goagent.service" "${pkgdir}/usr/lib/systemd/system/goagent.service"
}

# vim:set ts=2 sw=2 et:
sha512sums=('SKIP'
            'f45b74699db618fd456b12724ef1c87d05d2bb51fc9d8c7676ff21bbd03f2a026b892c3e00fe89532426f5e01757693cb41014a20873393c496b3dfea1874b79'
            'cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e'
            '4327d5b874c5150296f9c027a60994853de1b68d4c4e32291a5c41c0e162ffbccf68b6208cbc096d099721b470e1df897ad61596d8ddd705543c15b58e9a0f7c')
