Re: profanity port outdated please help

Martijn van Duren <[email protected]>
Newsgroups gmane.os.openbsd.ports
Message-ID <[email protected]>
On 7/17/26 04:02, Kolton wrote:
> Hi the CLI xmpp client profanity is outdated and has some bugs that were resolved in the latest version does anyone know how i can update it thanks so much

Apparently they updated their whole build system.
Here's a lightly tested diff to 0.18.2.

martijn@

diff refs/heads/master refs/heads/profanity/18.2
commit - 4a157d161983efe23a00a008f61a820d7039fb12
commit + 8af356c856c644ea595cc9fefc4c481cb1614099
blob - 393175c2f08e66032f18673d949a3ba4505da581
blob + 8c37b91e6cf1f3fa8b61b811e7f97910d888acbc
--- net/profanity/Makefile
+++ net/profanity/Makefile
@@ -1,8 +1,11 @@
 COMMENT =	console based XMPP client
-DISTNAME =	profanity-0.15.1
-REVISION =	0
 CATEGORIES =	net
 
+GH_ACCOUNT =	profanity-im
+GH_PROJECT =	profanity
+GH_TAGNAME =	0.18.2
+EXTRACT_SUFX =	.tar.xz
+
 HOMEPAGE =	https://profanity-im.github.io/
 
 MAINTAINER =	Omar Polo <[email protected]>
@@ -12,14 +15,13 @@ SHARED_LIBS +=  profanity                 1.0 # 0.0
 # GPLv3+
 PERMIT_PACKAGE =	Yes
 
-SITES =		https://profanity-im.github.io/tarballs/
-
 WANTLIB += assuan c crypto curl curses ereadline expat ffi gcrypt
 WANTLIB += gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 gpg-error
 WANTLIB += gpgme iconv intl m nghttp2 nghttp3 ngtcp2 ngtcp2_crypto_libressl
 WANTLIB += otr pcre2-8 pthread ${MODPY_WANTLIB} qrencode signal-protocol-c
 WANTLIB += sqlite3 ssl strophe util z
 
+MODULES	+=	devel/meson
 MODULES +=	lang/python
 
 LIB_DEPENDS +=	databases/sqlite3 \
@@ -38,29 +40,26 @@ BUILD_DEPENDS +=	devel/cmocka
 
 USE_GMAKE = Yes
 
-CONFIGURE_STYLE =	autoconf
-AUTOCONF_VERSION =	2.72
 SEPARATE_BUILD =	Yes
 
 CONFIGURE_ENV =	CPPFLAGS="-I${LOCALBASE}/include" \
 		LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib"
 
-CONFIGURE_ARGS +=	--with-xscreensaver=no \
-			--enable-gdk-pixbuf=no \
-			--enable-icons-and-clipboard=no \
-			--enable-notifications=no \
-			--enable-plugins=yes \
-			--enable-omemo=yes \
-			--enable-otr=yes
+CONFIGURE_ARGS +=	-Dxscreensaver=disabled \
+			-Dgdk-pixbuf=disabled \
+			-Dicons-and-clipboard=disabled \
+			-Dnotifications=disabled \
+			-Dc-plugins=enabled \
+			-Dpython-plugins=enabled \
+			-Domemo=enabled \
+			-Domemo-qrcode=enabled \
+			-Dotr=enabled
 
 MAKE_FLAGS =	CC="${CC}" \
 		CFLAGS="${CFLAGS}"
 
 DEBUG_PACKAGES =	${BUILD_PACKAGES}
 
-post-patch:
-	${SUBST_CMD} ${WRKSRC}/configure.ac
-
 post-install:
 	${INSTALL_DATA_DIR} ${PREFIX}/share/examples/profanity/
 	${INSTALL_DATA} ${WRKSRC}/profrc.example ${PREFIX}/share/examples/profanity/
