pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/chat/ejabberd



Module Name:    pkgsrc
Committed By:   gdt
Date:           Mon Apr 28 12:38:17 UTC 2025

Modified Files:
        pkgsrc/chat/ejabberd: Makefile PLIST distinfo options.mk
        pkgsrc/chat/ejabberd/patches: patch-aa patch-ae
Removed Files:
        pkgsrc/chat/ejabberd/patches: patch-src_ejabberd__auth.erl
            patch-src_ejabberd__auth__anonymous.erl

Log Message:
chat/ejabberd: Update to 25.04

Packaging changes:

  - Rototill mix/rebar/rebar3 and add comments (still using rebar).
  - Update DEPENDS from rebar.config.
  - Drop lager dependency (only used for very old OTP).
  - Drop luerl because it goes with lua which we don't enable,
    demoting to a faux option that's always off.
  - Demote redis to a faux option that's always off, because
    erlang-redis is woefully out of date and not trivial to update.
    (There are no known users of redis with ejabberd from pkgsrc.)
  - Drop two patches that no longer apply because upstream at least
    more or less did the same thing.
  - Patch out CHOWN commands in Makefile.
  - Completely rototill patch-ae (about su); see patch comments and
    upstream pull request discussion.  Likely Solaris needs fixing,
    but in a way that doesn't break other systems, and this should be
    done upstream, or at least aligned with expected upstream changes.

See https://docs.ejabberd.im/admin/upgrade/ for instructions on SQL schema changes.

Upstream changes highlights (since 23.01) follow.  See
https://github.com/processone/ejabberd/releases for more.

25.04:

    security fixes

25.03:

    Matrix Gateway Gets Room Support
    Multiple Simultaneous Password Types
    Execute API Commands Using XMPP Client

24.12

    XEP-0484: Fast Authentication Streamlining Tokens: Reduce the time
    it takes for authentication. This helps with a faster start for
    clients on mobile.

    Commands API v3: We paved the way for API changes and improvements
    while allowing customers depending on older version to stay on a
    pinned version of the commands.

24.10

    XEP-0288: Bidirectional Server-to-Server Connections
    XEP-0480: SASL Upgrade Tasks
    IQ permission in privileged entities
    PubSub varied fixes
    WebAdmin improvements

24.07

    bugfixes

24.06

    Webadmin rework
    Improved documentation
    Architecture and API improvements

24.02

ejabberd 24.02 has just been release and well, this is a huge release
with 200 commits and more in the libraries. We've packed this update
with a plethora of new features, significant improvements, and
essential bug fixes, all designed to supercharge your messaging
infrastructure.

    Matrix Federation Unleashed: Imagine seamlessly connecting with
    Matrix servers – it's now possible! ejabberd breaks new ground in
    cross-platform communication, fostering a more interconnected
    messaging universe. We have still some ground to cover and for
    that we are waiting for your feedback.

    Cutting-Edge Security with TLS 1.3 & SASL2: In an era where
    security is paramount, ejabberd steps up its game. With support
    for TLS 1.3 and advanced SASL2 protocols, we increase the overall
    security for all platform users.

    Performance Enhancements with Bind 2: Faster connection times,
    especially crucial for mobile network users, thanks to Bind 2 and
    other performance optimizations.

    User gains better control over on their messages: The new support
    for XEP-0424: Message Retraction allows users to manage their
    message history and remove something they posted by mistake.

    Optimized server pings by relying on an existing mechanism coming
    from XEP-0198

    Streamlined API Versioning: Our refined API versioning means
    smoother, more flexible integration for your applications.

    Enhanced Elixir, Mix and Rebar3 Support


To generate a diff of this commit:
cvs rdiff -u -r1.104 -r1.105 pkgsrc/chat/ejabberd/Makefile
cvs rdiff -u -r1.60 -r1.61 pkgsrc/chat/ejabberd/PLIST
cvs rdiff -u -r1.71 -r1.72 pkgsrc/chat/ejabberd/distinfo
cvs rdiff -u -r1.6 -r1.7 pkgsrc/chat/ejabberd/options.mk
cvs rdiff -u -r1.20 -r1.21 pkgsrc/chat/ejabberd/patches/patch-aa
cvs rdiff -u -r1.24 -r1.25 pkgsrc/chat/ejabberd/patches/patch-ae
cvs rdiff -u -r1.1 -r0 \
    pkgsrc/chat/ejabberd/patches/patch-src_ejabberd__auth.erl \
    pkgsrc/chat/ejabberd/patches/patch-src_ejabberd__auth__anonymous.erl

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/chat/ejabberd/Makefile
diff -u pkgsrc/chat/ejabberd/Makefile:1.104 pkgsrc/chat/ejabberd/Makefile:1.105
--- pkgsrc/chat/ejabberd/Makefile:1.104 Thu Apr 24 13:49:39 2025
+++ pkgsrc/chat/ejabberd/Makefile       Mon Apr 28 12:38:17 2025
@@ -1,8 +1,6 @@
-# $NetBSD: Makefile,v 1.104 2025/04/24 13:49:39 gdt Exp $
+# $NetBSD: Makefile,v 1.105 2025/04/28 12:38:17 gdt Exp $
 
