~xenrox/personal-packages

9d65c10e686ef352415f7c905f06bb906db47123 — Thorben Günther 2 years ago cb2ac08
Add packages for 10man
A 10man-api/10man-api.service => 10man-api/10man-api.service +13 -0
@@ 0,0 1,13 @@
[Unit]
Description=10man API service
Requires=postgresql.service
After=postgresql.service network.target

[Service]
Type=simple
User=tenman
Restart=always
ExecStart=/usr/bin/10man-api

[Install]
WantedBy=multi-user.target

A 10man-api/PKGBUILD => 10man-api/PKGBUILD +42 -0
@@ 0,0 1,42 @@
# Maintainer: Thorben Günther <echo YWRtaW5AeGVucm94Lm5ldAo= | base64 -d>

pkgname=10man-api
pkgver=0.1.0
pkgrel=2
pkgdesc='GraphQL API for 10man'
arch=('x86_64')
url='https://hub.xenrox.net/~xenrox/10man/'
license=('AGPL3')
depends=('postgresql')
makedepends=('go')
source=(
    "$pkgname-$pkgver.tar.gz::https://git.xenrox.net/~xenrox/${pkgname}/archive/${pkgver}.tar.gz"
    "10man-api.service"
    "sysusers.conf"
)
sha256sums=('6b55c87623d151b5054549380e45660c091015979f3c206b68572576000507cb'
            'bc8675dd3b27d40e4b782941c27905ecf9379c014fc838b6d6d9154319b8f72a'
            'e42f2f5623992721890f62f9d82e53c7321cd68c7cc6d5c36b28e705640309e7')

check() {
    cd "$srcdir/$pkgname-$pkgver"
    go test ./...
}

build() {
    cd "$srcdir/$pkgname-$pkgver"
    export CGO_LDFLAGS="${LDFLAGS}"
    export CGO_CFLAGS="${CFLAGS}"
    export CGO_CPPFLAGS="${CPPFLAGS}"
    export CGO_CXXFLAGS="${CXXFLAGS}"
    export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"

    go build -o 10man-api
}

package() {
    cd "$srcdir/$pkgname-$pkgver"
    install -Dm755 10man-api "$pkgdir"/usr/bin/10man-api
    install -Dm644 ../10man-api.service -t "$pkgdir"/usr/lib/systemd/system/
    install -Dm644 ../sysusers.conf "$pkgdir"/usr/lib/sysusers.d/10man.conf
}

A 10man-api/sysusers.conf => 10man-api/sysusers.conf +1 -0
@@ 0,0 1,1 @@
u   tenman   -   "10man user"

A 10man-ts3/10man-ts3.service => 10man-ts3/10man-ts3.service +13 -0
@@ 0,0 1,13 @@
[Unit]
Description=10man API service
Requires=10man-api.service teamspeak3-server.service
After=10man-api.service teamspeak3-server.service network.target

[Service]
Type=simple
User=tenman
Restart=always
ExecStart=/usr/bin/node /var/lib/10man-ts3/app.js

[Install]
WantedBy=multi-user.target

A 10man-ts3/PKGBUILD => 10man-ts3/PKGBUILD +31 -0
@@ 0,0 1,31 @@
# Maintainer: Thorben Günther <echo YWRtaW5AeGVucm94Lm5ldAo= | base64 -d>

pkgname=10man-ts3
pkgver=0.1.0
pkgrel=1
pkgdesc='TS3 bot for 10man'
arch=('x86_64')
url='https://hub.xenrox.net/~xenrox/10man/'
license=('AGPL3')
depends=('nodejs' '10man-api' 'teamspeak3-server')
makedepends=('npm' 'typescript')
source=(
    "$pkgname-$pkgver.tar.gz::https://git.xenrox.net/~xenrox/${pkgname}/archive/${pkgver}.tar.gz"
    "10man-ts3.service"
)
sha256sums=('7d597046fcefdcda995cca221aec48f936ad19e723e0a329749da9be0ec3fa73'
            '99b6a5bad715945fd6ffb6ee0a40fb650f9cede04cf9cd13f4614912beab2b4e')

build() {
    cd "$srcdir/$pkgname-$pkgver"
    npm install
    tsc
}

package() {
    install -dm755 "$pkgdir"/var/lib/10man-ts3
    cp -r "$srcdir/$pkgname-$pkgver/"* "$pkgdir"/var/lib/10man-ts3

    cd "$srcdir"
    install -Dm644 10man-ts3.service -t "$pkgdir"/usr/lib/systemd/system/
}