PKGBUILD 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. # Contributor: Thomas Laroche <tho.laroche@gmail.com>
  2. # Maintainer: Thomas Fanninger <thomas@fanninger.at>
  3. pkgname=gogs-git-dev
  4. _pkgname=gogs
  5. _branch=dev
  6. pkgver=20150116
  7. pkgrel=1
  8. epoch=1
  9. pkgdesc="Gogs(Go Git Service) is a Self Hosted Git Service in the Go Programming Language. This is the current git version from branch ${_branch}."
  10. arch=('i686' 'x86_64' 'armv6h' 'armv7h')
  11. url="http://gogs.io/"
  12. license=('MIT')
  13. depends=('git>=1.7.1')
  14. optdepends=('sqlite: SQLite support'
  15. 'mariadb: MariaDB support'
  16. 'postgresql: PostgreSQL support'
  17. 'redis: Redis support'
  18. 'memcached: MemCached support'
  19. 'openssh: GIT over SSH support')
  20. makedepends=('go>=1.2' 'git' 'mercurial' 'patch')
  21. conflicts=('gogs-bin' 'gogs' 'gogs-git')
  22. options=('!strip' '!emptydirs')
  23. backup=('srv/gogs/conf/app.ini')
  24. install=gogs.install
  25. _gourl=github.com/gogits/$_pkgname
  26. source=('gogs.service'
  27. 'app.ini.patch'
  28. 'start.sh'
  29. 'helper.sh'
  30. "$_pkgname::git+https://${_gourl}.git#branch=${_branch}")
  31. sha512sums=('65bd06d530809917134b4fa2668136ada3e0cdc5a9c684ac422a973ad1c40c341d62cebf2ef14ee6275a134979d67cb314ec801a5a35ff1fb4e823aab671a151'
  32. 'a09134a50b7369715f65553003db954ca3193ee2556fc3d8aa98c717aa2f2b275d691f1c7c62464ec8f32e800d8ddf814c75546317ab623d2bd9331c5702380d'
  33. 'd759778b73d78fb705dad7b3cb486a2e366fdf3222bd170823579407a9aba9d281423b1026a22d142fc9abf620a40a14880254105129071956870e3048dd8bc3'
  34. '1e83441ebb24efe00e80f35eea6ed6d64a48194df3a3c90b02cd52a65099e8dfe046e0f914ac3dac7e4a30c854d967e2d5c928ee801f44053208dde2728fa17f'
  35. 'SKIP')
  36. _goroot="/usr/lib/go"
  37. pkgver(){
  38. cd "$srcdir/$_pkgname"
  39. echo $(git rev-list --count HEAD).$(git rev-parse --short HEAD)
  40. }
  41. prepare() {
  42. source $srcdir/helper.sh
  43. export GOROOT=/usr/lib/go
  44. msg2 "Prepare GO build enviroment"
  45. rm -rf build
  46. mkdir -p build/go
  47. cd build/go
  48. for f in "$GOROOT/"*; do
  49. ln -s "$f"
  50. done
  51. rm pkg
  52. mkdir pkg
  53. cd pkg
  54. for f in "$GOROOT/pkg/"*; do
  55. ln -s "$f"
  56. done
  57. export GOROOT="$srcdir/build/go"
  58. export GOPATH="$srcdir/build"
  59. mkdir -p "$GOPATH/src/github.com/gogits"
  60. mv "$srcdir/$_pkgname" $GOPATH/src/${_gourl}
  61. msg2 "Check and download dependencies from .gopmfile"
  62. get_gopm "$GOPATH/src/${_gourl}/.gopmfile" "$GOPATH/src"
  63. # go_get code.google.com/p/go.crypto "$GOPATH/src/go.crypto"
  64. # Execute patch
  65. msg2 "Execute patches"
  66. patch -Np1 -i "$srcdir/app.ini.patch" "$GOPATH/src/${_gourl}/conf/app.ini"
  67. }
  68. build() {
  69. cd $GOPATH/src/${_gourl}
  70. msg2 "Build program"
  71. go fix
  72. go build -x -tags='sqlite redis memcache'
  73. }
  74. package() {
  75. install -Dm0755 "$srcdir/start.sh" "$pkgdir/usr/share/$_pkgname/start.sh"
  76. install -Dm0755 "$srcdir/build/src/${_gourl}/$_pkgname" "$pkgdir/usr/share/$_pkgname/$_pkgname"
  77. cp -r "$srcdir/build/src/${_gourl}/conf" "$pkgdir/usr/share/$_pkgname"
  78. mkdir -p "$pkgdir/usr/share/themes/gogs/default/"
  79. cp -r "$srcdir/build/src/${_gourl}/public" "$pkgdir/usr/share/themes/gogs/default"
  80. cp -r "$srcdir/build/src/${_gourl}/templates" "$pkgdir/usr/share/themes/gogs/default"
  81. install -Dm0644 "$pkgdir/usr/share/$_pkgname/conf/app.ini" "$pkgdir/srv/$_pkgname/conf/app.ini"
  82. install -Dm0644 "$srcdir/gogs.service" "$pkgdir/usr/lib/systemd/system/gogs.service"
  83. install -Dm0644 "$srcdir/build/src/${_gourl}/LICENSE" "$pkgdir/usr/share/licenses/$_pkgname"
  84. }