summaryrefslogtreecommitdiff
path: root/opt/profanity/MAKEPKG
diff options
context:
space:
mode:
authorrawnix ports <ports@rawnix.org>2026-09-26 18:19:05 +0000
committerrawnix ports <ports@rawnix.org>2026-09-26 18:19:05 +0000
commitc82e88dd00d1b0b7fcfb4e5628d99611388cef6f (patch)
tree56d864b5a5c6c145edd96178ae219a8f90e191a6 /opt/profanity/MAKEPKG
downloadports-c82e88dd00d1b0b7fcfb4e5628d99611388cef6f.tar.gz
sync 2026-09-26 18:19 UTC
1672 files changed, 151396 insertions(+)
Diffstat (limited to 'opt/profanity/MAKEPKG')
-rw-r--r--opt/profanity/MAKEPKG71
1 files changed, 71 insertions, 0 deletions
diff --git a/opt/profanity/MAKEPKG b/opt/profanity/MAKEPKG
new file mode 100644
index 0000000..7148ad1
--- /dev/null
+++ b/opt/profanity/MAKEPKG
@@ -0,0 +1,71 @@
+#!/bin/mkpkg
+# description: Ncurses XMPP client with OMEMO support
+# url: https://profanity-im.github.io/
+
+name=profanity
+version=0.18.2
+release=3
+depends=(libstrophe ncurses glib curl readline sqlite libsignal-protocol-c libressl)
+makedeps=(meson)
+source=(https://github.com/profanity-im/profanity/releases/download/$version/$name-$version.tar.xz
+ crypto.c
+ crypto.h
+ openssl-crypto.patch
+ openssl-omemo-h.patch
+ openssl-omemo-c.patch
+ openssl-aesgcm-download.patch
+ omemo-publish-options.patch)
+
+sha256sums=(
+ "46964928742733fffcf8ca65d37ac0874c8ccd6270cbc065cb1013cee94e9e3b"
+ "98d10f3d50e89d1f564a68ff38b02080449aa3bcb4d2bc83db0f2dae75eef007"
+ "16f9e7ef3eeae11917e87eddad7705b296bad4cef0b30858d1a4f1e98463b71b"
+ "626783ffe584a69a05341884f30dd3032348b65a164a3769d2d953c4f51a2efe"
+ "3d38b7a7c720ab90e9eef6da343deab85dabc931fbf0216513b95bd91c20bc7d"
+ "4d25a38d95b537b3d037f8f523a8d8fc2970b31691b91716e0b1385f5a9bf4a7"
+ "7acb0733d32ad10e6cb2aff0d9ea22109f601ad0031ea36a9ed38a43f7bc50a2"
+ "94c46b027928bc88c76ec3249f246e9e45760f518c39d1dae3d8ff4de0fd66b0"
+)
+
+patch() {
+ cd $name-$version
+
+ # Replace gcrypt with openssl in meson build
+ patch -p1 < $SRC/openssl-crypto.patch
+
+ # Replace omemo crypto backend with OpenSSL implementation
+ cp $SRC/crypto.c src/omemo/crypto.c
+ cp $SRC/crypto.h src/omemo/crypto.h
+
+ # Patch remaining gcrypt references
+ patch -p1 < $SRC/openssl-omemo-h.patch
+ patch -p1 < $SRC/openssl-omemo-c.patch
+ patch -p1 < $SRC/openssl-aesgcm-download.patch
+
+ # Publish OMEMO bundle and devicelist with publish-options even when the
+ # server domain does not advertise them (the account's own PEP does)
+ patch -p1 < $SRC/omemo-publish-options.patch
+}
+
+build() {
+ cd $name-$version
+
+ CC=clang CXX=clang++ meson setup build \
+ --prefix=/usr \
+ --mandir=/usr/share/man \
+ --buildtype=release \
+ -D omemo=enabled \
+ -D omemo-backend=libsignal
+
+ meson compile -C build
+ DESTDIR=$PKG meson install -C build
+
+}
+
+signify() {
+ untrusted comment: public key
+ RWTZ9IduCSQ/mL8337TEUinPwT92xFEUpD92hkS7IxcOnzTt9QdpohT3
+}
+
+# vim: filetype=sh
+