# $Id: PKGBUILD 136815 2015-07-14 06:26:55Z 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.2.3.20150617
_commit=985cbd55e232833a859e7f2940b54f7dcb6cdb14
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')
optdepends=('python2-crypto: Optimization for RC4'
            'python2-pygeoip: for GAE Regions mode support & DNS region auto detect')
makedepends=('git')
#source=("git+https://github.com/goagent/goagent.git#tag=v$pkgver"
source=("git+https://github.com/goagent/goagent.git#commit=$_commit" 
        "${pkgname}.user.ini"
        "${pkgname}.service")
backup=('etc/goagent')
install=goagent.install
sha512sums=('SKIP'
            'cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e'
            '4327d5b874c5150296f9c027a60994853de1b68d4c4e32291a5c41c0e162ffbccf68b6208cbc096d099721b470e1df897ad61596d8ddd705543c15b58e9a0f7c')

prepare() {
  cd $pkgname

  sed -e "s|^#!/usr/bin/env python|#!/usr/bin/env python2|" \
      -i local/{proxy.py,dnsproxy.py}
  sed -e 's|^            self.geoip = .*$|            self.geoip = pygeoip.GeoIP("/usr/share/GeoIP/GeoIP.dat")|' \
      -e "s|os.path.join(os.path.dirname(os.path.abspath(__file__)), 'cacert.pem')|'/etc/ssl/certs/ca-certificates.crt'|" \
      -i local/proxylib.py
  sed -e 's|^.*google_appengine.zip.*$||' \
      -e 's|sys\.modules\.pop(.google., None)||' \
      -i server/uploader.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/proxylib.py "$pkgdir/usr/share/$pkgname/local/proxylib.py"
  install -Dm644 local/proxy.pac "$pkgdir/usr/share/$pkgname/local/proxy.pac"
  install -Dm644 local/SwitchyOptions.bak "$pkgdir/usr/share/$pkgname/local/SwitchyOptions.bak"

  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"

  chown -R nobody:nobody "$pkgdir/usr/share/$pkgname/local"
  
  cp -r server "$pkgdir/usr/share/$pkgname/"
  rm "$pkgdir/usr/share/$pkgname/server/"{uploader.bat,google_appengine.zip}

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

# vim:set ts=2 sw=2 et:
