commit 44d269a9f7f2f872cda3cdc036a91664bd9ded05
parent 12fb6dcf522e35cca813286eb08803c97e8c11a1
Author: Shokara Kou <kou@13f0.net>
Date: Thu, 19 May 2022 21:37:42 -0400
add profanity
Diffstat:
15 files changed, 267 insertions(+), 0 deletions(-)
diff --git a/net/profanity/CVS/Entries b/net/profanity/CVS/Entries
@@ -0,0 +1,4 @@
+/Makefile/1.24/Fri Mar 11 19:46:57 2022//
+/distinfo/1.13/Sun Nov 21 09:47:35 2021//
+D/patches////
+D/pkg////
diff --git a/net/profanity/CVS/Repository b/net/profanity/CVS/Repository
@@ -0,0 +1 @@
+ports/net/profanity
diff --git a/net/profanity/CVS/Root b/net/profanity/CVS/Root
@@ -0,0 +1 @@
+/cvs
diff --git a/net/profanity/Makefile b/net/profanity/Makefile
@@ -0,0 +1,60 @@
+COMMENT = console based XMPP client
+DISTNAME = profanity-0.11.1
+CATEGORIES = net
+
+HOMEPAGE = https://profanity-im.github.io/
+
+MAINTAINER = Florian Viehweger <openbsd@out-of-creativity.de>
+
+SHARED_LIBS += profanity 1.0 # 0.0
+
+# GPLv3+
+PERMIT_PACKAGE = Yes
+
+MASTER_SITES = https://profanity-im.github.io/
+
+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 strophe nghttp2 otr pcre pthread
+WANTLIB += ${MODPY_WANTLIB} signal-protocol-c sqlite3 ssl util z
+
+MODULES += lang/python
+
+LIB_DEPENDS += databases/sqlite3 \
+ devel/glib2 \
+ devel/readline \
+ net/curl \
+ net/libstrophe \
+ net/libsignal-protocol-c \
+ security/gpgme \
+ security/libotr
+
+# Only needed for tests, but cannot be a TEST_DEPENDS.
+# Check must be present at build time for tests to work.
+BUILD_DEPENDS += devel/cmocka
+
+CONFIGURE_STYLE = autoconf
+AUTOCONF_VERSION = 2.69
+SEPARATE_BUILD = Yes
+
+CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib"
+
+CONFIGURE_ARGS += --with-xscreensaver=no \
+ --enable-icons-and-clipboard=no \
+ --enable-notifications=no \
+ --enable-plugins=yes \
+ --enable-omemo=yes \
+ --enable-otr=yes
+
+MAKE_FLAGS = CC="${CC}" \
+ CFLAGS="${CFLAGS}"
+
+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/
+
+.include <bsd.port.mk>
diff --git a/net/profanity/distinfo b/net/profanity/distinfo
@@ -0,0 +1,2 @@
+SHA256 (profanity-0.11.1.tar.gz) = bxtN9sKXH1HQPUjSv9T2m0QEQQ2AC0PwKeoc8IoCvUU=
+SIZE (profanity-0.11.1.tar.gz) = 888794
diff --git a/net/profanity/patches/CVS/Entries b/net/profanity/patches/CVS/Entries
@@ -0,0 +1,2 @@
+/patch-configure_ac/1.8/Fri Mar 11 19:46:57 2022//
+D
diff --git a/net/profanity/patches/CVS/Repository b/net/profanity/patches/CVS/Repository
@@ -0,0 +1 @@
+ports/net/profanity/patches
diff --git a/net/profanity/patches/CVS/Root b/net/profanity/patches/CVS/Root
@@ -0,0 +1 @@
+/cvs
diff --git a/net/profanity/patches/patch-configure_ac b/net/profanity/patches/patch-configure_ac
@@ -0,0 +1,29 @@
+Use ${LOCALBASE} instead of hard-coded /usr/local
+Use ${MODPY_VERSION} to pick up our python-config
+
+Index: configure.ac
+--- configure.ac.orig
++++ configure.ac
+@@ -82,7 +82,7 @@ elif test "x$enable_python_plugins" != xno; then
+ rm -f Python.framework
+ ln -s $PYTHON_FRAMEWORK Python.framework ])
+ AC_CHECK_PROG(PYTHON_CONFIG_EXISTS, python-config, yes, no)
+- AC_CHECK_PROG(PYTHON3_CONFIG_EXISTS, python3-config, yes, no)
++ AC_CHECK_PROG(PYTHON3_CONFIG_EXISTS, python${MODPY_VERSION}-config, yes, no)
+ if test "$PYTHON_CONFIG_EXISTS" = "yes" || test "$PYTHON3_CONFIG_EXISTS" = "yes"; then
+ AX_PYTHON_DEVEL
+ AM_CONDITIONAL([BUILD_PYTHON_API], [true])
+@@ -221,10 +221,10 @@ AS_IF([test "x$PLATFORM" = xosx],
+ [AC_MSG_ERROR([libreadline is required for profanity])])],
+
+ [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_CPPFLAGS"
+- AM_LDFLAGS="-L/usr/local/lib $AM_LDFLAGS"
++ AM_CPPFLAGS="-I${LOCALBASE}/include/ereadline $AM_CPPFLAGS"
++ AM_LDFLAGS="-L${LOCALBASE}/lib $AM_LDFLAGS"
+ AC_SUBST(AM_LDFLAGS)])],
+
+ [AC_CHECK_LIB([readline], [main], [],
diff --git a/net/profanity/patches/patch-src_command_cmd_funcs_c b/net/profanity/patches/patch-src_command_cmd_funcs_c
@@ -0,0 +1,15 @@
+Index: src/command/cmd_funcs.c
+--- src/command/cmd_funcs.c.orig
++++ src/command/cmd_funcs.c
+@@ -8560,7 +8560,10 @@ cmd_omemo_start(ProfWin* window, const char* const com
+ omemo_start_muc_sessions(mucwin->roomjid);
+ mucwin->is_omemo = TRUE;
+ } else {
+- win_println(window, THEME_DEFAULT, "!", "MUC must be non-anonymous (i.e. be configured to present real jid to anyone) and members-only in order to support OMEMO.");
++ accounts_add_omemo_state(session_get_account_name(), mucwin->roomjid, TRUE);
++ omemo_start_muc_sessions(mucwin->roomjid);
++ mucwin->is_omemo = TRUE;
++ win_println(window, THEME_DEFAULT, "!", "MUC must be non-anonymous (i.e. be configured to present real jid to anyone) and members-only in order to support OMEMO. (warn)");
+ }
+ } else {
+ win_println(window, THEME_DEFAULT, "-", "You must be in a regular chat window to start an OMEMO session.");
diff --git a/net/profanity/pkg/CVS/Entries b/net/profanity/pkg/CVS/Entries
@@ -0,0 +1,3 @@
+/DESCR/1.2/Fri Sep 13 09:04:05 2019//
+/PLIST/1.8/Fri Mar 11 19:46:58 2022//
+D
diff --git a/net/profanity/pkg/CVS/Repository b/net/profanity/pkg/CVS/Repository
@@ -0,0 +1 @@
+ports/net/profanity/pkg
diff --git a/net/profanity/pkg/CVS/Root b/net/profanity/pkg/CVS/Root
@@ -0,0 +1 @@
+/cvs
diff --git a/net/profanity/pkg/DESCR b/net/profanity/pkg/DESCR
@@ -0,0 +1,12 @@
+Profanity is a console based XMPP client written in C using ncurses and
+libstrophe, inspired by irssi.
+
+Features:
+
+* Supports XMPP chat services
+* MUC chat room support
+* OTR, PGP and OMEMO message encryption
+* Roster management
+* Flexible resource and priority settings
+* Desktop notifications
+* Plugins in Python and C
diff --git a/net/profanity/pkg/PLIST b/net/profanity/pkg/PLIST
@@ -0,0 +1,134 @@
+@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
+@man man/man1/profanity-affiliation.1
+@man man/man1/profanity-alias.1
+@man man/man1/profanity-autoaway.1
+@man man/man1/profanity-autoconnect.1
+@man man/man1/profanity-autoping.1
+@man man/man1/profanity-avatar.1
+@man man/man1/profanity-ban.1
+@man man/man1/profanity-beep.1
+@man man/man1/profanity-blocked.1
+@man man/man1/profanity-bookmark.1
+@man man/man1/profanity-caps.1
+@man man/man1/profanity-carbons.1
+@man man/man1/profanity-changepassword.1
+@man man/man1/profanity-charset.1
+@man man/man1/profanity-clear.1
+@man man/man1/profanity-close.1
+@man man/man1/profanity-cmd.1
+@man man/man1/profanity-color.1
+@man man/man1/profanity-connect.1
+@man man/man1/profanity-console.1
+@man man/man1/profanity-correct.1
+@man man/man1/profanity-correction.1
+@man man/man1/profanity-disco.1
+@man man/man1/profanity-disconnect.1
+@man man/man1/profanity-editor.1
+@man man/man1/profanity-executable.1
+@man man/man1/profanity-export.1
+@man man/man1/profanity-flash.1
+@man man/man1/profanity-form.1
+@man man/man1/profanity-gone.1
+@man man/man1/profanity-help.1
+@man man/man1/profanity-history.1
+@man man/man1/profanity-info.1
+@man man/man1/profanity-inpblock.1
+@man man/man1/profanity-inputwin.1
+@man man/man1/profanity-intype.1
+@man man/man1/profanity-invite.1
+@man man/man1/profanity-join.1
+@man man/man1/profanity-kick.1
+@man man/man1/profanity-lastactivity.1
+@man man/man1/profanity-log.1
+@man man/man1/profanity-logging.1
+@man man/man1/profanity-mainwin.1
+@man man/man1/profanity-mam.1
+@man man/man1/profanity-msg.1
+@man man/man1/profanity-nick.1
+@man man/man1/profanity-notify.1
+@man man/man1/profanity-occupants.1
+@man man/man1/profanity-omemo.1
+@man man/man1/profanity-os.1
+@man man/man1/profanity-otr.1
+@man man/man1/profanity-outtype.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
+@man man/man1/profanity-plugins.1
+@man man/man1/profanity-prefs.1
+@man man/man1/profanity-presence.1
+@man man/man1/profanity-priority.1
+@man man/man1/profanity-privileges.1
+@man man/man1/profanity-quit.1
+@man man/man1/profanity-receipts.1
+@man man/man1/profanity-reconnect.1
+@man man/man1/profanity-reload.1
+@man man/man1/profanity-resource.1
+@man man/man1/profanity-role.1
+@man man/man1/profanity-room.1
+@man man/man1/profanity-rooms.1
+@man man/man1/profanity-roster.1
+@man man/man1/profanity-save.1
+@man man/man1/profanity-script.1
+@man man/man1/profanity-sendfile.1
+@man man/man1/profanity-serversoftware.1
+@man man/man1/profanity-silence.1
+@man man/man1/profanity-slashguard.1
+@man man/man1/profanity-software.1
+@man man/man1/profanity-splash.1
+@man man/man1/profanity-states.1
+@man man/man1/profanity-status.1
+@man man/man1/profanity-statusbar.1
+@man man/man1/profanity-sub.1
+@man man/man1/profanity-subject.1
+@man man/man1/profanity-theme.1
+@man man/man1/profanity-time.1
+@man man/man1/profanity-titlebar.1
+@man man/man1/profanity-tls.1
+@man man/man1/profanity-tray.1
+@man man/man1/profanity-url.1
+@man man/man1/profanity-vercheck.1
+@man man/man1/profanity-who.1
+@man man/man1/profanity-win.1
+@man man/man1/profanity-wins.1
+@man man/man1/profanity-wintitle.1
+@man man/man1/profanity-wrap.1
+@man man/man1/profanity-xmlconsole.1
+@man man/man1/profanity.1
+share/examples/profanity/
+share/examples/profanity/profrc.example
+share/profanity/
+share/profanity/icons/
+share/profanity/icons/proIcon.png
+share/profanity/icons/proIconMsg.png
+share/profanity/themes/
+share/profanity/themes/aqua
+share/profanity/themes/batman
+share/profanity/themes/bios
+share/profanity/themes/boothj5
+share/profanity/themes/boothj5_laptop
+share/profanity/themes/boothj5_slack
+share/profanity/themes/complex
+share/profanity/themes/forest
+share/profanity/themes/gruvbox
+share/profanity/themes/hacker
+share/profanity/themes/headache
+share/profanity/themes/joker
+share/profanity/themes/jubalian
+share/profanity/themes/mono
+share/profanity/themes/orange
+share/profanity/themes/original
+share/profanity/themes/original_bright
+share/profanity/themes/shade
+share/profanity/themes/simple
+share/profanity/themes/solarized-dark
+share/profanity/themes/solarized-light
+share/profanity/themes/spawn
+share/profanity/themes/whiteness