blob - 5ad004d7f4fc71c6626cd8d049894fa709c46b1e
blob + a7443507205359e48785478d4b6235c61621514b
--- net/profanity/distinfo
+++ net/profanity/distinfo
@@ -1,2 +1,2 @@
-SHA256 (profanity-0.15.1.tar.gz) = weKKhJqheP0exfOEsPi90kS85FPcTve7dtCDA4L+wwQ=
-SIZE (profanity-0.15.1.tar.gz) = 988721
+SHA256 (profanity-0.18.2.tar.xz) = RpZJKHQnM//8+Mpl03rAh0yMzWJwy8BlyxATzulOnjs=
+SIZE (profanity-0.18.2.tar.xz) = 441308
blob - 51254b290f4d0f4828bd18fdf093ec4b61b5bc4c (mode 644)
blob + /dev/null
--- net/profanity/patches/patch-configure_ac
+++ /dev/null
@@ -1,29 +0,0 @@
-Use ${MODPY_VERSION} to pick up the correct python .pc file
-Use ${LOCALBASE} instead of hard-coded /usr/local
-
-Index: configure.ac
---- configure.ac.orig
-+++ configure.ac
-@@ -110,7 +110,7 @@ elif test "x$enable_python_plugins" != xno; then
-         rm -f Python.framework
-         ln -s $PYTHON_FRAMEWORK Python.framework ])
-     PKG_CHECK_MODULES([python], [python-embed], [PYTHON_CONFIG_EXISTS=yes], [PYTHON_CONFIG_EXISTS=no])
--    PKG_CHECK_MODULES([python], [python3-embed], [PYTHON3_CONFIG_EXISTS=yes; AC_DEFINE(PY_IS_PYTHON3, [1], [Is Python version 3])], [PYTHON3_CONFIG_EXISTS=no])
-+    PKG_CHECK_MODULES([python], [python-${MODPY_VERSION}-embed], [PYTHON3_CONFIG_EXISTS=yes; AC_DEFINE(PY_IS_PYTHON3, [1], [Is Python version 3])], [PYTHON3_CONFIG_EXISTS=no])
-     if test "$PYTHON_CONFIG_EXISTS" = "yes" || test "$PYTHON3_CONFIG_EXISTS" = "yes"; then
-         AM_CONDITIONAL([BUILD_PYTHON_API], [true])
-         AC_DEFINE([HAVE_PYTHON], [1], [Python support])
-@@ -229,10 +229,10 @@ AS_IF([test "x$PLATFORM" = xosx],
-         [AC_MSG_ERROR([libreadline is required for profanity. Install it with Homebrew, MacPorts, or manually into /usr/local])])],
- 
-       [test "x$PLATFORM" = xopenbsd],
--      [AC_CHECK_FILE([/usr/local/include/ereadline],
-+      [AC_CHECK_FILE([${LOCALBASE}/include/ereadline],
-           [LIBS="-lereadline $LIBS"
--              AM_CPPFLAGS="-I/usr/local/include/ereadline $AM_CFLAGS"
--              AM_LDFLAGS="-L/usr/local/lib $AM_LDFLAGS"
-+              AM_CPPFLAGS="-I${LOCALBASE}/include/ereadline $AM_CFLAGS"
-+              AM_LDFLAGS="-L${LOCALBASE}/lib $AM_LDFLAGS"
-               AC_SUBST(AM_LDFLAGS)])],
- 
-     [AC_CHECK_LIB([readline], [main], [],
blob - /dev/null
blob + d3dc75c91bd013f8957c627ab0c86eff7b95f57b (mode 644)
--- /dev/null
+++ net/profanity/patches/patch-meson_build
@@ -0,0 +1,12 @@
+Index: meson.build
+--- meson.build.orig
++++ meson.build
+@@ -145,7 +145,7 @@ if not readline_dep.found() and platform == 'osx'
+ endif
+ 
+ if not readline_dep.found() and platform == 'openbsd'
+-  readline_dep = cc.find_library('ereadline', dirs: ['/usr/local/lib'], required: false)
++  readline_dep = dependency('ereadline', required: true)
+ endif
+ 
+ if not readline_dep.found()
blob - fb808c80f6333e22ee0117b473e799d4f0339097
blob + 8facf12ba3ba190b4d1c5d2efc0d455dfab59ee5
--- net/profanity/pkg/PLIST
+++ net/profanity/pkg/PLIST
@@ -1,7 +1,5 @@
 @bin bin/profanity
 include/profapi.h
-@static-lib lib/libprofanity.a
-lib/libprofanity.la
 @lib lib/libprofanity.so.${LIBprofanity_VERSION}
 @man man/man1/profanity-about.1
 @man man/man1/profanity-account.1
@@ -18,6 +16,7 @@ lib/libprofanity.la
 @man man/man1/profanity-caps.1
 @man man/man1/profanity-carbons.1
 @man man/man1/profanity-changepassword.1
+@man man/man1/profanity-changes.1
 @man man/man1/profanity-charset.1
 @man man/man1/profanity-clear.1
 @man man/man1/profanity-close.1
@@ -59,6 +58,7 @@ lib/libprofanity.la
 @man man/man1/profanity-otr.1
 @man man/man1/profanity-outtype.1
 @man man/man1/profanity-ox-setup.1
+@man man/man1/profanity-ox.1
 @man man/man1/profanity-paste.1
 @man man/man1/profanity-pgp.1
 @man man/man1/profanity-ping.1
@@ -86,6 +86,7 @@ lib/libprofanity.la
 @man man/man1/profanity-silence.1
 @man man/man1/profanity-slashguard.1
 @man man/man1/profanity-software.1
+@man man/man1/profanity-spellcheck.1
 @man man/man1/profanity-splash.1
 @man man/man1/profanity-stamp.1
 @man man/man1/profanity-states.1
@@ -109,6 +110,9 @@ lib/libprofanity.la
 @man man/man1/profanity-wrap.1
 @man man/man1/profanity-xmlconsole.1
 @man man/man1/profanity.1
+share/doc/profanity/
+share/doc/profanity/profrc.example
+share/doc/profanity/theme_template
 share/examples/profanity/
 share/examples/profanity/profrc.example
 share/profanity/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.