addpkg: soju 0.3.0-1
This commit is contained in:
parent
878a9d6252
commit
006d3b4fad
4 changed files with 126 additions and 0 deletions
110
soju/PKGBUILD
Normal file
110
soju/PKGBUILD
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
# Maintainer: Thorben Günther <echo YWRtaW5AeGVucm94Lm5ldAo= | base64 -d>
|
||||||
|
|
||||||
|
pkgbase=soju
|
||||||
|
pkgname=('soju' 'soju-znc-import')
|
||||||
|
pkgver=0.3.0
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="A user-friendly IRC bouncer"
|
||||||
|
arch=('x86_64')
|
||||||
|
url="https://soju.im"
|
||||||
|
license=('AGPL3')
|
||||||
|
makedepends=('go' 'scdoc')
|
||||||
|
source=(
|
||||||
|
"https://git.sr.ht/~emersion/soju/refs/download/v$pkgver/$pkgname-$pkgver.tar.gz"{,.sig}
|
||||||
|
'systemd.service'
|
||||||
|
'sysusers.conf'
|
||||||
|
'tmpfiles.conf'
|
||||||
|
)
|
||||||
|
sha512sums=('9507be35a91fb6fdf96b657f6c5142acba49ee36e4a0de4d060604949f4336db49a79c70038ceebb04354595c5eeb3c7c8f080a458a743335eb7130065775946'
|
||||||
|
'SKIP'
|
||||||
|
'8304fb401114d51714841983c5b96b01d63dab3117733ffab2a469aa6f677e128892434accfdd3298df28eb585f2275798eb9c10f6fec715f33e8bcff30b0d7d'
|
||||||
|
'dcd7d35aa61a494cab84c31be57fe3db65a5f1efb06319f9cf3e1f2084dad49f75fdda37b5741faa3a7c1d0a282990ccbc87612895d35aa1773c80487d19019c'
|
||||||
|
'b5be4beda3411ad7e9035430d0fa9b02d71f15890a921f9bacb32216d727db5765b15d99ac804670e9052ecb5968c2494f5c10b88d3421960133f8b7962a77a4')
|
||||||
|
b2sums=('506f7ee78834c21d0909fa093f756760ed9c0d8fa51c62986d4728c6d2e761df7a90684fa0aaa3dabda22a80672da5e72b96196ac95b6779fc581448c4e1143b'
|
||||||
|
'SKIP'
|
||||||
|
'aaddf3018723b2dbfd8a54921696bed761a9017adf785167db9a4a329cfad987dfe0063c2d4ce5c7531a7b371b4a8a297200149559523643ce0f0183ed04c96d'
|
||||||
|
'260be525b83bb695c45c3007bbd54f6732cc54af54d56335001db53d962a7a6f9293e7ba1e7e6f86b3d729ab97fd3ce04ebedd4376d53902ec77976fc9c60042'
|
||||||
|
'b9d005ebf14aede222239daa73d91b9af55d7383069ee4525ddd5cf795b8e28eca68d8f707de3a55dee024107bbf4a0727b680c0b8bb229c210be6fa50a762e3')
|
||||||
|
validpgpkeys=('34FF9526CFEF0E97A340E2E40FDE7BE0E88F5E48')
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
cd "$pkgbase-$pkgver"
|
||||||
|
|
||||||
|
# create directory for build output
|
||||||
|
mkdir build
|
||||||
|
|
||||||
|
# download dependencies
|
||||||
|
go mod download
|
||||||
|
}
|
||||||
|
|
||||||
|
build() {
|
||||||
|
cd "$pkgbase-$pkgver"
|
||||||
|
|
||||||
|
# set Go flags
|
||||||
|
export CGO_CPPFLAGS="${CPPFLAGS}"
|
||||||
|
export CGO_CFLAGS="${CFLAGS}"
|
||||||
|
export CGO_CXXFLAGS="${CXXFLAGS}"
|
||||||
|
|
||||||
|
local GO_BLD_FLAGS=(
|
||||||
|
-v
|
||||||
|
-trimpath
|
||||||
|
-buildmode=pie
|
||||||
|
-mod=readonly
|
||||||
|
-modcacherw
|
||||||
|
-ldflags "-linkmode external -extldflags ${LDFLAGS}"
|
||||||
|
)
|
||||||
|
|
||||||
|
# binaries
|
||||||
|
go build \
|
||||||
|
"${GO_BLD_FLAGS[@]}" \
|
||||||
|
-o build \
|
||||||
|
./cmd/...
|
||||||
|
|
||||||
|
go build \
|
||||||
|
"${GO_BLD_FLAGS[@]}" \
|
||||||
|
-o build/soju-znc-import \
|
||||||
|
./contrib/znc-import.go
|
||||||
|
|
||||||
|
# man page
|
||||||
|
scdoc < doc/soju.1.scd > build/soju.1
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
cd "$pkgbase-$pkgver"
|
||||||
|
go test -v ./...
|
||||||
|
}
|
||||||
|
|
||||||
|
package_soju() {
|
||||||
|
pkgdesc="A user-friendly IRC bouncer"
|
||||||
|
depends=('glibc')
|
||||||
|
optdepends=('postgresql: PostgreSQL support')
|
||||||
|
backup=('etc/soju/config')
|
||||||
|
|
||||||
|
# systemd integration
|
||||||
|
install -vDm644 systemd.service "$pkgdir/usr/lib/systemd/system/$pkgname.service"
|
||||||
|
install -vDm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
|
||||||
|
install -vDm644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
|
||||||
|
|
||||||
|
cd "$pkgbase-$pkgver"
|
||||||
|
|
||||||
|
# binaries
|
||||||
|
install -vDm755 -t "$pkgdir/usr/bin" build/soju{,ctl}
|
||||||
|
|
||||||
|
# documentation
|
||||||
|
install -vDm644 -t "$pkgdir/usr/share/man/man1" build/soju.1
|
||||||
|
find . \
|
||||||
|
-type f \
|
||||||
|
-name "*.md" \
|
||||||
|
-exec install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" "{}" +
|
||||||
|
|
||||||
|
# configuration
|
||||||
|
install -vDm644 config.in "$pkgdir/etc/soju/config"
|
||||||
|
}
|
||||||
|
|
||||||
|
package_soju-znc-import() {
|
||||||
|
pkgdesc="A tool to migrate configuration from ZNC to soju"
|
||||||
|
depends=('glibc')
|
||||||
|
|
||||||
|
cd "$pkgbase-$pkgver"
|
||||||
|
install -vDm755 -t "$pkgdir/usr/bin" "build/$pkgname"
|
||||||
|
}
|
13
soju/systemd.service
Normal file
13
soju/systemd.service
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
[Unit]
|
||||||
|
Description=soju IRC bouncer service
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=soju
|
||||||
|
Restart=always
|
||||||
|
ExecStart=/usr/bin/soju --config /etc/soju/config
|
||||||
|
ExecReload=/bin/kill -HUP $MAINPID
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
1
soju/sysusers.conf
Normal file
1
soju/sysusers.conf
Normal file
|
@ -0,0 +1 @@
|
||||||
|
u soju - "soju user" /var/lib/soju
|
2
soju/tmpfiles.conf
Normal file
2
soju/tmpfiles.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
d /var/lib/soju 0750 soju soju -
|
||||||
|
d /var/lib/soju/logs 0750 soju soju -
|
Loading…
Reference in a new issue