git: 63dec5ff3985 - main - net-im/libsignal-node: Update to 0.81.0

From: Mikael Urankar <mikael_at_FreeBSD.org>
Date: Fri, 26 Sep 2025 13:20:53 UTC
The branch main has been updated by mikael:

URL: https://cgit.FreeBSD.org/ports/commit/?id=63dec5ff398577d5f2f5da201f8d038aac9b28ab

commit 63dec5ff398577d5f2f5da201f8d038aac9b28ab
Author:     Mikael Urankar <mikael@FreeBSD.org>
AuthorDate: 2025-09-26 09:51:05 +0000
Commit:     Mikael Urankar <mikael@FreeBSD.org>
CommitDate: 2025-09-26 13:20:45 +0000

    net-im/libsignal-node: Update to 0.81.0
---
 net-im/libsignal-node/Makefile                     | 23 ++++----
 net-im/libsignal-node/Makefile.crates              | 26 +++++----
 net-im/libsignal-node/distinfo                     | 62 ++++++++++------------
 .../files/patch-boring_boring-sys_main.rs          |  4 +-
 net-im/libsignal-node/files/patch-node_binding.gyp | 10 ----
 .../files/patch-node_build__node__bridge.py        | 19 +++++++
 6 files changed, 75 insertions(+), 69 deletions(-)

diff --git a/net-im/libsignal-node/Makefile b/net-im/libsignal-node/Makefile
index d8ff88cbffab..396a8cc9c1ce 100644
--- a/net-im/libsignal-node/Makefile
+++ b/net-im/libsignal-node/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	libsignal
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.78.3
+DISTVERSION=	0.81.0
 CATEGORIES=	net-im
 MASTER_SITES=	LOCAL/mikael/signal-desktop/:npm
 PKGNAMESUFFIX=	-node
@@ -20,7 +20,7 @@ BUILD_DEPENDS=	llvm-config${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} \
 		npm:www/npm${NODEJS_SUFFIX} \
 		protoc:devel/protobuf
 
-USES=		cargo gmake nodejs:20,build python:build
+USES=		cargo gmake nodejs:22,build python:build
 USE_GITHUB=	yes
 GH_ACCOUNT=	signalapp
 # to get the GH_TUPLE
@@ -43,6 +43,8 @@ MAKE_ENV=	HOME=${WRKDIR} \
 
 MAKE_ENV+=	RUSTC_BOOTSTRAP=aes,polyval
 
+BINARY_ALIAS=	python3=${PYTHON_CMD}
+
 USE_LDCONFIG=	yes
 
 PLIST_FILES=	lib/libsignal_node.so
@@ -52,27 +54,28 @@ RUST_ARCH=	${ARCH:S/amd64/x86_64/}
 
 .include <bsd.port.options.mk>
 
-post-patch:
-	${REINPLACE_CMD} "s#python3#${PYTHON_CMD}#" \
-		${WRKSRC}/node/binding.gyp
+#post-patch:
+#	${REINPLACE_CMD} "s#python3#${PYTHON_CMD}#" \
+#		${WRKSRC}/node/binding.gyp
 
 # to get the hash:
-# fetch -o - https://raw.githubusercontent.com/signalapp/libsignal/v0.67.4/Cargo.lock | grep https://github.com/signalapp/boring
+# fetch -o - https://raw.githubusercontent.com/signalapp/libsignal/v0.80.0/Cargo.lock | grep https://github.com/signalapp/boring
+#source = "git+https://github.com/signalapp/boring?tag=signal-v4.18.0#81d4aa19ac6c5af99238ff0bf9328b381ccebcdd"
 post-extract:
