PKGBUILDs/gitea/default/PKGBUILD

104 lines
3.8 KiB
Bash
Raw Normal View History

2017-06-16 22:51:17 +02:00
# Maintainer: Martchus <martchus@gmx.net>
# Contributor: Thomas Fanninger <thomas@fanninger.at>
# Contributor: Thomas Laroche <tho.laroche@gmail.com>
_pkgname=gitea
_orga=go-${_pkgname}
_gourl=code.$_pkgname.io/$_pkgname
_userid=521
2017-06-16 22:51:17 +02:00
pkgname=${_pkgname}
2017-09-04 18:49:49 +02:00
pkgver=1.1.4
pkgrel=2
2017-06-16 22:51:17 +02:00
#epoch=
pkgdesc='Self Hosted Git Service written in Go'
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
2017-06-16 22:51:17 +02:00
url="https://$_pkgname.io"
license=('MIT')
depends=('git>=1.7.1')
optdepends=('sqlite: SQLite support'
'mariadb: MariaDB support'
'postgresql: PostgreSQL support'
'redis: Redis support'
'memcached: MemCached support'
'openssh: GIT over SSH support')
makedepends=('go>=1.3')
conflicts=("$_pkgname-bin" "$_pkgname-git" "$_pkgname-dev-git")
options=('!strip')
2017-06-16 22:51:17 +02:00
backup=("etc/$_pkgname/app.ini")
source=("$_pkgname-$pkgver::https://github.com/$_orga/$_pkgname/archive/v${pkgver}.tar.gz"
'0001-Adjust-config-for-Arch-Linux-package.patch'
'0002-Adjust-service-file-for-Arch-Linux-package.patch')
2017-09-04 18:49:49 +02:00
sha512sums=('4427c4c1a588dcf201f707c3e2827fd702a0f8c0add63c6a5eff0d6ef8d21fdaaaf275f8e790017751f161431d563df22f71a6ea046085f9fb1d57da99f20524'
2017-06-16 22:51:17 +02:00
'2885691d8f35ecb72e3a1d5a52708209715b537a0afef1147f32d10c188b1bbb067fd3db7c034273a5499a46f9fbb3310004fcf67eda1797dd193eef5a81460b'
'5ea1d89809427fe395214c5dde88bdb4c4a62e2d19f9da7fa480a0a3cfaaaf2e97c906bd3dceb11676c9720896d72a73f48638411389fa1f07fcbc17e94e0545')
_goroot='/usr/lib/go'
prepare() {
export GOROOT="$_goroot"
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"
2017-06-17 13:01:34 +02:00
mkdir -p "$GOPATH/src/${_gourl%/$_pkgname}"
mv "$srcdir/$_pkgname-${pkgver}" "$GOPATH/src/${_gourl}"
2017-06-16 22:51:17 +02:00
msg2 'Patch config and service file'
cd "$GOPATH/src/${_gourl}"
patch -Np1 -i "$srcdir/0001-Adjust-config-for-Arch-Linux-package.patch"
patch -Np1 -i "$srcdir/0002-Adjust-service-file-for-Arch-Linux-package.patch"
}
build() {
2017-06-17 13:01:34 +02:00
export GOROOT="$srcdir/build/go"
export GOPATH="$srcdir/build"
2017-06-16 22:51:17 +02:00
cd "$GOPATH/src/${_gourl}"
go fix
go build -x -ldflags="-s -w" -tags='sqlite pam cert'
echo "u $_pkgname $_userid \"$_pkgname user\" /var/lib/$_pkgname" > "$srcdir/$_pkgname.sysusers"
echo "#!/usr/bin/bash
if [[ \$USER != $_pkgname ]]; then
echo \"Must run as user $_pkgname!\"
exit -1
fi
export GOGS_CUSTOM=/var/lib/$_pkgname/custom
/usr/bin/$_pkgname backup --config /etc/$_pkgname/app.ini \$@" > "$srcdir/$_pkgname-backup.sh"
2017-06-16 22:51:17 +02:00
}
package() {
install -Dm0755 "$srcdir/build/src/${_gourl}/$_pkgname" "$pkgdir/usr/bin/$_pkgname"
install -Dm0755 "$srcdir/$_pkgname-backup.sh" "$pkgdir/usr/bin/$_pkgname-backup"
2017-06-16 22:51:17 +02:00
mkdir -p "$pkgdir/usr/share/${_pkgname}"
cp -r "$srcdir/build/src/${_gourl}/conf" "$pkgdir/usr/share/${_pkgname}"
cp -r "$srcdir/build/src/${_gourl}/public" "$pkgdir/usr/share/${_pkgname}"
cp -r "$srcdir/build/src/${_gourl}/templates" "$pkgdir/usr/share/${_pkgname}"
install -Dm0664 -g "$_userid" "$pkgdir/usr/share/$_pkgname/conf/app.ini" "$pkgdir/etc/$_pkgname/app.ini"
2017-06-16 22:51:17 +02:00
install -Dm0644 "$srcdir/build/src/${_gourl}/scripts/systemd/$_pkgname.service" "$pkgdir/usr/lib/systemd/system/$_pkgname.service"
install -Dm0644 "$srcdir/build/src/${_gourl}/LICENSE" "$pkgdir/usr/share/licenses/$_pkgname"
install -Dm0644 "${srcdir}/$_pkgname.sysusers" "${pkgdir}/usr/lib/sysusers.d/$_pkgname.conf"
install -dm0700 -o "$_userid" -g "$_userid" "$pkgdir/var/lib/$_pkgname"
install -dm0700 -o "$_userid" -g "$_userid" "$pkgdir/var/log/$_pkgname"
for subdir in avatars repos certs data/sessions data/tmp; do
install -dm0700 -o "$_userid" -g "$_userid" "$pkgdir/var/lib/$_pkgname/$subdir"
done
2017-06-16 22:51:17 +02:00
}