# Maintainer: Amir Zarrinkafsh pkgname=authelia pkgver=4.38.8 pkgrel=1 pkgdesc="The Cloud ready multi-factor authentication portal for your Apps." arch=('x86_64' 'aarch64' 'armv7h') url="https://github.com/authelia/authelia" license=('Apache-2.0') makedepends=( 'curl' 'gcc' 'go' 'jq' 'nodejs' 'pnpm' ) conflicts=( 'authelia-bin' 'authelia-git' ) backup=('etc/authelia/configuration.yml') source=("${pkgname}-${pkgver}.tar.gz::https://github.com/${pkgname}/${pkgname}/archive/v${pkgver}.tar.gz") sha256sums=('fdc9965e2318dada4b41c88b315d4618c297a771a50ed8b21cae06d797932e5d') build() { export GOPATH="$srcdir/gopath" PATH="$PATH:$srcdir/gopath/bin" _pkgver="v${pkgver}" CGO_CPPFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector-strong" CGO_LDFLAGS="-Wl,-z,relro,-z,now" cd "$srcdir/$pkgname-$pkgver/web" COMMIT=$(curl -s https://api.github.com/repos/authelia/authelia/tags | jq -r '.[] | select(.name==env._pkgver) | .commit.sha') TAG=v${pkgver} STATE="tagged clean" DATE=$(date +"%a, %d %b %Y %R:%S %z") XOPTIONS="-X 'github.com/authelia/authelia/v4/internal/utils.BuildBranch=v${pkgver}' -X 'github.com/authelia/authelia/v4/internal/utils.BuildTag=${TAG}' -X 'github.com/authelia/authelia/v4/internal/utils.BuildCommit=${COMMIT}' -X 'github.com/authelia/authelia/v4/internal/utils.BuildDate=${DATE}' -X 'github.com/authelia/authelia/v4/internal/utils.BuildState=${STATE}' -X 'github.com/authelia/authelia/v4/internal/utils.BuildNumber=AUR'" pnpm install --no-frozen-lockfile --ignore-scripts pnpm build cd .. cp -R api internal/server/public_html/ go build \ -trimpath \ -buildmode=pie \ -mod=readonly \ -modcacherw \ -ldflags "-linkmode external -s -w ${XOPTIONS}" \ -o authelia \ cmd/authelia/*.go } package() { install -Dm644 "${srcdir}/${pkgname}-${pkgver}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" install -Dm700 "${srcdir}/${pkgname}-${pkgver}/config.template.yml" "${pkgdir}/etc/${pkgname}/configuration.yml" install -Dm755 "${srcdir}/${pkgname}-${pkgver}/${pkgname}" "${pkgdir}/usr/bin/${pkgname}" }