PKGBUILDs/community/gitea/PKGBUILD
2020-09-13 18:18:45 +00:00

81 lines
3.2 KiB
Bash

# Maintainer: Bruno Pagani <archange@archlinux.org>
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# Contributor: Frederik Schwan <frederik dot schwan at linux dot com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - reduce go garbage collection memory usage with GOGC=50
# - don't check repo signature until author puts his keys on keyservers
pkgname=gitea
pkgver=1.12.4
pkgrel=2
pkgdesc="Painless self-hosted Git service. Community managed fork of Gogs."
arch=(x86_64)
url="https://gitea.io"
license=(MIT)
depends=(git)
makedepends=(go nodejs npm)
optdepends=(
'mariadb: MariaDB support'
'memcached: MemCached support'
'openssh: GIT over SSH support'
'pam: Authentication via PAM support'
'postgresql: PostgreSQL support'
'redis: Redis support'
'sqlite: SQLite support'
)
backup=('etc/gitea/app.ini')
_tag=e65ff65e02fd77bb21c68724e3c682b84ad835dd # git rev-parse v${pkgver}
source=("git+https://github.com/go-gitea/gitea.git#tag=${_tag}"
gitea.tmpfiles
gitea.service
gitea.sysusers
gitea-arch-defaults.patch)
sha256sums=('SKIP'
'1521fd7edc3830c695698ffe9835709f1408040b5ec989f07410972c894fa8ba'
'3ad603263c6e79c5ab35ed37a3c45115b0af97c8beb027d2fbe7fa5cfa34b2eb'
'7e7b798b8ce035c1fb55993ece41c5efb6cad5922708866804fa50ada0cf9fa5'
'33ef77053a6bc8e2f5d9b62c92681909858d78356dfc7970616c42ad1dc60c57')
validpgpkeys=(
8C4033A23895237CB27D52D9D9B5613BEB813F99 # Matti Ranta <matti@mdranta.net> old RSA2048, retrieved from https://github.com/techknowlogick.gpg
B56E3C7437A49E136862F5DE9D8A57ADAA232E95 # Matti Ranta <matti@mdranta.net> new RSA4096, retrieved from https://github.com/techknowlogick.gpg
ED810FD31FBE67F406ED71BDD4F1E9B6493ED946 # Jonas Franz <info@jonasfranz.software>
9C5BCD799B3CDB124147A748E0DDFEC24C48784C # Lauris Bukšis-Haberkorns <lauris@nix.lv>
D8F9672D77C0BB60A024C23EDFDE60A0093EB926 # Lauris Bukšis-Haberkorns <lauris@nix.lv> new RSA4096
BA66F67FD73F7058D712D308C3B7C91B632F738A # Lunny Xiao <xiaolunwen@gmail.com>, retrieved from https://github.com/lunny.gpg
) # Lunny Xiao <xiaolunwen@gmail.com>, retrieved from https://github.com/lunny.gpg
prepare() {
cd ${pkgname}
# Change some defaults for ArchLinux
patch -Np1 -i ../gitea-arch-defaults.patch
# Fetch dependency using go mod
make vendor
}
pkgver() {
cd ${pkgname}
git describe --tags | sed 's/^v//'
}
build() {
cd ${pkgname}
export GOGC=50
export CGO_CPPFLAGS="${CPPFLAGS}"
export CGO_CFLAGS="${CFLAGS}"
export CGO_CXXFLAGS="${CXXFLAGS}"
export CGO_LDFLAGS="${LDFLAGS}"
export EXTRA_GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
export LDFLAGS="-X 'code.gitea.io/gitea/modules/setting.AppWorkPath=/var/lib/gitea/'"
export TAGS="bindata sqlite sqlite_unlock_notify pam"
make -j1
}
package() {
install -Dm755 ${pkgname}/${pkgname} -t "${pkgdir}"/usr/bin/
install -Dm644 ${pkgname}/LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/
install -Dm644 ${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/
install -Dm644 ${pkgname}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
install -Dm644 ${pkgname}.sysusers "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
install -D ${pkgname}/custom/conf/app.ini.sample "${pkgdir}"/etc/gitea/app.ini
}