-DISTNAME=      ejabberd-23.01
-# later releases:
-# 23.04 23.10 24.02 24.06 24.07 24.10 24.12 25.03 25.04
+DISTNAME=      ejabberd-25.04
 CATEGORIES=    chat
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=processone/}
 
@@ -18,18 +16,33 @@ USE_TOOLS+=         aclocal autoconf automake b
 # Upstream allows building with mix, rebar(2), and rebar3.  As of
 # 22.05, the mix build fails, and both rebar versions work.  Disabling
 # bundled deps seems cleaner with rebar(2).
-TOOL_DEPENDS+=         rebar-[0-9]*:../../devel/rebar
+
+#Tries to download, objecting to p1_utils
+#TOOL_DEPENDS+=                elixir-[0-9]*:../../lang/elixir
+
+# Works.
+TOOL_DEPENDS+=         rebar>=2:../../devel/rebar
 CONFIGURE_ARGS+=       --with-rebar=rebar
 
-CONFIGURE_ARGS+=       --disable-debug
-# We intend to use the erlang packages DEPENDed on above, rather than having
-# ejabberd's build system build them.  This is a bit messy and fragile.
+# Fetches dependencies even though they are present.
+#TOOL_DEPENDS+=                rebar3>=3:../../devel/rebar3
+#CONFIGURE_ARGS+=      --with-rebar=rebar3
+# Throws an error on the forced bad proxy, but with
+# https://127.0.0.1:65535/ errors on not being able to update
+# rebar3_hexpm.
+#ALLOW_NETWORK_ACCESS= yes
+
+# We intend to use the erlang packages DEPENDed on below, rather than
+# having ejabberd's build system download and build them.  The
+# configure option seems to work for rebar(2), but not for mix or
+# rebar3.
 CONFIGURE_ARGS+=       --enable-system-deps
+
+CONFIGURE_ARGS+=       --disable-debug                 # debug is default on (a clue?)
 CONFIGURE_ARGS+=       --enable-mysql
 CONFIGURE_ARGS+=       --enable-odbc
 CONFIGURE_ARGS+=       --enable-pam
 CONFIGURE_ARGS+=       --enable-pgsql
-CONFIGURE_ARGS+=       --enable-redis
 CONFIGURE_ARGS+=       --enable-sip
 CONFIGURE_ARGS+=       --enable-stun
 CONFIGURE_ARGS+=       --enable-zlib
