Hello ports@, These are new ports for: net/simplexmq -- SimpleX Messaging Protocol server net/simplex-chat -- SimpleX Chat terminal client simplexmq provides the SMP message broker and the XFTP file-transfer server. simplex-chat is the terminal client. Both use devel/cabal and are restricted to amd64 and arm64 (GHC bootstrap is not available on other architectures). The ports target the latest stable upstream releases: simplexmq v6.5.5.0 (commit 92598c2d) and simplex-chat v6.5.6 (tag v6.5.6). Patches applied: - LibreSSL paths, ED448 fallback in XFTP server init - GHC 9.10+ and http2 5.x compatibility (TypeLits, DuplicateRecordFields, Config -> defaultConfig API migration) - OpenBSD-style config and log directories under /etc/simplex/ and /var/simplex/ - crypton/ram bytearray migration (memory -> ram, asn1-* -> crypton-asn1-*) - HSEC-2026-0007 backport for aeson 2.2.1.0 - Service authentication moved from TLS client credentials to the SMP handshake - SPDX license identifiers and mdoc(7) man pages for the three binaries - dos2unix normalization of upstream sources before patching User/group: I am requesting UID 906 for _simplexmq. The pid file patch is included in the port. See infrastructure/db/user.list diff attached. Open items I would like feedback on: 1. Test failures in simplexmq The simplexmq test suite starts local SMP and XFTP servers to run integration tests. Most tests pass, but the XFTP transfer tests fail with a connect error ("end of file") when client tests try to connect to the XFTP test server on localhost:8000. The TLS handshake terminates immediately. This may be a LibreSSL compatibility issue in the test server's TLS setup, or a port-binding race. I have not yet determined the root cause. If it turns out to be a test-infrastructure issue that does not affect runtime server behavior, it may be safe to mark the test suite as known-failing on OpenBSD. Feedback from anyone familiar with the TLS/crypton stack on OpenBSD would be very helpful here. 2. Test conflicts between simplexmq and simplex-chat Both test suites start local SMP/XFTP servers on fixed ports. Running `make test` in one port while the other is installed or running will cause port conflicts. For now, the tests should be run sequentially and on a clean system. I have not yet implemented randomized port selection for the test servers; patches welcome. 3. Vendored dependencies Both ports carry vendored Haskell dependencies via DIST_TUPLE (aeson, hs-socks, direct-sqlcipher, sqlcipher-simple, warp, warp-tls, terminal, android-support, zip, blst, libbbs). These are upstream forks pinned to specific commits. The cabal.inc manifests are regenerated via `make cabal-inc`, which requires cabal-bundler from Hackage. Build test: cabal-inc, build, fake, package on amd64-current with GHC 9.10.3 and LibreSSL. Feedback welcome, especially on the test-failure diagnosis and whether a known-failing annotation is acceptable.
Index: infrastructure/db/user.list --- infrastructure/db/user.list.orig +++ infrastructure/db/user.list @@ -905,3 +905,4 @@ 905 _pgweb _pgweb www/pgweb +906 _simplexmq _simplexmq net/simplexmq
Index: net/Makefile
--- net/Makefile.orig
+++ net/Makefile
@@ -1762,6 +1762,8 @@
SUBDIR += signald
SUBDIR += silc-client
SUBDIR += silc-server
+ SUBDIR += simplex-chat
+ SUBDIR += simplexmq
SUBDIR += sipcalc
SUBDIR += slowhttptest
No comments:
Post a Comment