PKGBUILD 3.2 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=develop
  6. pkgver=3879.3c0c7a9
  7. pkgrel=4
  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. provides=('gogs')
  14. depends=('git>=1.7.1')
  15. optdepends=('sqlite: SQLite support'
  16. 'mariadb: MariaDB support'
  17. 'postgresql: PostgreSQL support'
  18. 'redis: Redis support'
  19. 'memcached: MemCached support'
  20. 'openssh: GIT over SSH support'
  21. 'tidb-git: TiDB support')
  22. makedepends_i686=('go>=1.3' 'git>=1.7.1' 'patch' 'glide-bin')
  23. makedepends_x86_64=('go>=1.3' 'git>=1.7.1' 'patch' 'glide-bin')
  24. makedepends_armv6h=('go>=1.3' 'git>=1.7.1' 'patch' 'glide-git')
  25. makedepends_armv7h=('go>=1.3' 'git>=1.7.1' 'patch' 'glide-git')
  26. conflicts=('gogs-bin' 'gogs' 'gogs-git')
  27. options=('!strip' '!emptydirs')
  28. backup=('srv/gogs/conf/app.ini')
  29. install=gogs.install
  30. _gourl=github.com/gogits/$_pkgname
  31. source=('gogs.service.patch'
  32. 'app.ini.patch'
  33. "$_pkgname::git+https://${_gourl}.git#branch=${_branch}")
  34. sha512sums=(db36fd44c29de387b066e52a71a61214aa876a27574eb054ec9517a175b5a47db9a7de01be2dd635023a11d5e1224772a66accc4b63b6936f7c58e6314555a66
  35. 43c8971b0b4e8ea8d5aa0ed15610e9737605dc46a626d3d578bb1c97c9f90912966f59b452e9f4ea7974e4e3beaa5dd40bc597b03319afed3358432ab6e59c7d
  36. 'SKIP')
  37. _goroot="/usr/lib/go"
  38. pkgver(){
  39. cd "$srcdir/../$_pkgname"
  40. echo $(git rev-list --count HEAD).$(git rev-parse --short HEAD)
  41. }
  42. prepare() {
  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. # Glide
  62. msg2 "Download dependencies via Glide"
  63. cd $GOPATH/src/${_gourl}
  64. glide install
  65. # Execute patch
  66. msg2 "Execute patches"
  67. patch -Np1 -i "$srcdir/app.ini.patch" "$GOPATH/src/${_gourl}/conf/app.ini"
  68. patch -Np1 -i "$srcdir/gogs.service.patch" "$GOPATH/src/${_gourl}/scripts/systemd/gogs.service"
  69. }
  70. build() {
  71. cd $GOPATH/src/${_gourl}
  72. msg2 "Build program"
  73. go fix
  74. go build -x -tags='sqlite pam cert'
  75. }
  76. package() {
  77. install -Dm0755 "$srcdir/build/src/${_gourl}/$_pkgname" "$pkgdir/usr/share/$_pkgname/$_pkgname"
  78. cp -r "$srcdir/build/src/${_gourl}/conf" "$pkgdir/usr/share/$_pkgname"
  79. mkdir -p "$pkgdir/usr/share/themes/gogs/default/"
  80. cp -r "$srcdir/build/src/${_gourl}/public" "$pkgdir/usr/share/themes/gogs/default"
  81. cp -r "$srcdir/build/src/${_gourl}/templates" "$pkgdir/usr/share/themes/gogs/default"
  82. install -Dm0644 "$pkgdir/usr/share/$_pkgname/conf/app.ini" "$pkgdir/srv/$_pkgname/conf/app.ini"
  83. install -Dm0644 "$srcdir/build/src/${_gourl}/scripts/systemd/gogs.service" "$pkgdir/usr/lib/systemd/system/gogs.service"
  84. install -Dm0644 "$srcdir/build/src/${_gourl}/LICENSE" "$pkgdir/usr/share/licenses/$_pkgname"
  85. }