@@ -38,33 +51,41 @@ CONFIGURE_ARGS+=    --enable-group=${EJABBE
 CONFIGURE_ARGS+=       --sysconfdir=${PKG_SYSCONFBASEDIR}
 CONFIGURE_ARGS+=       --localstatedir=${VARBASE}
 
-DEPENDS+=      erlang-base64url>=1.0.1:../../devel/erlang-base64url
-DEPENDS+=      erlang-cache_tab>=1.0.30:../../devel/erlang-cache_tab
-DEPENDS+=      erlang-epam>=1.0.12:../../security/erlang-epam
-DEPENDS+=      erlang-eredis>=1.2.0:../../databases/erlang-eredis
-DEPENDS+=      erlang-eimp>=1.0.22:../../graphics/erlang-eimp
-DEPENDS+=      erlang-esip>=1.0.47:../../net/erlang-esip
-DEPENDS+=      erlang-ezlib>=1.0.12:../../devel/erlang-ezlib
-DEPENDS+=      erlang-fast_tls>=1.1.15:../../security/erlang-fast_tls
-DEPENDS+=      erlang-fast_xml>=1.1.49:../../textproc/erlang-fast_xml
-DEPENDS+=      erlang-fast_yaml>=1.0.33:../../textproc/erlang-fast_yaml
-DEPENDS+=      erlang-idna>=6.0.0:../../net/erlang-idna
-DEPENDS+=      erlang-jiffy>=1.1.1:../../textproc/erlang-jiffy
-DEPENDS+=      erlang-jose>=1.11.1:../../security/erlang-jose
-DEPENDS+=      erlang-lager>=3.9.1.:../../sysutils/erlang-lager
-DEPENDS+=      erlang-luerl>=1.0:../../lang/erlang-luerl
-DEPENDS+=      erlang-mqtree>=1.0.15:../../devel/erlang-mqtree
-DEPENDS+=      erlang-p1_acme>=1.0.19:../../security/erlang-p1_acme
-DEPENDS+=      erlang-p1_mysql>=1.0.19:../../databases/erlang-p1_mysql
-DEPENDS+=      erlang-p1_oauth2>=0.6.11:../../security/erlang-p1_oauth2
-DEPENDS+=      erlang-p1_pgsql>=1.1.18:../../databases/erlang-p1_pgsql
-DEPENDS+=      erlang-p1_utils>=1.0.25:../../misc/erlang-p1_utils
-DEPENDS+=      erlang-pkix>=1.0.9:../../security/erlang-pkix
-DEPENDS+=      erlang-sqlite3>=1.1.13:../../databases/erlang-sqlite3
-DEPENDS+=      erlang-stringprep>=1.0.28:../../textproc/erlang-stringprep
-DEPENDS+=      erlang-stun>=1.2.2:../../net/erlang-stun
-DEPENDS+=      erlang-xmpp>=1.5.8:../../net/erlang-xmpp
-DEPENDS+=      erlang-yconf>=1.0.13:../../textproc/erlang-yconf
+# from rebar.config, less deps for options and pseudo-options
+# (tuned for erlange >= 27 as it is too painful for no point to support
+# using outdated erlang)
+BUILDLINK_ABI_DEPENDS.erlang+= erlang>=27.0
+
+DEPENDS+=      erlang-cache_tab>=1.0.31:../../devel/erlang-cache_tab
+DEPENDS+=      erlang-epam>=1.0.14:../../security/erlang-epam
+DEPENDS+=      erlang-eimp>=1.0.24:../../graphics/erlang-eimp
+DEPENDS+=      erlang-esip>=1.0.57:../../net/erlang-esip
+DEPENDS+=      erlang-ezlib>=1.0.13:../../devel/erlang-ezlib
+DEPENDS+=      erlang-fast_tls>=1.1.22:../../security/erlang-fast_tls
+DEPENDS+=      erlang-fast_xml>=1.1.55:../../textproc/erlang-fast_xml
+DEPENDS+=      erlang-fast_yaml>=1.0.37:../../textproc/erlang-fast_yaml
+DEPENDS+=      erlang-idna>=6.1.1:../../net/erlang-idna
+DEPENDS+=      erlang-jose>=1.11.10:../../security/erlang-jose
+DEPENDS+=      erlang-mqtree>=1.0.17:../../devel/erlang-mqtree
+DEPENDS+=      erlang-p1_acme>=1.0.25:../../security/erlang-p1_acme
+DEPENDS+=      erlang-p1_mysql>=1.0.26:../../databases/erlang-p1_mysql
+DEPENDS+=      erlang-p1_oauth2>=0.6.14:../../security/erlang-p1_oauth2
+DEPENDS+=      erlang-p1_pgsql>=1.1.32:../../databases/erlang-p1_pgsql
+DEPENDS+=      erlang-p1_utils>=1.0.27:../../misc/erlang-p1_utils
+DEPENDS+=      erlang-pkix>=1.0.10:../../security/erlang-pkix
+DEPENDS+=      erlang-stringprep>=1.0.31:../../textproc/erlang-stringprep
+DEPENDS+=      erlang-stun>=1.2.17:../../net/erlang-stun
+DEPENDS+=      erlang-xmpp>=1.10.0:../../net/erlang-xmpp
+DEPENDS+=      erlang-yconf>=1.0.18:../../textproc/erlang-yconf
+
+# PSEUDO-OPTIONS (off, but could be options if someone cares)
+
+#CONFIGURE_ARGS+=      --disable-redis
+# pkgsrc eredis is too old, so no redis for now
+#DEPENDS+=     erlang-eredis>=1.7.1:../../databases/erlang-eredis
+
+# --enable-lua, default off (used for importing from prosody)
+#DEPENDS+=     erlang-luerl>=1.2.0:../../lang/erlang-luerl
 
 RCD_SCRIPTS=           ejabberd
 
@@ -120,9 +141,11 @@ SUBST_VARS.paths=  DISTNAME EJABBERD_DB E
 SUBST_VARS.paths+=     PKG_SYSCONFDIR PREFIX LOCALBASE
 
 post-extract:
-       # Upstream includes rebar(2) and rebar3 built with an old OTP.
-       # Remove both and symlink in the one we are using -- built
-       # with the current OTP.
+       # Upstream includes rebar(2) and rebar3 built with a
+       # particular OTP.  Remove both and symlink in the one we are
+       # using -- built with the current OTP.  (This appears not to
+       # be necessary with ejabberd 25.04 and erlang 27, but has been
+       # needed in the past.)
        cd ${WRKSRC} && ${RM} rebar rebar3 && ${LN} -s ${LOCALBASE}/bin/rebar .
        # Building deps is disabled above; this is leftover code to
        # disable them differently.  It is intentionally left

Index: pkgsrc/chat/ejabberd/PLIST
diff -u pkgsrc/chat/ejabberd/PLIST:1.60 pkgsrc/chat/ejabberd/PLIST:1.61
--- pkgsrc/chat/ejabberd/PLIST:1.60     Thu Apr 24 13:35:29 2025
+++ pkgsrc/chat/ejabberd/PLIST  Mon Apr 28 12:38:17 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.60 2025/04/24 13:35:29 gdt Exp $
+@comment $NetBSD: PLIST,v 1.61 2025/04/28 12:38:17 gdt Exp $
 lib/${PKGNAME}/COPYING
 lib/${PKGNAME}/ebin/ELDAPv3.beam
 lib/${PKGNAME}/ebin/acl.beam
@@ -70,6 +70,7 @@ lib/${PKGNAME}/ebin/ejabberd_sm_redis.be
 lib/${PKGNAME}/ebin/ejabberd_sm_sql.beam
 lib/${PKGNAME}/ebin/ejabberd_sql.beam
 lib/${PKGNAME}/ebin/ejabberd_sql_pt.beam
+lib/${PKGNAME}/ebin/ejabberd_sql_schema.beam
 lib/${PKGNAME}/ebin/ejabberd_sql_sup.beam
 lib/${PKGNAME}/ebin/ejabberd_stun.beam
 lib/${PKGNAME}/ebin/ejabberd_sup.beam
@@ -99,6 +100,8 @@ lib/${PKGNAME}/ebin/gen_pubsub_nodetree.
 lib/${PKGNAME}/ebin/jd2ejd.beam
 lib/${PKGNAME}/ebin/misc.beam
 lib/${PKGNAME}/ebin/mod_adhoc.beam
+lib/${PKGNAME}/ebin/mod_adhoc_api.beam
+lib/${PKGNAME}/ebin/mod_adhoc_api_opt.beam
 lib/${PKGNAME}/ebin/mod_adhoc_opt.beam
 lib/${PKGNAME}/ebin/mod_admin_extra.beam
 lib/${PKGNAME}/ebin/mod_admin_update_sql.beam
@@ -106,6 +109,9 @@ lib/${PKGNAME}/ebin/mod_announce.beam
 lib/${PKGNAME}/ebin/mod_announce_mnesia.beam
 lib/${PKGNAME}/ebin/mod_announce_opt.beam
 lib/${PKGNAME}/ebin/mod_announce_sql.beam
+lib/${PKGNAME}/ebin/mod_auth_fast.beam
+lib/${PKGNAME}/ebin/mod_auth_fast_mnesia.beam
+lib/${PKGNAME}/ebin/mod_auth_fast_opt.beam
 lib/${PKGNAME}/ebin/mod_avatar.beam
 lib/${PKGNAME}/ebin/mod_avatar_opt.beam
 lib/${PKGNAME}/ebin/mod_block_strangers.beam
@@ -124,6 +130,7 @@ lib/${PKGNAME}/ebin/mod_carboncopy.beam
 lib/${PKGNAME}/ebin/mod_client_state.beam
 lib/${PKGNAME}/ebin/mod_client_state_opt.beam
 lib/${PKGNAME}/ebin/mod_configure.beam
+lib/${PKGNAME}/ebin/mod_configure_opt.beam
 lib/${PKGNAME}/ebin/mod_conversejs.beam
 lib/${PKGNAME}/ebin/mod_conversejs_opt.beam
 lib/${PKGNAME}/ebin/mod_delegation.beam
@@ -153,6 +160,11 @@ lib/${PKGNAME}/ebin/mod_mam.beam
 lib/${PKGNAME}/ebin/mod_mam_mnesia.beam
 lib/${PKGNAME}/ebin/mod_mam_opt.beam
 lib/${PKGNAME}/ebin/mod_mam_sql.beam
+lib/${PKGNAME}/ebin/mod_matrix_gw.beam
+lib/${PKGNAME}/ebin/mod_matrix_gw_opt.beam
+lib/${PKGNAME}/ebin/mod_matrix_gw_room.beam
+lib/${PKGNAME}/ebin/mod_matrix_gw_s2s.beam
+lib/${PKGNAME}/ebin/mod_matrix_gw_sup.beam
 lib/${PKGNAME}/ebin/mod_metrics.beam
 lib/${PKGNAME}/ebin/mod_metrics_opt.beam
 lib/${PKGNAME}/ebin/mod_mix.beam
@@ -178,8 +190,11 @@ lib/${PKGNAME}/ebin/mod_muc_admin_opt.be
 lib/${PKGNAME}/ebin/mod_muc_log.beam
 lib/${PKGNAME}/ebin/mod_muc_log_opt.beam
 lib/${PKGNAME}/ebin/mod_muc_mnesia.beam
+lib/${PKGNAME}/ebin/mod_muc_occupantid.beam
 lib/${PKGNAME}/ebin/mod_muc_opt.beam
 lib/${PKGNAME}/ebin/mod_muc_room.beam
+lib/${PKGNAME}/ebin/mod_muc_rtbl.beam
+lib/${PKGNAME}/ebin/mod_muc_rtbl_opt.beam
 lib/${PKGNAME}/ebin/mod_muc_sql.beam
 lib/${PKGNAME}/ebin/mod_muc_sup.beam
 lib/${PKGNAME}/ebin/mod_multicast.beam
@@ -227,8 +242,11 @@ lib/${PKGNAME}/ebin/mod_roster.beam
 lib/${PKGNAME}/ebin/mod_roster_mnesia.beam
 lib/${PKGNAME}/ebin/mod_roster_opt.beam
 lib/${PKGNAME}/ebin/mod_roster_sql.beam
+lib/${PKGNAME}/ebin/mod_s2s_bidi.beam
 lib/${PKGNAME}/ebin/mod_s2s_dialback.beam
 lib/${PKGNAME}/ebin/mod_s2s_dialback_opt.beam
+lib/${PKGNAME}/ebin/mod_scram_upgrade.beam
+lib/${PKGNAME}/ebin/mod_scram_upgrade_opt.beam
 lib/${PKGNAME}/ebin/mod_service_log.beam
 lib/${PKGNAME}/ebin/mod_service_log_opt.beam
 lib/${PKGNAME}/ebin/mod_shared_roster.beam
@@ -299,6 +317,7 @@ lib/${PKGNAME}/include/mod_announce.hrl
 lib/${PKGNAME}/include/mod_caps.hrl
 lib/${PKGNAME}/include/mod_last.hrl
 lib/${PKGNAME}/include/mod_mam.hrl
+lib/${PKGNAME}/include/mod_matrix_gw.hrl
 lib/${PKGNAME}/include/mod_muc.hrl
 lib/${PKGNAME}/include/mod_muc_room.hrl
 lib/${PKGNAME}/include/mod_offline.hrl
@@ -318,7 +337,7 @@ lib/${PKGNAME}/priv/css/bosh.css
 lib/${PKGNAME}/priv/css/muc.css
 lib/${PKGNAME}/priv/css/oauth.css
 lib/${PKGNAME}/priv/css/register.css
-lib/${PKGNAME}/priv/img/admin-logo-fill.png
+lib/${PKGNAME}/priv/css/sortable.min.css
 lib/${PKGNAME}/priv/img/admin-logo.png
 lib/${PKGNAME}/priv/img/bosh-logo.png
 lib/${PKGNAME}/priv/img/favicon.png
@@ -329,8 +348,9 @@ lib/${PKGNAME}/priv/img/valid-xhtml10.pn
 lib/${PKGNAME}/priv/img/vcss.png
 lib/${PKGNAME}/priv/js/admin.js
 lib/${PKGNAME}/priv/js/muc.js
-lib/${PKGNAME}/priv/lua/redis_sm.lua
+lib/${PKGNAME}/priv/js/sortable.min.js
 lib/${PKGNAME}/priv/msgs/ar.msg
+lib/${PKGNAME}/priv/msgs/bg.msg
 lib/${PKGNAME}/priv/msgs/ca.msg
 lib/${PKGNAME}/priv/msgs/cs.msg
 lib/${PKGNAME}/priv/msgs/de.msg
@@ -353,6 +373,7 @@ lib/${PKGNAME}/priv/msgs/ru.msg
 lib/${PKGNAME}/priv/msgs/sk.msg
 lib/${PKGNAME}/priv/msgs/sq.msg
 lib/${PKGNAME}/priv/msgs/sv.msg
+lib/${PKGNAME}/priv/msgs/ta.msg
 lib/${PKGNAME}/priv/msgs/th.msg
 lib/${PKGNAME}/priv/msgs/tr.msg
 lib/${PKGNAME}/priv/msgs/uk.msg
@@ -361,6 +382,7 @@ lib/${PKGNAME}/priv/msgs/wa.msg
 lib/${PKGNAME}/priv/msgs/zh.msg
 lib/${PKGNAME}/priv/sql/lite.new.sql
 lib/${PKGNAME}/priv/sql/lite.sql
+lib/${PKGNAME}/priv/sql/mssql.new.sql
 lib/${PKGNAME}/priv/sql/mssql.sql
 lib/${PKGNAME}/priv/sql/mysql.new.sql
 lib/${PKGNAME}/priv/sql/mysql.old-to-new.sql

Index: pkgsrc/chat/ejabberd/distinfo
diff -u pkgsrc/chat/ejabberd/distinfo:1.71 pkgsrc/chat/ejabberd/distinfo:1.72
--- pkgsrc/chat/ejabberd/distinfo:1.71  Thu Apr 24 13:35:29 2025
+++ pkgsrc/chat/ejabberd/distinfo       Mon Apr 28 12:38:17 2025
@@ -1,9 +1,7 @@
-$NetBSD: distinfo,v 1.71 2025/04/24 13:35:29 gdt Exp $
+$NetBSD: distinfo,v 1.72 2025/04/28 12:38:17 gdt Exp $
 
-BLAKE2s (ejabberd-23.01.tar.gz) = 02743cc19b3c0898b09e3fc53fa7d418ee82b3d6e0bc78f50fe420bcd5a1bbb0
-SHA512 (ejabberd-23.01.tar.gz) = 3fe11123d24e430fa10d18aabb9cc9613bc25ee48d6c64a642ae1d0d458f220df638b94cde444241399e0d0777a4f64995ad7e37f963f1ee92bbb114ed431c4b
-Size (ejabberd-23.01.tar.gz) = 2569272 bytes
-SHA1 (patch-aa) = 751d547296ddc6bb648480118ba0af33bb21e5b7
-SHA1 (patch-ae) = a0e323793200019d47ddbe06b0a41c07d3199f3f
-SHA1 (patch-src_ejabberd__auth.erl) = f54216e2cf41c800b6c7657b9d99bb8338b84077
-SHA1 (patch-src_ejabberd__auth__anonymous.erl) = a0781130fb63c45aa911b0ff64156f3724505bb9
+BLAKE2s (ejabberd-25.04.tar.gz) = a8150e87305a45ca646440a151cafac8e7772b58037702d322892beb5468f87a
+SHA512 (ejabberd-25.04.tar.gz) = c85b6bed160918b1ad0bc9475b819363c72845301ba2f396a0caed556ebff9d7b1bb378a4141c1b3edf1c2dc2618a28f51456659a4b19162947bdd0b5a0db0e5
+Size (ejabberd-25.04.tar.gz) = 2595583 bytes
+SHA1 (patch-aa) = a0a21134adae1f2bbad58a001fb527ea18b70c99
+SHA1 (patch-ae) = b9d3e6183753830bbd9cbfea1d329f81c251f534

Index: pkgsrc/chat/ejabberd/options.mk
diff -u pkgsrc/chat/ejabberd/options.mk:1.6 pkgsrc/chat/ejabberd/options.mk:1.7
--- pkgsrc/chat/ejabberd/options.mk:1.6 Wed Mar 28 21:51:09 2018
+++ pkgsrc/chat/ejabberd/options.mk     Mon Apr 28 12:38:17 2025
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.6 2018/03/28 21:51:09 fhajny Exp $
+# $NetBSD: options.mk,v 1.7 2025/04/28 12:38:17 gdt Exp $
 
 PKG_OPTIONS_VAR=       PKG_OPTIONS.ejabberd
 PKG_SUPPORTED_OPTIONS= sqlite
@@ -6,9 +6,20 @@ PKG_SUGGESTED_OPTIONS= #
 
 .include "../../mk/bsd.options.mk"
 
+# \todo Decide on a plan for options for databases, probably one of:
+#   - always include erlang module if it doesn't force a dependency,
+#     and never depend on the db package, and hence not having options
+#
+#   - for each, depend on db package and erlang module if option enabled
+#
+#   - for each, depend on db package if option enabled, and always
+#     depend on erlang module
+
+
 #
 # Add SQLite 3 support
 #
 .if !empty(PKG_OPTIONS:Msqlite)
-DEPENDS+=              erlang-sqlite3>=1.1.6:../../databases/erlang-sqlite3
+CONFIGURE_ARGS+=       --enable-sqlite
+DEPENDS+=              erlang-sqlite3>=1.1.13:../../databases/erlang-sqlite3
 .endif

Index: pkgsrc/chat/ejabberd/patches/patch-aa
diff -u pkgsrc/chat/ejabberd/patches/patch-aa:1.20 pkgsrc/chat/ejabberd/patches/patch-aa:1.21
--- pkgsrc/chat/ejabberd/patches/patch-aa:1.20  Thu Apr 24 13:35:29 2025
+++ pkgsrc/chat/ejabberd/patches/patch-aa       Mon Apr 28 12:38:17 2025
@@ -1,4 +1,4 @@
-$NetBSD: patch-aa,v 1.20 2025/04/24 13:35:29 gdt Exp $
+$NetBSD: patch-aa,v 1.21 2025/04/28 12:38:17 gdt Exp $
 
   - Split etcdir into where the config is installed and where it is
     used from, to align with pkgsrc CONF_FILES.
@@ -11,9 +11,12 @@ $NetBSD: patch-aa,v 1.20 2025/04/24 13:3
     running the daemon as ejabberd doesn't mean that the files in
     e.g. /usr/pkg/bin should be installed as ejabberd.
 
---- Makefile.in.orig   2023-01-17 10:35:52.000000000 +0000
+  - Patch own CHOWN that is redundant with install and O_USER.
+    \todo File upstream.
+
+--- Makefile.in.orig   2025-04-16 15:58:37.000000000 +0000
 +++ Makefile.in
-@@ -10,7 +10,8 @@ exec_prefix = @exec_prefix@
+@@ -25,7 +25,8 @@ exec_prefix = @exec_prefix@
  DESTDIR =
  
  # /etc/ejabberd/
@@ -23,7 +26,7 @@ $NetBSD: patch-aa,v 1.20 2025/04/24 13:3
  
  # /bin/
  BINDIR = @bindir@
-@@ -66,31 +67,18 @@ SQLDIR = $(PRIVDIR)/sql
+@@ -81,34 +82,20 @@ SQLDIR = $(PRIVDIR)/sql
  LUADIR = $(PRIVDIR)/lua
  
  # /var/lib/ejabberd/
@@ -34,7 +37,10 @@ $NetBSD: patch-aa,v 1.20 2025/04/24 13:3
 -LOGDIR = @localstatedir@/log/ejabberd
 +LOGDIR = @EJABBERD_LOGDIR@
  
- INSTALLUSER=@INSTALLUSER@
+ #.
+ #' install user
+ #
+ 
 -# if no user was enabled, don't set privileges or ownership
 -ifeq ($(INSTALLUSER),)
    O_USER=
@@ -49,20 +55,35 @@ $NetBSD: patch-aa,v 1.20 2025/04/24 13:3
 -  CHOWN_OUTPUT=&1
 -  INIT_USER=$(INSTALLUSER)
 -endif
+-
 -# if no group was enabled, don't set privileges or ownership
- INSTALLGROUP=@INSTALLGROUP@
 -ifneq ($(INSTALLGROUP),)
 -  G_USER=-g $(INSTALLGROUP)
 -endif
  
- ifeq "$(MIX)" "mix"
- REBAR_VER:=6
-@@ -318,7 +306,7 @@ ejabberd.service:
+ #.
+ #' rebar / rebar3 / mix
+@@ -429,7 +416,7 @@ ejabberd.service:
  
  ejabberdctl.example: vars.config
-       $(SED)  -e "s*{{installuser}}*@INSTALLUSER@*g" \
+       $(SED)  -e "s*{{installuser}}*${INSTALLUSER}*g" \
 -              -e "s*{{config_dir}}*${ETCDIR}*g" \
 +              -e "s*{{config_dir}}*${SYSCONFDIR_ETCDIR}*g" \
                -e "s*{{logs_dir}}*${LOGDIR}*g" \
                -e "s*{{spool_dir}}*${SPOOLDIR}*g" \
-               -e "s*{{bindir}}*@bindir@*g" \
+               -e "s*{{bindir}}*${BINDIR}*g" \
+@@ -473,12 +460,12 @@ install-main:
+       #
+       # Spool directory
+       $(INSTALL) -d -m 750 $(O_USER) $(DESTDIR)$(SPOOLDIR)
+-      $(CHOWN_COMMAND) -R $(INSTALLUSER) $(DESTDIR)$(SPOOLDIR) >$(CHOWN_OUTPUT)
++      #$(CHOWN_COMMAND) -R $(INSTALLUSER) $(DESTDIR)$(SPOOLDIR) >$(CHOWN_OUTPUT)
+       chmod -R 750 $(DESTDIR)$(SPOOLDIR)
+       #
+       # Log directory
+       $(INSTALL) -d -m 750 $(O_USER) $(DESTDIR)$(LOGDIR)
+-      $(CHOWN_COMMAND) -R $(INSTALLUSER) $(DESTDIR)$(LOGDIR) >$(CHOWN_OUTPUT)
++      #$(CHOWN_COMMAND) -R $(INSTALLUSER) $(DESTDIR)$(LOGDIR) >$(CHOWN_OUTPUT)
+       chmod -R 750 $(DESTDIR)$(LOGDIR)
+       #
+       # Documentation

Index: pkgsrc/chat/ejabberd/patches/patch-ae
diff -u pkgsrc/chat/ejabberd/patches/patch-ae:1.24 pkgsrc/chat/ejabberd/patches/patch-ae:1.25
--- pkgsrc/chat/ejabberd/patches/patch-ae:1.24  Thu Apr 24 13:35:29 2025
+++ pkgsrc/chat/ejabberd/patches/patch-ae       Mon Apr 28 12:38:17 2025
@@ -1,19 +1,42 @@
-$NetBSD: patch-ae,v 1.24 2025/04/24 13:35:29 gdt Exp $
+$NetBSD: patch-ae,v 1.25 2025/04/28 12:38:17 gdt Exp $
 
-- Use 'su -' instead of just 'su'. Fixes priv delegation on SunOS
-  and AIX where Erlang relies on $HOME set correctly. Use a portable
-  su arg order while at it.
+- Don't use 'su -s /bin/sh' because that is a Linux
+  extension.  It instructs to use the specified shell instead of the
+  user's shell, but pkgsrc uses /bin/sh for ejabberd.
 
-\todo File upstream.
+- In su, place the user before the command, as at least NetBSD and
+  Linux su document.  Resolves:
+    su: Unknown class exec "$0" "$@"
+  on NetBSD.
+  (This was "Use a portable su arg order while at it.")
+  (Introduced in 1.17, 2017-07-07)
 
---- ejabberdctl.template.orig  2023-01-17 10:35:52.000000000 +0000
+- A previous version had:
+    Use 'su -' instead of just 'su'.  Fixes priv delegation on SunOS
+    and AIX where Erlang relies on $HOME set correctly.
+  However that broke ejabberdctl as root on NetBSD and is thus
+  reverted in 1.25.
+  (Introduced in 1.14, 2016-04-25.  Reverted in 1.25, 2025-04-27.)
+
+- Previous versions accomodated grep not having -q but:
+  + POSIX says grep supports -q
+    https://pubs.opengroup.org/onlinepubs/9799919799/utilities/grep.html
+  + This change was not filed upstream.
+  + It was a long time ago and thus one would expect that by now
+    systems would have been fixed to comply with POSIX.
+  (Introduced in 1.17, 2017-07-07)
+
+su woes are upstream at:
+  https://github.com/processone/ejabberd/pull/4320
+
+--- ejabberdctl.template.orig  2023-10-17 13:57:50.000000000 +0000
 +++ ejabberdctl.template
 @@ -121,7 +121,7 @@ set_dist_client()
  exec_cmd()
  {
      case $EXEC_CMD in
--        as_install_user) su -s /bin/sh -c '"$0" "$@"' "$INSTALLUSER" -- "$@" ;;
-+        as_install_user) su - "$INSTALLUSER" -c '"$@"' -- "$@" ;;
+-        as_install_user) su -s /bin/sh -c 'exec "$0" "$@"' "$INSTALLUSER" -- "$@" ;;
++        as_install_user) su "$INSTALLUSER" -c 'exec "$0" "$@"' "$@" ;;
          as_current_user) "$@" ;;
      esac
  }



Home | Main Index | Thread Index | Old Index