diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 89 |
1 files changed, 62 insertions, 27 deletions
@@ -1,15 +1,13 @@ # Contributor: Thomas Laroche <tho.laroche@gmail.com> -# Contributor: Kristian Klausen <klausenbusk@hotmail.com> # Maintainer: Thomas Fanninger <thomas@fanninger.at> pkgname=gogs _pkgname=${pkgname} pkgver=0.6.5 -pkgrel=4 +pkgrel=5 epoch=1 pkgdesc="Gogs(Go Git Service) is a Self Hosted Git Service in the Go Programming Language." arch=('i686' 'x86_64' 'armv6h' 'armv7h') -changelog=$pkgname.changelog url="http://gogs.io/" license=('MIT') depends=('git>=1.7.1') @@ -19,50 +17,87 @@ optdepends=('sqlite: SQLite support' 'redis: Redis support' 'memcached: MemCached support' 'openssh: GIT over SSH support') -makedepends=('go>=1.2' 'patch') -conflicts=('gogs-bin' 'gogs-git' 'gogs-git-dev') +makedepends=('go>=1.2' 'git>=1.7.1' 'patch') +conflicts=('gogs-bin' 'gogs' 'gogs-git') options=('!strip' '!emptydirs') backup=('srv/gogs/conf/app.ini') install=gogs.install -_gourl=github.com/gogits +_gourl=github.com/gogits/$_pkgname source=('gogs.service' 'app.ini.patch' - "${_pkgname}::git+https://${_gourl}/${_pkgname}.git#tag=v${pkgver}") + 'helper.sh' + "$_pkgname::git+https://${_gourl}.git#tag=v${pkgver}") -sha512sums=('2b4303f850e3b13b2fc3c9f0bc5820dae431d228002b35f01be0d4bfbcf05de8dcec2a559a85e318b609e4a4d492d44306eadf5f6508fd72333b198661bb0bb7' - '939be9ad851ae6e20b786e2e189b0b67c0198edfc8c83442934ec48c7be073e03c75172e79f23a6ee1e0eb467c6fa18096a66d69d1142ebba28fdc8bb2a3964c' +sha512sums=(2b4303f850e3b13b2fc3c9f0bc5820dae431d228002b35f01be0d4bfbcf05de8dcec2a559a85e318b609e4a4d492d44306eadf5f6508fd72333b198661bb0bb7 + 939be9ad851ae6e20b786e2e189b0b67c0198edfc8c83442934ec48c7be073e03c75172e79f23a6ee1e0eb467c6fa18096a66d69d1142ebba28fdc8bb2a3964c + e746dbdafc4c8d0b15a224dba95ae3151611ba9ff468ee6f0b1789e489955e4d7eaac0dbdf28a22e5b8211559af5950726f4a37d699a2490fd349f034401028c 'SKIP') +_goroot="/usr/lib/go" prepare() { - mkdir -p "${srcdir}/src/${_gourl}" - mv "${_pkgname}" "${srcdir}/src/${_gourl}/${_pkgname}" - msg2 "go get" - GOPATH="${srcdir}" go get -tags "sqlite redis memcache" "${_gourl}/${_pkgname}" + source $srcdir/helper.sh + + export GOROOT=/usr/lib/go + + msg2 "Prepare GO build enviroment" + rm -rf build + mkdir -p build/go + cd build/go + + for f in "$GOROOT/"*; do + ln -s "$f" + done + + rm pkg + mkdir pkg + cd pkg + + for f in "$GOROOT/pkg/"*; do + ln -s "$f" + done + + export GOROOT="$srcdir/build/go" + export GOPATH="$srcdir/build" - msg2 "Patch: GOGS app.ini" - patch -Np1 -i "${srcdir}/app.ini.patch" "${srcdir}/src/${_gourl}/${_pkgname}/conf/app.ini" + mkdir -p "$GOPATH/src/github.com/gogits" + + mv "$srcdir/$_pkgname" $GOPATH/src/${_gourl} + + msg2 "Check and download dependencies from .gopmfile" + get_gopm "$GOPATH/src/${_gourl}/.gopmfile" "$GOPATH/src" + + msg2 "Download missing dependencies" + go_get github.com/shurcooL/sanitized_anchor_name "$GOPATH/src/github.com/shurcooL/sanitized_anchor_name" + +# msg2 "Workaround dependencies" +# cd "$GOPATH/src/github.com/gogits/go-gogs-client/" +# git checkout -q master + + # Execute patch + msg2 "Execute patches" + patch -Np1 -i "$srcdir/app.ini.patch" "$GOPATH/src/${_gourl}/conf/app.ini" } build() { + cd $GOPATH/src/${_gourl} + msg2 "Build program" - cd ${srcdir}/src/${_gourl}/${_pkgname} - GOPATH="${srcdir}" go fix - GOPATH="${srcdir}" go build -tags "sqlite redis memcache cert" + go fix + go build -x -tags='sqlite redis memcache' } package() { - install -D -m 0755 "${srcdir}/src/${_gourl}/${_pkgname}/${_pkgname}" "${pkgdir}/usr/share/${_pkgname}/${_pkgname}" + install -Dm0755 "$srcdir/build/src/${_gourl}/$_pkgname" "$pkgdir/usr/share/$_pkgname/$_pkgname" - cp -r "${srcdir}/src/${_gourl}/${_pkgname}/conf" "${pkgdir}/usr/share/${_pkgname}" - install -d "${pkgdir}/usr/share/themes/gogs/default/" - cp -r "${srcdir}/src/${_gourl}/${_pkgname}/public" "${pkgdir}/usr/share/themes/gogs/default" - cp -r "${srcdir}/src/${_gourl}/${_pkgname}/templates" "${pkgdir}/usr/share/themes/gogs/default" + cp -r "$srcdir/build/src/${_gourl}/conf" "$pkgdir/usr/share/$_pkgname" + mkdir -p "$pkgdir/usr/share/themes/gogs/default/" + cp -r "$srcdir/build/src/${_gourl}/public" "$pkgdir/usr/share/themes/gogs/default" + cp -r "$srcdir/build/src/${_gourl}/templates" "$pkgdir/usr/share/themes/gogs/default" - install -D -m 0600 "${pkgdir}/usr/share/${_pkgname}/conf/app.ini" "$pkgdir/srv/${_pkgname}/conf/app.ini" - install -D -m 0644 "${srcdir}/gogs.service" "$pkgdir/usr/lib/systemd/system/gogs.service" - install -d "${pkgdir}/var/log/gogs" - install -D -m 0644 "${srcdir}/src/${_gourl}/${_pkgname}/LICENSE" "${pkgdir}/usr/share/licenses/$_pkgname" + install -Dm0644 "$pkgdir/usr/share/$_pkgname/conf/app.ini" "$pkgdir/srv/$_pkgname/conf/app.ini" + install -Dm0644 "$srcdir/gogs.service" "$pkgdir/usr/lib/systemd/system/gogs.service" + install -Dm0644 "$srcdir/build/src/${_gourl}/LICENSE" "$pkgdir/usr/share/licenses/$_pkgname" } |