summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorNanaka Hiira2024-12-15 21:26:25 +0900
committerNanaka Hiira2024-12-15 21:26:25 +0900
commit005edac531540c1531b52b06a7915777a98450fe (patch)
treee6ebc61dacf1d6d262615af5ef2bdd0bc137ddbc
downloadaur-005edac531540c1531b52b06a7915777a98450fe.tar.gz
initial commit
-rw-r--r--.SRCINFO28
-rw-r--r--.gitignore9
-rw-r--r--PKGBUILD62
-rw-r--r--concrnt-activitypub.hook9
-rw-r--r--concrnt-activitypub.install13
-rw-r--r--concrnt-activitypub.service29
-rw-r--r--concrnt-activitypub.tmpfiles3
7 files changed, 153 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..efe189df2eac
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,28 @@
+pkgbase = concrnt-activitypub
+ pkgdesc = Concrnt ActivityPub bridge module
+ pkgver = 0.3.1
+ pkgrel = 1
+ url = https://github.com/totegamma/concurrent
+ install = concrnt-activitypub.install
+ arch = x86_64
+ arch = aarch64
+ license = MIT
+ makedepends = go
+ depends = concrnt-gateway
+ source = concrnt-activitypub-0.3.1::https://github.com/concrnt/ccworld-ap-bridge/archive/refs/tags/v0.3.1.tar.gz
+ source = concrnt-activitypub.hook
+ source = concrnt-activitypub.install
+ source = concrnt-activitypub.service
+ source = concrnt-activitypub.tmpfiles
+ source = https://raw.githubusercontent.com/totegamma/concurrent/c14d20383ec642ba19a2f063709149a563d8a096/LICENSE
+ source = https://raw.githubusercontent.com/totegamma/concurrent/c14d20383ec642ba19a2f063709149a563d8a096/_docs/etc/config/apconfig.yaml
+ sha512sums = 191431c31d0592aaecb3e95dfdaa8bee61257733cbe5de1b43189f4f4ab8e293eac0c359df6befdc021b6aaff811e51e47abe25b1a5dbd3baf8a667bcfd47f2f
+ sha512sums = cb966ab96a7799bb603e80ce46a4e8446697e4fa5cc9002f065fb126e909ee68c030c2232ce75e355454f18862997282c3465b0456b14addcdfd93168506a99b
+ sha512sums = a30de37161dca32fb86dab319c39537f91a68d328ccfc765614bc742bc66ecc92e63f6bcd371af67f4e37a92b96c7f63d8e327c2be37be3c239f24955b2b25b8
+ sha512sums = 8b25307bc102e181bc04ad1c625385086506186203b39bb0c939e6bf9ccc9fb5397daaca8a740a1eff188cc582469bf54ff4548cb38ba8f76250ec35768c6c5c
+ sha512sums = 2ad3d6cbfc46e0c804ed7d8d93e4a9be3085c9a94c7cf4281ec571272e9f0e03f9e2b61a216dbf5af74252ec3f3e0eebeb7cb4705a87d4537987b28fbce15e22
+ sha512sums = 6991f0cdffef328c29368d987a46e2d12d765b743cad04ae4c89469e1644f11f079fb495e5297b79d521f88b40d6fb3c5b972279c95f394bdb07cf4a2037f412
+ sha512sums = 565b421ca79f47b58e0c5e9c6dbc3955e440ec6e35f708d3ad1b53701b3a6a817eb07b0bf1d2a960b8d01589133034b961fff7537d4ca9655506041ccb527f50
+
+pkgname = concrnt-activitypub
+ backup = etc/concrnt/config/apconfig.yaml
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..29702dc0647d
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,9 @@
+*
+
+!.gitignore
+!.SRCINFO
+!PKGBUILD
+!concrnt-activitypub.hook
+!concrnt-activitypub.service
+!concrnt-activitypub.tmpfiles
+!concrnt-activitypub.install
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..84296250cd19
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,62 @@
+# Maintainer: Nanaka Hiira <hiira plus archlinux at hiira dot dev>
+
+pkgname='concrnt-activitypub'
+pkgdesc='Concrnt ActivityPub bridge module'
+pkgver=0.3.1
+_pkgver=v${pkgver}
+pkgrel=1
+arch=('x86_64' 'aarch64')
+url="https://github.com/totegamma/concurrent"
+license=('MIT')
+depends=('concrnt-gateway')
+makedepends=('go')
+
+source=("${pkgname}-${pkgver}::https://github.com/concrnt/ccworld-ap-bridge/archive/refs/tags/${_pkgver}.tar.gz"
+ "concrnt-activitypub.hook"
+ "concrnt-activitypub.install"
+ "concrnt-activitypub.service"
+ "concrnt-activitypub.tmpfiles"
+ # same license as the main server
+ "https://raw.githubusercontent.com/totegamma/concurrent/c14d20383ec642ba19a2f063709149a563d8a096/LICENSE"
+ "https://raw.githubusercontent.com/totegamma/concurrent/c14d20383ec642ba19a2f063709149a563d8a096/_docs/etc/config/apconfig.yaml"
+)
+
+sha512sums=('191431c31d0592aaecb3e95dfdaa8bee61257733cbe5de1b43189f4f4ab8e293eac0c359df6befdc021b6aaff811e51e47abe25b1a5dbd3baf8a667bcfd47f2f'
+ 'cb966ab96a7799bb603e80ce46a4e8446697e4fa5cc9002f065fb126e909ee68c030c2232ce75e355454f18862997282c3465b0456b14addcdfd93168506a99b'
+ 'a30de37161dca32fb86dab319c39537f91a68d328ccfc765614bc742bc66ecc92e63f6bcd371af67f4e37a92b96c7f63d8e327c2be37be3c239f24955b2b25b8'
+ '8b25307bc102e181bc04ad1c625385086506186203b39bb0c939e6bf9ccc9fb5397daaca8a740a1eff188cc582469bf54ff4548cb38ba8f76250ec35768c6c5c'
+ '2ad3d6cbfc46e0c804ed7d8d93e4a9be3085c9a94c7cf4281ec571272e9f0e03f9e2b61a216dbf5af74252ec3f3e0eebeb7cb4705a87d4537987b28fbce15e22'
+ '6991f0cdffef328c29368d987a46e2d12d765b743cad04ae4c89469e1644f11f079fb495e5297b79d521f88b40d6fb3c5b972279c95f394bdb07cf4a2037f412'
+ '565b421ca79f47b58e0c5e9c6dbc3955e440ec6e35f708d3ad1b53701b3a6a817eb07b0bf1d2a960b8d01589133034b961fff7537d4ca9655506041ccb527f50')
+
+install="concrnt-activitypub.install"
+
+build() {
+ cd "${srcdir}/ccworld-ap-bridge-${pkgver}"
+
+ go mod download
+
+ export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
+ export CONCRNT_LDFLAGS="-s -w -X main.version=${_pkgver} -X \"main.buildMachine=$(uname -srmo)\" -X \"main.buildTime=$(date)\" -X \"main.goVersion=$(go version)\""
+
+ go build -ldflags="${CONCRNT_LDFLAGS}" -o ccactivitypub ./cmd
+}
+
+package() {
+ backup=('etc/concrnt/config/apconfig.yaml')
+
+ install -Dm755 "${srcdir}/ccworld-ap-bridge-${pkgver}/ccactivitypub" "${pkgdir}/usr/bin/ccactivitypub"
+ install -Dm644 "${srcdir}/concrnt-activitypub.service" "${pkgdir}/usr/lib/systemd/system/concrnt-activitypub.service"
+ install -Dm644 "${srcdir}/concrnt-activitypub.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/concrnt-activitypub.conf"
+ install -Dm644 "${srcdir}/concrnt-activitypub.hook" "${pkgdir}/usr/share/libalpm/hooks/concrnt-activitypub.hook"
+ install -Dm640 "${srcdir}/apconfig.yaml" "${pkgdir}/etc/concrnt/config/apconfig.yaml"
+ sed -i -E \
+ -e "s/([a-z]+):([0-9]+)/localhost:\2/g" \
+ -e "s/host=db/host=localhost/" \
+ -e "s/user=postgres/user=concrnt/" \
+ -e "s/password=postgres/user=concrnt/" \
+ -e "s/dbname=concurrent/dbname=concrnt/" \
+ "${pkgdir}/etc/concrnt/config/apconfig.yaml"
+
+ install -Dm644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/$pkgname/LICENSE"
+}
diff --git a/concrnt-activitypub.hook b/concrnt-activitypub.hook
new file mode 100644
index 000000000000..14a17cc55047
--- /dev/null
+++ b/concrnt-activitypub.hook
@@ -0,0 +1,9 @@
+[Trigger]
+Type = Package
+Operation = Upgrade
+Target = concrnt-activitypub
+
+[Action]
+Description = Restarting concrnt-activitypub...
+When = PostTransaction
+Exec = /bin/bash -c '/usr/bin/systemctl is-active concrnt-activitypub.service -q && /usr/bin/systemctl restart concrnt-activitypub.service || /usr/bin/true'
diff --git a/concrnt-activitypub.install b/concrnt-activitypub.install
new file mode 100644
index 000000000000..f3ba4fa752cd
--- /dev/null
+++ b/concrnt-activitypub.install
@@ -0,0 +1,13 @@
+post_install() {
+ echo
+ echo -e "\e[0;34;47m \e[0m"
+ echo -e "\e[1;34;47m *********** README: Concrnt ActivityPub *********** \e[0m"
+ echo -e "\e[0;32;47m Please configure \e[0;31;47m/etc/concrnt/config/apconfig.yaml \e[0m"
+ echo -e "\e[0;34;47m *************************************************** \e[0m"
+ echo -e "\e[0;32;47m The default port for concrnt-activitypub is \e[0;31;47m28284\e[0;32;47m \e[0m"
+ echo -e "\e[0;32;47m You can change the port and proxy settings using \e[0m"
+ echo -e "\e[0;31;47m systemctl edit --full concrnt-activitypub \e[0m"
+ echo -e "\e[0;34;47m *************************************************** \e[0m"
+ echo -e "\e[0;34;47m \e[0m"
+ echo
+}
diff --git a/concrnt-activitypub.service b/concrnt-activitypub.service
new file mode 100644
index 000000000000..3768f39c8aca
--- /dev/null
+++ b/concrnt-activitypub.service
@@ -0,0 +1,29 @@
+[Unit]
+Description=Concrnt ActivityPub bridge daemon
+
+Wants=concrnt-gateway.service postgresql.service redis.service memcached.service
+After=concrnt-gateway.service postgresql.service redis.service memcached.service
+
+[Service]
+Type=simple
+Restart=on-failure
+
+User=concrnt
+Group=concrnt
+
+SyslogIdentifier=concrnt-activitypub
+
+# Port config
+Environment="CC_AP_PORT=28284"
+
+# Proxy config (http, https or socks5)
+#Environment="http_proxy=http://proxy-server:3128"
+#Environment="https_proxy=http://proxy-server:3128"
+
+ExecStart=/usr/bin/ccactivitypub
+
+RestrictSUIDSGID=true
+RestrictNamespaces=true
+
+[Install]
+WantedBy=multi-user.target
diff --git a/concrnt-activitypub.tmpfiles b/concrnt-activitypub.tmpfiles
new file mode 100644
index 000000000000..bef90e2903e2
--- /dev/null
+++ b/concrnt-activitypub.tmpfiles
@@ -0,0 +1,3 @@
+z /etc/concrnt/config/apconfig.yaml 740 root concrnt -
+z /etc/concrnt/config 755 root concrnt -
+z /etc/concrnt/