-	${MV} ${WRKDIR}/boringssl-44b3df6f03d85c901767250329c571db405122d5/* ${WRKDIR}/boring-signal-v4.15.0/boring-sys/deps/boringssl
-	${MV} ${WRKDIR}/boringssl-853ca1ea1168dff08011e5d42d94609cc0ca2e27/* ${WRKDIR}/boring-signal-v4.15.0/boring-sys/deps/boringssl-fips
+	${MV} ${WRKDIR}/boringssl-44b3df6f03d85c901767250329c571db405122d5/* ${WRKDIR}/boring-signal-v4.18.0/boring-sys/deps/boringssl
+	${MV} ${WRKDIR}/boringssl-853ca1ea1168dff08011e5d42d94609cc0ca2e27/* ${WRKDIR}/boring-signal-v4.18.0/boring-sys/deps/boringssl-fips
 
 do-build:
 	${ECHO_CMD} offline=true >> ${WRKSRC}/.npmrc
 	cd ${WRKSRC}/node && \
 		${SETENV} ${MAKE_ENV} npm install --ignore-optional --nodedir=${LOCALBASE}
 	cd ${WRKSRC}/node && \
-		${SETENV} ${MAKE_ENV} npx node-gyp rebuild --nodedir=${LOCALBASE}
+		${SETENV} ${MAKE_ENV} npm run build --nodedir=${LOCALBASE}
 	cd ${WRKSRC}/node && \
 		${SETENV} ${MAKE_ENV} npm run tsc
 
 do-install:
-	${INSTALL_DATA} ${WRKSRC}/node/build/Release/obj.target/libsignal_client_freebsd_${NODE_ARCH}.node/geni/rust/${RUST_ARCH}-unknown-freebsd/release/libsignal_node.so \
+	${INSTALL_LIB} ${WRKSRC}/target/release/libsignal_node.so \
 		${STAGEDIR}${PREFIX}/lib/
 
 create-caches-tarball:
diff --git a/net-im/libsignal-node/Makefile.crates b/net-im/libsignal-node/Makefile.crates
index e254b7e47cfe..d5f2f351d951 100644
--- a/net-im/libsignal-node/Makefile.crates
+++ b/net-im/libsignal-node/Makefile.crates
@@ -33,7 +33,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		base64-0.22.1 \
 		base64ct-1.6.0 \
 		bincode-1.3.3 \
-		bindgen-0.70.1 \
+		bindgen-0.72.0 \
 		bit-set-0.8.0 \
 		bit-vec-0.8.0 \
 		bitflags-2.9.0 \
@@ -89,7 +89,9 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		darling-0.20.11 \
 		darling_core-0.20.11 \
 		darling_macro-0.20.11 \
-		data-encoding-2.8.0 \
+		data-encoding-2.9.0 \
+		data-encoding-macro-0.1.18 \
+		data-encoding-macro-internal-0.1.16 \
 		debugid-0.8.0 \
 		der-0.7.9 \
 		deranged-0.4.0 \
@@ -203,7 +205,6 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		is-terminal-0.4.16 \
 		is_terminal_polyfill-1.70.1 \
 		itertools-0.10.5 \
-		itertools-0.13.0 \
 		itertools-0.14.0 \
 		itoa-1.0.15 \
 		jiff-0.2.5 \
@@ -237,7 +238,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		log-panics-2.1.0 \
 		macro_rules_attribute-0.2.0 \
 		macro_rules_attribute-proc_macro-0.2.0 \
-		matchers-0.1.0 \
+		matchers-0.2.0 \
 		matchit-0.8.4 \
 		mediasan-common-0.5.3 \
 		memchr-2.7.4 \
@@ -261,7 +262,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		nom-derive-0.10.1 \
 		nom-derive-impl-0.10.1 \
 		nonzero_ext-0.3.0 \
-		nu-ansi-term-0.46.0 \
+		nu-ansi-term-0.50.1 \
 		num-bigint-0.4.6 \
 		num-conv-0.1.0 \
 		num-derive-0.4.2 \
@@ -275,7 +276,6 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		opaque-debug-0.3.1 \
 		openssl-macros-0.1.1 \
 		openssl-probe-0.1.6 \
-		overload-0.1.1 \
 		partial-default-0.1.0 \
 		partial-default-derive-0.1.0 \
 		password-hash-0.5.0 \
@@ -345,13 +345,11 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		rayon-core-1.12.1 \
 		rcgen-0.13.2 \
 		regex-1.11.1 \
-		regex-automata-0.1.10 \
 		regex-automata-0.4.9 \
-		regex-syntax-0.6.29 \
 		regex-syntax-0.8.5 \
 		ring-0.17.14 \
 		rustc-demangle-0.1.24 \
-		rustc-hash-1.1.0 \
+		rustc-hash-2.1.1 \
 		rustc_version-0.4.1 \
 		rusticata-macros-4.1.0 \
 		rustix-0.38.44 \
@@ -395,7 +393,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		slab-0.4.9 \
 		smallvec-1.15.0 \
 		smart-default-0.7.1 \
-		snow-0.9.6 \
+		snow-0.10.0 \
 		socket2-0.5.9 \
 		socks5-proto-0.4.1 \
 		socks5-server-0.10.1 \
@@ -440,7 +438,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		tokio-socks-0.5.2 \
 		tokio-stream-0.1.17 \
 		tokio-tungstenite-0.21.0 \
-		tokio-tungstenite-0.26.2 \
+		tokio-tungstenite-0.27.0 \
 		tokio-util-0.7.14 \
 		toml_datetime-0.6.8 \
 		toml_edit-0.22.24 \
@@ -453,10 +451,10 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		tracing-attributes-0.1.28 \
 		tracing-core-0.1.33 \
 		tracing-log-0.2.0 \
-		tracing-subscriber-0.3.19 \
+		tracing-subscriber-0.3.20 \
 		try-lock-0.2.5 \
 		tungstenite-0.21.0 \
-		tungstenite-0.26.2 \
+		tungstenite-0.27.0 \
 		typenum-1.18.0 \
 		ucd-trie-0.1.7 \
 		unarray-0.1.4 \
@@ -537,6 +535,6 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		zeroize_derive-1.4.2 \
 		zerovec-0.10.4 \
 		zerovec-derive-0.10.3 \
-		boring,boring-sys,tokio-boring@git+https://github.com/signalapp/boring?tag=signal-v4.15.0\#bb42da53b3900aea1936d41decf9403f25c4259c \
 		curve25519-dalek,curve25519-dalek-derive@git+https://github.com/signalapp/curve25519-dalek?tag=signal-curve25519-4.1.3\#7c6d34756355a3566a704da84dce7b1c039a6572 \
+		boring,boring-sys,tokio-boring@git+https://github.com/signalapp/boring?tag=signal-v4.18.0\#81d4aa19ac6c5af99238ff0bf9328b381ccebcdd \
 		spqr@git+https://github.com/signalapp/SparsePostQuantumRatchet.git?tag=v1.2.0\#99a759a3fd40cd9304459fb007fcf177db9ed207
diff --git a/net-im/libsignal-node/distinfo b/net-im/libsignal-node/distinfo
index 406b65a5d4ee..e2cca9e9b614 100644
--- a/net-im/libsignal-node/distinfo
+++ b/net-im/libsignal-node/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1757237539
-SHA256 (libsignal-node-0.78.3-npm-cache.tar.gz) = 116fbbad65587aa59efd990c626ef7abc7cd18eda9370938ef14d2f37a0cd6dd
-SIZE (libsignal-node-0.78.3-npm-cache.tar.gz) = 61197046
+TIMESTAMP = 1758875939
+SHA256 (libsignal-node-0.81.0-npm-cache.tar.gz) = 7787902f19f7e09f69ea602cadba303d822c00c1d3cfdc901b946859aa258324
+SIZE (libsignal-node-0.81.0-npm-cache.tar.gz) = 59275837
 SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
 SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
 SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
@@ -71,8 +71,8 @@ SHA256 (rust/crates/base64ct-1.6.0.crate) = 8c3c1a368f70d6cf7302d78f8f7093da241f
 SIZE (rust/crates/base64ct-1.6.0.crate) = 28870
 SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad
 SIZE (rust/crates/bincode-1.3.3.crate) = 28958
-SHA256 (rust/crates/bindgen-0.70.1.crate) = f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f
-SIZE (rust/crates/bindgen-0.70.1.crate) = 226363
+SHA256 (rust/crates/bindgen-0.72.0.crate) = 4f72209734318d0b619a5e0f5129918b848c416e122a3c4ce054e03cb87b726f
+SIZE (rust/crates/bindgen-0.72.0.crate) = 246019
 SHA256 (rust/crates/bit-set-0.8.0.crate) = 08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3
 SIZE (rust/crates/bit-set-0.8.0.crate) = 16289
 SHA256 (rust/crates/bit-vec-0.8.0.crate) = 5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7
@@ -183,8 +183,12 @@ SHA256 (rust/crates/darling_core-0.20.11.crate) = 0d00b9596d185e565c2207a0b01f8b
 SIZE (rust/crates/darling_core-0.20.11.crate) = 68006
 SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead
 SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532
-SHA256 (rust/crates/data-encoding-2.8.0.crate) = 575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010
-SIZE (rust/crates/data-encoding-2.8.0.crate) = 21394
+SHA256 (rust/crates/data-encoding-2.9.0.crate) = 2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476
+SIZE (rust/crates/data-encoding-2.9.0.crate) = 21564
+SHA256 (rust/crates/data-encoding-macro-0.1.18.crate) = 47ce6c96ea0102f01122a185683611bd5ac8d99e62bc59dd12e6bda344ee673d
+SIZE (rust/crates/data-encoding-macro-0.1.18.crate) = 4357
+SHA256 (rust/crates/data-encoding-macro-internal-0.1.16.crate) = 8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976
+SIZE (rust/crates/data-encoding-macro-internal-0.1.16.crate) = 3714
 SHA256 (rust/crates/debugid-0.8.0.crate) = bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d
 SIZE (rust/crates/debugid-0.8.0.crate) = 12757
 SHA256 (rust/crates/der-0.7.9.crate) = f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0
@@ -411,8 +415,6 @@ SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e
 SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
 SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
 SIZE (rust/crates/itertools-0.10.5.crate) = 115354
-SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
-SIZE (rust/crates/itertools-0.13.0.crate) = 146261
 SHA256 (rust/crates/itertools-0.14.0.crate) = 2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285
 SIZE (rust/crates/itertools-0.14.0.crate) = 152715
 SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
@@ -479,8 +481,8 @@ SHA256 (rust/crates/macro_rules_attribute-0.2.0.crate) = 8a82271f7bc033d84bbca59
 SIZE (rust/crates/macro_rules_attribute-0.2.0.crate) = 15408
 SHA256 (rust/crates/macro_rules_attribute-proc_macro-0.2.0.crate) = b8dd856d451cc0da70e2ef2ce95a18e39a93b7558bedf10201ad28503f918568
 SIZE (rust/crates/macro_rules_attribute-proc_macro-0.2.0.crate) = 8264
-SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558
-SIZE (rust/crates/matchers-0.1.0.crate) = 6948
+SHA256 (rust/crates/matchers-0.2.0.crate) = d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9
+SIZE (rust/crates/matchers-0.2.0.crate) = 7075
 SHA256 (rust/crates/matchit-0.8.4.crate) = 47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3
 SIZE (rust/crates/matchit-0.8.4.crate) = 33986
 SHA256 (rust/crates/mediasan-common-0.5.3.crate) = 1f73b5d28d38190d36e335021afe3ecac3f2149571a7ec004feb0802e3630b60
@@ -527,8 +529,8 @@ SHA256 (rust/crates/nom-derive-impl-0.10.1.crate) = cd0b9a93a84b0d3ec3e70e02d332
 SIZE (rust/crates/nom-derive-impl-0.10.1.crate) = 18645
 SHA256 (rust/crates/nonzero_ext-0.3.0.crate) = 38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21
 SIZE (rust/crates/nonzero_ext-0.3.0.crate) = 15855
-SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84
-SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311
+SHA256 (rust/crates/nu-ansi-term-0.50.1.crate) = d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399
+SIZE (rust/crates/nu-ansi-term-0.50.1.crate) = 28536
 SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9
 SIZE (rust/crates/num-bigint-0.4.6.crate) = 102801
 SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
@@ -555,8 +557,6 @@ SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4
 SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601
 SHA256 (rust/crates/openssl-probe-0.1.6.crate) = d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e
 SIZE (rust/crates/openssl-probe-0.1.6.crate) = 8128
-SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39
-SIZE (rust/crates/overload-0.1.1.crate) = 24439
 SHA256 (rust/crates/partial-default-0.1.0.crate) = 124dc3c21ffb6fb3a0562d129929a8a54998766ef7adc1ba09ddc467d092c14b
 SIZE (rust/crates/partial-default-0.1.0.crate) = 15031
 SHA256 (rust/crates/partial-default-derive-0.1.0.crate) = 7459127d7a18cb202d418e4b7df1103ffd6d82a106e9b2091c250624c2ace70d
@@ -695,20 +695,16 @@ SHA256 (rust/crates/rcgen-0.13.2.crate) = 75e669e5202259b5314d1ea5397316ad400819
 SIZE (rust/crates/rcgen-0.13.2.crate) = 77836
 SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191
 SIZE (rust/crates/regex-1.11.1.crate) = 254170
-SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132
-SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533
 SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908
 SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525
-SHA256 (rust/crates/regex-syntax-0.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1
-SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752
 SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
 SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
 SHA256 (rust/crates/ring-0.17.14.crate) = a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7
 SIZE (rust/crates/ring-0.17.14.crate) = 1502610
 SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f
 SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047
-SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
-SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
+SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
+SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154
 SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92
 SIZE (rust/crates/rustc_version-0.4.1.crate) = 12245
 SHA256 (rust/crates/rusticata-macros-4.1.0.crate) = faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632
@@ -795,8 +791,8 @@ SHA256 (rust/crates/smallvec-1.15.0.crate) = 8917285742e9f3e1683f0a9c4e6b57960b7
 SIZE (rust/crates/smallvec-1.15.0.crate) = 38113
 SHA256 (rust/crates/smart-default-0.7.1.crate) = 0eb01866308440fc64d6c44d9e86c5cc17adfe33c4d6eed55da9145044d0ffc1
 SIZE (rust/crates/smart-default-0.7.1.crate) = 8435
-SHA256 (rust/crates/snow-0.9.6.crate) = 850948bee068e713b8ab860fe1adc4d109676ab4c3b621fd8147f06b261f2f85
-SIZE (rust/crates/snow-0.9.6.crate) = 612127
+SHA256 (rust/crates/snow-0.10.0.crate) = 599b506ccc4aff8cf7844bc42cf783009a434c1e26c964432560fb6d6ad02d82
+SIZE (rust/crates/snow-0.10.0.crate) = 899770
 SHA256 (rust/crates/socket2-0.5.9.crate) = 4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef
 SIZE (rust/crates/socket2-0.5.9.crate) = 57432
 SHA256 (rust/crates/socks5-proto-0.4.1.crate) = 3d91431c4672e25e372ef46bc554be8f315068c03608f99267a71ad32a12e8c4
@@ -885,8 +881,8 @@ SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253
 SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477
 SHA256 (rust/crates/tokio-tungstenite-0.21.0.crate) = c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38
 SIZE (rust/crates/tokio-tungstenite-0.21.0.crate) = 28159
-SHA256 (rust/crates/tokio-tungstenite-0.26.2.crate) = 7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084
-SIZE (rust/crates/tokio-tungstenite-0.26.2.crate) = 29868
+SHA256 (rust/crates/tokio-tungstenite-0.27.0.crate) = 489a59b6730eda1b0171fcfda8b121f4bee2b35cba8645ca35c5f7ba3eb736c1
+SIZE (rust/crates/tokio-tungstenite-0.27.0.crate) = 29756
 SHA256 (rust/crates/tokio-util-0.7.14.crate) = 6b9590b93e6fcc1739458317cccd391ad3955e2bde8913edf6f95f9e65a8f034
 SIZE (rust/crates/tokio-util-0.7.14.crate) = 118861
 SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41
@@ -911,14 +907,14 @@ SHA256 (rust/crates/tracing-core-0.1.33.crate) = e672c95779cf947c5311f83787af4fa
 SIZE (rust/crates/tracing-core-0.1.33.crate) = 63434
 SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3
 SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561
-SHA256 (rust/crates/tracing-subscriber-0.3.19.crate) = e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008
-SIZE (rust/crates/tracing-subscriber-0.3.19.crate) = 198345
+SHA256 (rust/crates/tracing-subscriber-0.3.20.crate) = 2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5
+SIZE (rust/crates/tracing-subscriber-0.3.20.crate) = 212274
 SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b
 SIZE (rust/crates/try-lock-0.2.5.crate) = 4314
 SHA256 (rust/crates/tungstenite-0.21.0.crate) = 9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1
 SIZE (rust/crates/tungstenite-0.21.0.crate) = 59858
-SHA256 (rust/crates/tungstenite-0.26.2.crate) = 4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13
-SIZE (rust/crates/tungstenite-0.26.2.crate) = 65315
+SHA256 (rust/crates/tungstenite-0.27.0.crate) = eadc29d668c91fcc564941132e17b28a7ceb2f3ebf0b9dae3e03fd7a6748eb0d
+SIZE (rust/crates/tungstenite-0.27.0.crate) = 67162
 SHA256 (rust/crates/typenum-1.18.0.crate) = 1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f
 SIZE (rust/crates/typenum-1.18.0.crate) = 74871
 SHA256 (rust/crates/ucd-trie-0.1.7.crate) = 2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971
@@ -1079,14 +1075,14 @@ SHA256 (rust/crates/zerovec-0.10.4.crate) = aa2b893d79df23bfb12d5461018d408ea19d
 SIZE (rust/crates/zerovec-0.10.4.crate) = 126398
 SHA256 (rust/crates/zerovec-derive-0.10.3.crate) = 6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6
 SIZE (rust/crates/zerovec-derive-0.10.3.crate) = 19438
-SHA256 (signalapp-boring-signal-v4.15.0_GH0.tar.gz) = cbbf016bad0d0672bb288ee82503619d9a2b7b8cb95d7795fbe2b11be60dda6f
-SIZE (signalapp-boring-signal-v4.15.0_GH0.tar.gz) = 332114
 SHA256 (signalapp-curve25519-dalek-signal-curve25519-4.1.3_GH0.tar.gz) = 8dd338dd7d558b7882310e8dc76ceca41ef448afd0532be208d4ff0f2924f334
 SIZE (signalapp-curve25519-dalek-signal-curve25519-4.1.3_GH0.tar.gz) = 808022
+SHA256 (signalapp-boring-signal-v4.18.0_GH0.tar.gz) = 9c954862f663475b1e7063a26b0e16ea0eca372826e7d16fd25775e84b0eb280
+SIZE (signalapp-boring-signal-v4.18.0_GH0.tar.gz) = 338846
 SHA256 (signalapp-SparsePostQuantumRatchet-v1.2.0_GH0.tar.gz) = e551333c1ff1a1e8fc19d4b47513b1b15b556f2d79ab37c10ffab3150b17d405
 SIZE (signalapp-SparsePostQuantumRatchet-v1.2.0_GH0.tar.gz) = 143737
-SHA256 (signalapp-libsignal-v0.78.3_GH0.tar.gz) = 5df4afee765414ed8c8012a289a4f4cef5197add9acdabeaa9e355f28dfec43c
-SIZE (signalapp-libsignal-v0.78.3_GH0.tar.gz) = 2327582
+SHA256 (signalapp-libsignal-v0.81.0_GH0.tar.gz) = 93c9efebd227d5b1cc12f7efcbdc81d8bd38b969e23de4db67521f818a8725b7
+SIZE (signalapp-libsignal-v0.81.0_GH0.tar.gz) = 2335721
 SHA256 (google-boringssl-44b3df6f03d85c901767250329c571db405122d5_GH0.tar.gz) = 9567b43de39f66e57b895ee814135adc5ddf7f2c895964269b6b13b388158982
 SIZE (google-boringssl-44b3df6f03d85c901767250329c571db405122d5_GH0.tar.gz) = 46106995
 SHA256 (google-boringssl-853ca1ea1168dff08011e5d42d94609cc0ca2e27_GH0.tar.gz) = 61e85d6eaecf1706be0420a9104b66ff01bd04301b5fad323970685f942108ed
diff --git a/net-im/libsignal-node/files/patch-boring_boring-sys_main.rs b/net-im/libsignal-node/files/patch-boring_boring-sys_main.rs
index 510d8f677689..3c231e7555b3 100644
--- a/net-im/libsignal-node/files/patch-boring_boring-sys_main.rs
+++ b/net-im/libsignal-node/files/patch-boring_boring-sys_main.rs
@@ -1,5 +1,5 @@
---- ../boring-signal-v4.15.0/boring-sys/build/main.rs.orig	2024-04-27 16:40:34 UTC
-+++ ../boring-signal-v4.15.0/boring-sys/build/main.rs
+--- ../boring-signal-v4.18.0/boring-sys/build/main.rs.orig	2024-04-27 16:40:34 UTC
++++ ../boring-signal-v4.18.0/boring-sys/build/main.rs
 @@ -478,9 +478,9 @@ fn ensure_patches_applied(config: &Config) -> io::Resu
      lock_file.lock()?;
  
diff --git a/net-im/libsignal-node/files/patch-node_binding.gyp b/net-im/libsignal-node/files/patch-node_binding.gyp
deleted file mode 100644
index 91d53cc550e5..000000000000
--- a/net-im/libsignal-node/files/patch-node_binding.gyp
+++ /dev/null
@@ -1,10 +0,0 @@
---- node/binding.gyp.orig	2022-02-25 14:33:26 UTC
-+++ node/binding.gyp
-@@ -6,6 +6,7 @@
- {
-     'conditions': [
-         ['OS=="mac"', {'variables': {'NODE_OS_NAME': 'darwin', 'CARGO_TARGET_SUFFIX': 'apple-darwin'}},
-+         'OS=="freebsd"', {'variables': {'NODE_OS_NAME': 'freebsd', 'CARGO_TARGET_SUFFIX': 'unknown-freebsd'}},
-          'OS=="win"', {'variables': {'NODE_OS_NAME': 'win32', 'CARGO_TARGET_SUFFIX': 'pc-windows-msvc'}},
-          'OS=="linux"', {'variables': {'NODE_OS_NAME': 'linux', 'CARGO_TARGET_SUFFIX': 'unknown-linux-gnu'}},
-          {'variables': {'NODE_OS_NAME': '<(OS)'}}],
diff --git a/net-im/libsignal-node/files/patch-node_build__node__bridge.py b/net-im/libsignal-node/files/patch-node_build__node__bridge.py
new file mode 100644
index 000000000000..f93b4f86bc9f
--- /dev/null
+++ b/net-im/libsignal-node/files/patch-node_build__node__bridge.py
@@ -0,0 +1,19 @@
+--- node/build_node_bridge.py.orig	2025-09-26 09:35:20 UTC
++++ node/build_node_bridge.py
+@@ -132,7 +132,7 @@ def main(args: Optional[List[str]] = None) -> int:
+     else:
+         features.append('log/release_max_level_info')
+ 
+-    cmdline = ['cargo', 'build', '--target', cargo_target, '-p', 'libsignal-node', '--features', ','.join(features)]
++    cmdline = ['cargo', 'build', '-p', 'libsignal-node', '--features', ','.join(features)]
+     if configuration_name == 'Release':
+         cmdline.append('--release')
+     else:
+@@ -227,7 +227,6 @@ def main(args: Optional[List[str]] = None) -> int:
+     subprocess.check_call(cmdline, env=cargo_env)
+ 
+     libs_in = os.path.join(cargo_env['CARGO_BUILD_TARGET_DIR'],
+-                           cargo_target,
+                            configuration_name.lower())
+ 
+     src_path = os.path.join(libs_in, lib_format.format('signal_node'))