Arch PKGBUILDs for https://tangled.org/@tangled.org/core
arch
pkgbuild
1#!/usr/bin/bash
2set -eu
3cat << EOF > ${pkgbuild_path}/PKGBUILD
4_pkgname=knotserver
5_pkgver=${tag}
6pkgname=\${_pkgname/\-/\.}
7pkgdesc='git collaboration platform built on ATproto'
8pkgver=\${_pkgver/\-/\.}
9pkgrel=1
10license=(MIT)
11arch=(x86_64)
12url=https://tangled.org/@tangled.org/core
13depends=(git)
14conflicts=(knotserver-git)
15makedepends=(go)
16options=(strip !debug)
17install=\${_pkgname}.install
18source=("core-v\${_pkgver}.tar.gz::\${url}/archive/refs%2Ftags%2Fv\${_pkgver}"
19 \${_pkgname}.service
20 \${_pkgname}-sshd.conf
21 \${_pkgname}-tmpfiles.conf)
22sha256sums=('set by updpkgsums'
23 'set by updpkgsums'
24 'set by updpkgsums'
25 'set by updpkgsums')
26
27build() {
28 mkdir -p \${srcdir}/build
29
30 export CGO_ENABLED=1
31 export CGO_CPPFLAGS="\${CPPFLAGS}"
32 export CGO_CFLAGS="\${CFLAGS}"
33 export CGO_CXXFLAGS="\${CXXFLAGS}"
34 export CGO_LDFLAGS="\${LDFLAGS}"
35 export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
36
37 cd \${srcdir}/core-v\${_pkgver}
38 go build -ldflags "-X tangled.sh/tangled.sh/core/knotserver/xrpc.version=\${_pkgver}" -o "\${srcdir}/build/knot" ./cmd/knot
39}
40
41package() {
42 install -Dm644 "\${srcdir}/\${_pkgname}.service" "\${pkgdir}/usr/lib/systemd/system/\${_pkgname}.service"
43 install -Dm644 "\${srcdir}/\${_pkgname}-tmpfiles.conf" "\${pkgdir}/usr/lib/tmpfiles.d/\${_pkgname}.conf"
44 install -Dm644 "\${srcdir}/\${_pkgname}-sshd.conf" "\${pkgdir}/usr/lib/systemd/sshd_config.d/\${_pkgname}.conf"
45 install -Dm755 "\${srcdir}/build/knot" "\${pkgdir}/usr/bin/knot"
46 install -Dm644 "\${srcdir}/core-v\${_pkgver}/license" "\${pkgdir}/usr/share/licenses/tangled/knotserver.LICENSE"
47}
48EOF