git: 7947aa2162c8 - main - sysutils/mprocs: Rename to sysutils/dekit and update to 0.9.6

From: Jesús Daniel Colmenares Oviedo <dtxdf_at_FreeBSD.org>
Date: Sun, 06 Sep 2026 00:04:04 UTC
The branch main has been updated by dtxdf:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7947aa2162c8ff7b63a47744aa5d4c9931419f4a

commit 7947aa2162c8ff7b63a47744aa5d4c9931419f4a
Author:     Jesús Daniel Colmenares Oviedo <dtxdf@FreeBSD.org>
AuthorDate: 2026-09-05 22:47:27 +0000
Commit:     Jesús Daniel Colmenares Oviedo <dtxdf@FreeBSD.org>
CommitDate: 2026-09-06 00:02:05 +0000

    sysutils/mprocs: Rename to sysutils/dekit and update to 0.9.6
    
    ChangeLogs:
    
    - https://github.com/pvolok/dekit/releases/tag/v0.9.0
    - https://github.com/pvolok/dekit/releases/tag/v0.9.1
    - https://github.com/pvolok/dekit/releases/tag/v0.9.2
    - https://github.com/pvolok/dekit/releases/tag/v0.9.3
    - https://github.com/pvolok/dekit/releases/tag/v0.9.4
    - https://github.com/pvolok/dekit/releases/tag/v0.9.5
    - https://github.com/pvolok/dekit/releases/tag/v0.9.6
---
 MOVED                                      |   1 +
 sysutils/Makefile                          |   2 +-
 sysutils/{mprocs => dekit}/Makefile        |  12 ++-
 sysutils/{mprocs => dekit}/Makefile.crates |  80 +++++++-------
 sysutils/{mprocs => dekit}/distinfo        | 162 ++++++++++++++++-------------
 sysutils/dekit/files/patch-Cargo.lock      | 134 ++++++++++++++++++++++++
 sysutils/dekit/files/patch-src_Cargo.toml  |  11 ++
 sysutils/dekit/pkg-descr                   |   2 +
 sysutils/mprocs/pkg-descr                  |   2 -
 9 files changed, 292 insertions(+), 114 deletions(-)

diff --git a/MOVED b/MOVED
index ba8e81506582..31a44832d7a5 100644
--- a/MOVED
+++ b/MOVED
@@ -5595,3 +5595,4 @@ sysutils/intel-nvmupdate-10g|sysutils/intel-nvmupdate-x550|2026-09-03|Rename to
 sysutils/intel-nvmupdate-100g|sysutils/intel-nvmupdate-e810|2026-09-03|Rename to match supported hardware
 sysutils/intel-nvmupdate-40g|sysutils/intel-nvmupdate-700series|2026-09-03|Rename to match supported hardware
 sysutils/intel-nvmupdate-e830|sysutils/intel-nvmupdate-e830-e835|2026-09-03|Rename to match supported hardware
+sysutils/mprocs|sysutils/dekit|2026-09-05|Upstream renamed
diff --git a/sysutils/Makefile b/sysutils/Makefile
index e7c1ef6cff16..a9c4d685a037 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -284,6 +284,7 @@
     SUBDIR += ddrescueview
     SUBDIR += debhelper
     SUBDIR += debootstrap
+    SUBDIR += dekit
     SUBDIR += deltarpm
     SUBDIR += deltup
     SUBDIR += deskflow
@@ -776,7 +777,6 @@
     SUBDIR += mountsmb2
     SUBDIR += mpifileutils
     SUBDIR += mping
-    SUBDIR += mprocs
     SUBDIR += mptd
     SUBDIR += msiklm
     SUBDIR += msktutil
diff --git a/sysutils/mprocs/Makefile b/sysutils/dekit/Makefile
similarity index 56%
rename from sysutils/mprocs/Makefile
rename to sysutils/dekit/Makefile
index 44d6724665c6..5f9015a91e77 100644
--- a/sysutils/mprocs/Makefile
+++ b/sysutils/dekit/Makefile
@@ -1,22 +1,24 @@
-PORTNAME=	mprocs
+PORTNAME=	dekit
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.8.3
-PORTREVISION=	4
+DISTVERSION=	0.9.6
 CATEGORIES=	sysutils
 
 MAINTAINER=	dtxdf@FreeBSD.org
 COMMENT=	Run multiple commands in parallel
-WWW=		https://github.com/pvolok/mprocs/
+WWW=		https://github.com/pvolok/dekit
 
 LICENSE=	MIT
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
+BUILD_DEPENDS=  ${LOCALBASE}/llvm${LLVM_DEFAULT}/lib/libclang.so:devel/llvm${LLVM_DEFAULT}
+
 USES=		cargo gmake
 USE_GITHUB=	yes
 GH_ACCOUNT=	pvolok
 
 CARGO_INSTALL_PATH=	src
 
-PLIST_FILES=	bin/mprocs
+PLIST_FILES=	bin/dekit \
+		bin/mprocs
 
 .include <bsd.port.mk>
diff --git a/sysutils/mprocs/Makefile.crates b/sysutils/dekit/Makefile.crates
similarity index 85%
rename from sysutils/mprocs/Makefile.crates
rename to sysutils/dekit/Makefile.crates
index 590efaa9625a..a189756a5844 100644
--- a/sysutils/mprocs/Makefile.crates
+++ b/sysutils/dekit/Makefile.crates
@@ -1,8 +1,7 @@
 CARGO_CRATES=	addr2line-0.21.0 \
 		adler-1.0.2 \
-		ahash-0.8.11 \
 		aho-corasick-0.7.18 \
-		allocator-api2-0.2.18 \
+		allocator-api2-0.2.21 \
 		android_system_properties-0.1.5 \
 		anstream-0.3.2 \
 		anstyle-1.0.1 \
@@ -11,11 +10,13 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		anstyle-wincon-1.0.1 \
 		anyhow-1.0.72 \
 		assert_matches-1.5.0 \
+		async-lock-3.4.2 \
 		atomic-0.6.0 \
 		autocfg-1.1.0 \
 		backtrace-0.3.69 \
 		base64-0.22.0 \
 		bincode-1.3.3 \
+		bindgen-0.72.1 \
 		bit-set-0.5.3 \
 		bit-vec-0.6.3 \
 		bitflags-1.3.2 \
@@ -25,27 +26,26 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		bumpalo-3.12.0 \
 		bytemuck-1.22.0 \
 		bytes-1.5.0 \
-		cassowary-0.3.0 \
 		castaway-0.2.3 \
 		cc-1.2.31 \
+		cexpr-0.6.0 \
 		cfg-if-1.0.0 \
-		cfg_aliases-0.1.1 \
 		cfg_aliases-0.2.1 \
 		chrono-0.4.24 \
+		clang-sys-1.9.1 \
 		clap-4.3.19 \
 		clap_builder-4.3.19 \
 		clap_lex-0.5.0 \
 		clipboard-win-5.3.1 \
 		codespan-reporting-0.11.1 \
 		colorchoice-1.0.0 \
-		compact_str-0.8.1 \
 		compact_str-0.9.0 \
-		convert_case-0.7.1 \
+		concurrent-queue-2.5.0 \
+		convert_case-0.10.0 \
 		core-foundation-sys-0.8.3 \
 		cpufeatures-0.2.5 \
+		crossbeam-utils-0.8.21 \
 		crossterm-0.27.0 \
-		crossterm-0.28.1 \
-		crossterm-0.29.0 \
 		crossterm_winapi-0.9.1 \
 		crypto-common-0.1.6 \
 		csscolorparser-0.6.2 \
@@ -55,11 +55,9 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		cxxbridge-macro-1.0.94 \
 		daemonize-0.5.0 \
 		deltae-0.3.0 \
-		derive_more-2.0.1 \
-		derive_more-impl-2.0.1 \
 		digest-0.10.7 \
-		document-features-0.2.11 \
-		downcast-rs-1.2.1 \
+		dlopen2-0.8.2 \
+		dlopen2_derive-0.4.3 \
 		dunce-1.0.4 \
 		either-1.11.0 \
 		env_home-0.1.0 \
@@ -70,6 +68,8 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		errno-dragonfly-0.1.2 \
 		error-code-3.2.0 \
 		euclid-0.22.9 \
+		event-listener-5.4.1 \
+		event-listener-strategy-0.5.4 \
 		fancy-regex-0.11.0 \
 		fastrand-2.3.0 \
 		filedescriptor-0.8.3 \
@@ -77,6 +77,7 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		fixedbitset-0.4.2 \
 		flexi_logger-0.31.2 \
 		fnv-1.0.7 \
+		foldhash-0.2.0 \
 		futures-0.3.28 \
 		futures-channel-0.3.28 \
 		futures-core-0.3.28 \
@@ -89,16 +90,16 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		generic-array-0.14.6 \
 		getrandom-0.3.2 \
 		gimli-0.28.0 \
+		glob-0.3.3 \
 		hashbrown-0.14.0 \
 		hashbrown-0.15.5 \
-		heck-0.5.0 \
+		hashbrown-0.16.1 \
 		hermit-abi-0.3.1 \
 		hex-0.4.3 \
 		iana-time-zone-0.1.54 \
 		iana-time-zone-haiku-0.1.1 \
+		ident_case-1.0.1 \
 		indexmap-2.0.0 \
-		indoc-2.0.3 \
-		instability-0.3.2 \
 		io-lifetimes-1.0.9 \
 		is-terminal-0.4.5 \
 		itertools-0.13.0 \
@@ -107,15 +108,13 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		lab-0.11.0 \
 		lazy_static-1.4.0 \
 		libc-0.2.172 \
+		libloading-0.8.9 \
 		link-cplusplus-1.0.8 \
 		linux-raw-sys-0.1.4 \
-		linux-raw-sys-0.4.15 \
 		linux-raw-sys-0.9.4 \
-		litrs-0.4.2 \
 		lock_api-0.4.7 \
 		log-0.4.27 \
 		log-panics-2.1.0 \
-		lru-0.12.3 \
 		lua-src-548.1.1 \
 		luajit-src-210.6.1+f9140a6 \
 		mac_address-1.1.8 \
@@ -128,7 +127,6 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		mio-1.0.4 \
 		mlua-0.11.1 \
 		mlua-sys-0.8.2 \
-		nix-0.28.0 \
 		nix-0.29.0 \
 		nom-7.1.3 \
 		nu-ansi-term-0.50.1 \
@@ -141,37 +139,43 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		ordered-float-4.6.0 \
 		parking_lot-0.12.0 \
 		parking_lot_core-0.9.3 \
-		paste-1.0.14 \
 		pest-2.8.0 \
 		pest_derive-2.8.0 \
 		pest_generator-2.8.0 \
 		pest_meta-2.8.0 \
 		phf-0.11.2 \
 		phf-0.12.1 \
+		phf-0.13.1 \
 		phf_codegen-0.11.2 \
 		phf_generator-0.11.1 \
 		phf_generator-0.12.1 \
+		phf_generator-0.13.1 \
 		phf_macros-0.11.2 \
 		phf_macros-0.12.1 \
 		phf_shared-0.11.2 \
 		phf_shared-0.12.1 \
+		phf_shared-0.13.1 \
 		pin-project-lite-0.2.16 \
 		pin-utils-0.1.0 \
 		pkg-config-0.3.25 \
-		portable-pty-0.9.0 \
+		prettyplease-0.2.34 \
+		proc-macro-crate-3.2.0 \
 		proc-macro2-1.0.93 \
 		quote-1.0.38 \
 		r-efi-5.2.0 \
 		rand-0.8.5 \
 		rand_core-0.6.3 \
-		ratatui-0.29.0 \
 		redox_syscall-0.2.13 \
 		regex-1.6.0 \
 		regex-syntax-0.6.27 \
+		relative-path-2.0.1 \
+		rquickjs-0.11.0 \
+		rquickjs-core-0.11.0 \
+		rquickjs-macro-0.11.0 \
+		rquickjs-sys-0.11.0 \
 		rustc-demangle-0.1.23 \
 		rustc-hash-2.1.1 \
 		rustix-0.36.11 \
-		rustix-0.38.44 \
 		rustix-1.0.8 \
 		rustversion-1.0.12 \
 		ryu-1.0.9 \
@@ -182,10 +186,7 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		serde_derive-1.0.217 \
 		serde_json-1.0.138 \
 		serde_yaml-0.9.25 \
-		serial2-0.2.29 \
 		sha2-0.10.8 \
-		shared_library-0.1.9 \
-		shell-words-1.1.0 \
 		shlex-1.3.0 \
 		signal-hook-0.3.17 \
 		signal-hook-mio-0.2.4 \
@@ -198,8 +199,6 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		static_assertions-1.1.0 \
 		strsim-0.10.0 \
 		strsim-0.11.1 \
-		strum-0.26.3 \
-		strum_macros-0.26.4 \
 		syn-1.0.109 \
 		syn-2.0.98 \
 		termcolor-1.1.3 \
@@ -210,24 +209,27 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		thiserror-2.0.12 \
 		thiserror-impl-1.0.38 \
 		thiserror-impl-2.0.12 \
+		time-0.1.45 \
 		tokio-1.48.0 \
 		tokio-macros-2.6.0 \
 		tokio-util-0.7.17 \
+		toml_datetime-0.6.11 \
+		toml_edit-0.22.20 \
 		triggered-0.1.2 \
-		tui-input-0.14.0 \
+		tui-input-0.15.0 \
 		typeid-1.0.3 \
 		typenum-1.16.0 \
 		ucd-trie-0.1.5 \
 		unicode-ident-1.0.8 \
 		unicode-segmentation-1.12.0 \
-		unicode-truncate-1.1.0 \
 		unicode-width-0.1.10 \
-		unicode-width-0.2.0 \
+		unicode-width-0.2.2 \
 		unsafe-libyaml-0.2.7 \
 		utf8parse-0.2.1 \
 		uuid-1.16.0 \
 		version_check-0.9.4 \
 		vtparse-0.6.2 \
+		wasi-0.10.0+wasi-snapshot-preview1 \
 		wasi-0.11.0+wasi-snapshot-preview1 \
 		wasi-0.14.2+wasi-0.2.4 \
 		wasm-bindgen-0.2.84 \
@@ -248,7 +250,16 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		winapi-util-0.1.5 \
 		winapi-x86_64-pc-windows-gnu-0.4.0 \
 		windows-0.46.0 \
+		windows-0.62.2 \
+		windows-collections-0.3.2 \
+		windows-core-0.62.2 \
+		windows-future-0.3.2 \
+		windows-implement-0.60.2 \
+		windows-interface-0.59.3 \
 		windows-link-0.2.1 \
+		windows-numerics-0.3.1 \
+		windows-result-0.4.1 \
+		windows-strings-0.5.1 \
 		windows-sys-0.36.1 \
 		windows-sys-0.42.0 \
 		windows-sys-0.45.0 \
@@ -261,6 +272,7 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		windows-targets-0.48.1 \
 		windows-targets-0.52.6 \
 		windows-targets-0.53.5 \
+		windows-threading-0.2.1 \
 		windows_aarch64_gnullvm-0.42.2 \
 		windows_aarch64_gnullvm-0.48.0 \
 		windows_aarch64_gnullvm-0.52.6 \
@@ -296,9 +308,7 @@ CARGO_CRATES=	addr2line-0.21.0 \
 		windows_x86_64_msvc-0.48.0 \
 		windows_x86_64_msvc-0.52.6 \
 		windows_x86_64_msvc-0.53.1 \
-		winreg-0.10.1 \
+		winnow-0.6.26 \
 		winsafe-0.0.19 \
 		wit-bindgen-rt-0.39.0 \
-		xdg-3.0.0 \
-		zerocopy-0.7.32 \
-		zerocopy-derive-0.7.32
+		xdg-3.0.0
diff --git a/sysutils/mprocs/distinfo b/sysutils/dekit/distinfo
similarity index 85%
rename from sysutils/mprocs/distinfo
rename to sysutils/dekit/distinfo
index 7888e22ef3c6..eccc6f92f8e7 100644
--- a/sysutils/mprocs/distinfo
+++ b/sysutils/dekit/distinfo
@@ -1,14 +1,12 @@
-TIMESTAMP = 1771265193
+TIMESTAMP = 1788646971
 SHA256 (rust/crates/addr2line-0.21.0.crate) = 8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb
 SIZE (rust/crates/addr2line-0.21.0.crate) = 40807
 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
 SIZE (rust/crates/adler-1.0.2.crate) = 12778
-SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011
-SIZE (rust/crates/ahash-0.8.11.crate) = 43607
 SHA256 (rust/crates/aho-corasick-0.7.18.crate) = 1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f
 SIZE (rust/crates/aho-corasick-0.7.18.crate) = 112923
-SHA256 (rust/crates/allocator-api2-0.2.18.crate) = 5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f
-SIZE (rust/crates/allocator-api2-0.2.18.crate) = 62504
+SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923
+SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622
 SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
 SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243
 SHA256 (rust/crates/anstream-0.3.2.crate) = 0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163
@@ -25,6 +23,8 @@ SHA256 (rust/crates/anyhow-1.0.72.crate) = 3b13c32d80ecc7ab747b80c3784bce54ee8a7
 SIZE (rust/crates/anyhow-1.0.72.crate) = 43837
 SHA256 (rust/crates/assert_matches-1.5.0.crate) = 9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9
 SIZE (rust/crates/assert_matches-1.5.0.crate) = 7761
+SHA256 (rust/crates/async-lock-3.4.2.crate) = 290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311
+SIZE (rust/crates/async-lock-3.4.2.crate) = 39826
 SHA256 (rust/crates/atomic-0.6.0.crate) = 8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994
 SIZE (rust/crates/atomic-0.6.0.crate) = 12919
 SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
@@ -35,6 +35,8 @@ SHA256 (rust/crates/base64-0.22.0.crate) = 9475866fec1451be56a3c2400fd081ff54653
 SIZE (rust/crates/base64-0.22.0.crate) = 81568
 SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad
 SIZE (rust/crates/bincode-1.3.3.crate) = 28958
+SHA256 (rust/crates/bindgen-0.72.1.crate) = 993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895
+SIZE (rust/crates/bindgen-0.72.1.crate) = 246071
 SHA256 (rust/crates/bit-set-0.5.3.crate) = 0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1
 SIZE (rust/crates/bit-set-0.5.3.crate) = 14470
 SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb
@@ -53,20 +55,20 @@ SHA256 (rust/crates/bytemuck-1.22.0.crate) = b6b1fc10dbac614ebc03540c9dbd60e8388
 SIZE (rust/crates/bytemuck-1.22.0.crate) = 52451
 SHA256 (rust/crates/bytes-1.5.0.crate) = a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223
 SIZE (rust/crates/bytes-1.5.0.crate) = 58909
-SHA256 (rust/crates/cassowary-0.3.0.crate) = df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53
-SIZE (rust/crates/cassowary-0.3.0.crate) = 22876
 SHA256 (rust/crates/castaway-0.2.3.crate) = 0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5
 SIZE (rust/crates/castaway-0.2.3.crate) = 11509
 SHA256 (rust/crates/cc-1.2.31.crate) = c3a42d84bb6b69d3a8b3eaacf0d88f179e1929695e1ad012b6cf64d9caaa5fd2
 SIZE (rust/crates/cc-1.2.31.crate) = 109427
+SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
+SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
 SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
-SHA256 (rust/crates/cfg_aliases-0.1.1.crate) = fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e
-SIZE (rust/crates/cfg_aliases-0.1.1.crate) = 6009
 SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724
 SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355
 SHA256 (rust/crates/chrono-0.4.24.crate) = 4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b
 SIZE (rust/crates/chrono-0.4.24.crate) = 191330
+SHA256 (rust/crates/clang-sys-1.9.1.crate) = 157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a
+SIZE (rust/crates/clang-sys-1.9.1.crate) = 47227
 SHA256 (rust/crates/clap-4.3.19.crate) = 5fd304a20bff958a57f04c4e96a2e7594cc4490a0e809cbd48bb6437edaa452d
 SIZE (rust/crates/clap-4.3.19.crate) = 55022
 SHA256 (rust/crates/clap_builder-4.3.19.crate) = 01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1
@@ -79,22 +81,20 @@ SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b0938
 SIZE (rust/crates/codespan-reporting-0.11.1.crate) = 48963
 SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7
 SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857
-SHA256 (rust/crates/compact_str-0.8.1.crate) = 3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32
-SIZE (rust/crates/compact_str-0.8.1.crate) = 71371
 SHA256 (rust/crates/compact_str-0.9.0.crate) = 3fdb1325a1cece981e8a296ab8f0f9b63ae357bd0784a9faaf548cc7b480707a
 SIZE (rust/crates/compact_str-0.9.0.crate) = 72135
-SHA256 (rust/crates/convert_case-0.7.1.crate) = bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7
-SIZE (rust/crates/convert_case-0.7.1.crate) = 23816
+SHA256 (rust/crates/concurrent-queue-2.5.0.crate) = 4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973
+SIZE (rust/crates/concurrent-queue-2.5.0.crate) = 22654
+SHA256 (rust/crates/convert_case-0.10.0.crate) = 633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9
+SIZE (rust/crates/convert_case-0.10.0.crate) = 24083
 SHA256 (rust/crates/core-foundation-sys-0.8.3.crate) = 5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc
 SIZE (rust/crates/core-foundation-sys-0.8.3.crate) = 17519
 SHA256 (rust/crates/cpufeatures-0.2.5.crate) = 28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320
 SIZE (rust/crates/cpufeatures-0.2.5.crate) = 11251
+SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
+SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
 SHA256 (rust/crates/crossterm-0.27.0.crate) = f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df
 SIZE (rust/crates/crossterm-0.27.0.crate) = 125311
-SHA256 (rust/crates/crossterm-0.28.1.crate) = 829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6
-SIZE (rust/crates/crossterm-0.28.1.crate) = 132275
-SHA256 (rust/crates/crossterm-0.29.0.crate) = d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b
-SIZE (rust/crates/crossterm-0.29.0.crate) = 136635
 SHA256 (rust/crates/crossterm_winapi-0.9.1.crate) = acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b
 SIZE (rust/crates/crossterm_winapi-0.9.1.crate) = 16027
 SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3
@@ -113,16 +113,12 @@ SHA256 (rust/crates/daemonize-0.5.0.crate) = ab8bfdaacb3c887a54d41bdf48d3af8873b
 SIZE (rust/crates/daemonize-0.5.0.crate) = 7125
 SHA256 (rust/crates/deltae-0.3.0.crate) = e412cd91a4ec62fcc739ea50c40babe21e3de60d69f36393cce377c7c04ead5a
 SIZE (rust/crates/deltae-0.3.0.crate) = 2108729
-SHA256 (rust/crates/derive_more-2.0.1.crate) = 093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678
-SIZE (rust/crates/derive_more-2.0.1.crate) = 70127
-SHA256 (rust/crates/derive_more-impl-2.0.1.crate) = bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3
-SIZE (rust/crates/derive_more-impl-2.0.1.crate) = 78233
 SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292
 SIZE (rust/crates/digest-0.10.7.crate) = 19557
-SHA256 (rust/crates/document-features-0.2.11.crate) = 95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d
-SIZE (rust/crates/document-features-0.2.11.crate) = 14640
-SHA256 (rust/crates/downcast-rs-1.2.1.crate) = 75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2
-SIZE (rust/crates/downcast-rs-1.2.1.crate) = 11821
+SHA256 (rust/crates/dlopen2-0.8.2.crate) = 5e2c5bd4158e66d1e215c49b837e11d62f3267b30c92f1d171c4d3105e3dc4d4
+SIZE (rust/crates/dlopen2-0.8.2.crate) = 27695
+SHA256 (rust/crates/dlopen2_derive-0.4.3.crate) = 0fbbb781877580993a8707ec48672673ec7b81eeba04cfd2310bd28c08e47c8f
+SIZE (rust/crates/dlopen2_derive-0.4.3.crate) = 7032
 SHA256 (rust/crates/dunce-1.0.4.crate) = 56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b
 SIZE (rust/crates/dunce-1.0.4.crate) = 8034
 SHA256 (rust/crates/either-1.11.0.crate) = a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2
@@ -143,6 +139,10 @@ SHA256 (rust/crates/error-code-3.2.0.crate) = a0474425d51df81997e2f90a21591180b3
 SIZE (rust/crates/error-code-3.2.0.crate) = 7569
 SHA256 (rust/crates/euclid-0.22.9.crate) = 87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787
 SIZE (rust/crates/euclid-0.22.9.crate) = 76671
+SHA256 (rust/crates/event-listener-5.4.1.crate) = e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab
+SIZE (rust/crates/event-listener-5.4.1.crate) = 43782
+SHA256 (rust/crates/event-listener-strategy-0.5.4.crate) = 8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93
+SIZE (rust/crates/event-listener-strategy-0.5.4.crate) = 16179
 SHA256 (rust/crates/fancy-regex-0.11.0.crate) = b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2
 SIZE (rust/crates/fancy-regex-0.11.0.crate) = 82918
 SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be
@@ -157,6 +157,8 @@ SHA256 (rust/crates/flexi_logger-0.31.2.crate) = 759bfa52db036a2db54f0b5f0ff164e
 SIZE (rust/crates/flexi_logger-0.31.2.crate) = 241563
 SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
 SIZE (rust/crates/fnv-1.0.7.crate) = 11266
+SHA256 (rust/crates/foldhash-0.2.0.crate) = 77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb
+SIZE (rust/crates/foldhash-0.2.0.crate) = 23329
 SHA256 (rust/crates/futures-0.3.28.crate) = 23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40
 SIZE (rust/crates/futures-0.3.28.crate) = 53229
 SHA256 (rust/crates/futures-channel-0.3.28.crate) = 955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2
@@ -181,12 +183,14 @@ SHA256 (rust/crates/getrandom-0.3.2.crate) = 73fea8450eea4bac3940448fb7ae50d91f0
 SIZE (rust/crates/getrandom-0.3.2.crate) = 49140
 SHA256 (rust/crates/gimli-0.28.0.crate) = 6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0
 SIZE (rust/crates/gimli-0.28.0.crate) = 269277
+SHA256 (rust/crates/glob-0.3.3.crate) = 0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280
+SIZE (rust/crates/glob-0.3.3.crate) = 22861
 SHA256 (rust/crates/hashbrown-0.14.0.crate) = 2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a
 SIZE (rust/crates/hashbrown-0.14.0.crate) = 116103
 SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1
 SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908
-SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
-SIZE (rust/crates/heck-0.5.0.crate) = 11517
+SHA256 (rust/crates/hashbrown-0.16.1.crate) = 841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100
+SIZE (rust/crates/hashbrown-0.16.1.crate) = 147785
 SHA256 (rust/crates/hermit-abi-0.3.1.crate) = fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286
 SIZE (rust/crates/hermit-abi-0.3.1.crate) = 13793
 SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70
@@ -195,12 +199,10 @@ SHA256 (rust/crates/iana-time-zone-0.1.54.crate) = 0c17cc76786e99f8d2f055c11159e
 SIZE (rust/crates/iana-time-zone-0.1.54.crate) = 19474
 SHA256 (rust/crates/iana-time-zone-haiku-0.1.1.crate) = 0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca
 SIZE (rust/crates/iana-time-zone-haiku-0.1.1.crate) = 7200
+SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
+SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
 SHA256 (rust/crates/indexmap-2.0.0.crate) = d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d
 SIZE (rust/crates/indexmap-2.0.0.crate) = 64038
-SHA256 (rust/crates/indoc-2.0.3.crate) = 2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4
-SIZE (rust/crates/indoc-2.0.3.crate) = 14305
-SHA256 (rust/crates/instability-0.3.2.crate) = b23a0c8dfe501baac4adf6ebbfa6eddf8f0c07f56b058cc1288017e32397846c
-SIZE (rust/crates/instability-0.3.2.crate) = 9772
 SHA256 (rust/crates/io-lifetimes-1.0.9.crate) = 09270fd4fa1111bc614ed2246c7ef56239a3063d5be0d1ec3b589c505d400aeb
 SIZE (rust/crates/io-lifetimes-1.0.9.crate) = 36442
 SHA256 (rust/crates/is-terminal-0.4.5.crate) = 8687c819457e979cc940d09cb16e42a1bf70aa6b60a549de6d3a62a0ee90c69e
@@ -217,24 +219,20 @@ SHA256 (rust/crates/lazy_static-1.4.0.crate) = e2abad23fbc42b3700f2f279844dc832a
 SIZE (rust/crates/lazy_static-1.4.0.crate) = 10443
 SHA256 (rust/crates/libc-0.2.172.crate) = d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa
 SIZE (rust/crates/libc-0.2.172.crate) = 791646
+SHA256 (rust/crates/libloading-0.8.9.crate) = d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55
+SIZE (rust/crates/libloading-0.8.9.crate) = 30222
 SHA256 (rust/crates/link-cplusplus-1.0.8.crate) = ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5
 SIZE (rust/crates/link-cplusplus-1.0.8.crate) = 7674
 SHA256 (rust/crates/linux-raw-sys-0.1.4.crate) = f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4
 SIZE (rust/crates/linux-raw-sys-0.1.4.crate) = 878981
-SHA256 (rust/crates/linux-raw-sys-0.4.15.crate) = d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab
-SIZE (rust/crates/linux-raw-sys-0.4.15.crate) = 2150898
 SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
 SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
-SHA256 (rust/crates/litrs-0.4.2.crate) = f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed
-SIZE (rust/crates/litrs-0.4.2.crate) = 43399
 SHA256 (rust/crates/lock_api-0.4.7.crate) = 327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53
 SIZE (rust/crates/lock_api-0.4.7.crate) = 25371
 SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
 SIZE (rust/crates/log-0.4.27.crate) = 48120
 SHA256 (rust/crates/log-panics-2.1.0.crate) = 68f9dd8546191c1850ecf67d22f5ff00a935b890d0e84713159a55495cc2ac5f
 SIZE (rust/crates/log-panics-2.1.0.crate) = 9464
-SHA256 (rust/crates/lru-0.12.3.crate) = d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc
-SIZE (rust/crates/lru-0.12.3.crate) = 15009
 SHA256 (rust/crates/lua-src-548.1.1.crate) = 00bc4bd1f1d5c65b30717333cbec4fa7aa378978940a1bca62f404498d423233
 SIZE (rust/crates/lua-src-548.1.1.crate) = 668260
 SHA256 (rust/crates/luajit-src-210.6.1+f9140a6.crate) = 813bd31f2759443affa687c0d9c5eb5cf6cb0e898810ab197408431d746054bf
@@ -259,8 +257,6 @@ SHA256 (rust/crates/mlua-0.11.1.crate) = de25fc513588ac1273aa8c6dc0fffee6d32c12f
 SIZE (rust/crates/mlua-0.11.1.crate) = 240452
 SHA256 (rust/crates/mlua-sys-0.8.2.crate) = bcdf7c9e260ca82aaa32ac11148941952b856bb8c69aa5a9e65962f21fcb8637
 SIZE (rust/crates/mlua-sys-0.8.2.crate) = 31843
-SHA256 (rust/crates/nix-0.28.0.crate) = ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4
-SIZE (rust/crates/nix-0.28.0.crate) = 311086
 SHA256 (rust/crates/nix-0.29.0.crate) = 71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46
 SIZE (rust/crates/nix-0.29.0.crate) = 318248
 SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
@@ -285,8 +281,6 @@ SHA256 (rust/crates/parking_lot-0.12.0.crate) = 87f5ec2493a61ac0506c0f4199f99070
 SIZE (rust/crates/parking_lot-0.12.0.crate) = 39761
 SHA256 (rust/crates/parking_lot_core-0.9.3.crate) = 09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929
 SIZE (rust/crates/parking_lot_core-0.9.3.crate) = 32256
-SHA256 (rust/crates/paste-1.0.14.crate) = de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c
-SIZE (rust/crates/paste-1.0.14.crate) = 18157
 SHA256 (rust/crates/pest-2.8.0.crate) = 198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6
 SIZE (rust/crates/pest-2.8.0.crate) = 128955
 SHA256 (rust/crates/pest_derive-2.8.0.crate) = d725d9cfd79e87dccc9341a2ef39d1b6f6353d68c4b33c177febbe1a402c97c5
@@ -299,12 +293,16 @@ SHA256 (rust/crates/phf-0.11.2.crate) = ade2d8b8f33c7333b51bcf0428d37e217e9f3219
 SIZE (rust/crates/phf-0.11.2.crate) = 21569
 SHA256 (rust/crates/phf-0.12.1.crate) = 913273894cec178f401a31ec4b656318d95473527be05c0752cc41cdc32be8b7
 SIZE (rust/crates/phf-0.12.1.crate) = 23768
+SHA256 (rust/crates/phf-0.13.1.crate) = c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf
+SIZE (rust/crates/phf-0.13.1.crate) = 24786
 SHA256 (rust/crates/phf_codegen-0.11.2.crate) = e8d39688d359e6b34654d328e262234662d16cc0f60ec8dcbe5e718709342a5a
 SIZE (rust/crates/phf_codegen-0.11.2.crate) = 12977
 SHA256 (rust/crates/phf_generator-0.11.1.crate) = b1181c94580fa345f50f19d738aaa39c0ed30a600d95cb2d3e23f94266f14fbf
 SIZE (rust/crates/phf_generator-0.11.1.crate) = 11075
 SHA256 (rust/crates/phf_generator-0.12.1.crate) = 2cbb1126afed61dd6368748dae63b1ee7dc480191c6262a3b4ff1e29d86a6c5b
 SIZE (rust/crates/phf_generator-0.12.1.crate) = 15743
+SHA256 (rust/crates/phf_generator-0.13.1.crate) = 135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737
+SIZE (rust/crates/phf_generator-0.13.1.crate) = 15952
 SHA256 (rust/crates/phf_macros-0.11.2.crate) = 3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b
 SIZE (rust/crates/phf_macros-0.11.2.crate) = 4748
 SHA256 (rust/crates/phf_macros-0.12.1.crate) = d713258393a82f091ead52047ca779d37e5766226d009de21696c4e667044368
@@ -313,14 +311,18 @@ SHA256 (rust/crates/phf_shared-0.11.2.crate) = 90fcb95eef784c2ac79119d1dd819e162
 SIZE (rust/crates/phf_shared-0.11.2.crate) = 14284
 SHA256 (rust/crates/phf_shared-0.12.1.crate) = 06005508882fb681fd97892ecff4b7fd0fee13ef1aa569f8695dae7ab9099981
 SIZE (rust/crates/phf_shared-0.12.1.crate) = 15568
+SHA256 (rust/crates/phf_shared-0.13.1.crate) = e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266
+SIZE (rust/crates/phf_shared-0.13.1.crate) = 16141
 SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b
 SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504
 SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184
 SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580
 SHA256 (rust/crates/pkg-config-0.3.25.crate) = 1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae
 SIZE (rust/crates/pkg-config-0.3.25.crate) = 16838
-SHA256 (rust/crates/portable-pty-0.9.0.crate) = b4a596a2b3d2752d94f51fac2d4a96737b8705dddd311a32b9af47211f08671e
-SIZE (rust/crates/portable-pty-0.9.0.crate) = 29466
+SHA256 (rust/crates/prettyplease-0.2.34.crate) = 6837b9e10d61f45f987d50808f83d1ee3d206c66acf650c3e4ae2e1f6ddedf55
+SIZE (rust/crates/prettyplease-0.2.34.crate) = 71832
+SHA256 (rust/crates/proc-macro-crate-3.2.0.crate) = 8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b
+SIZE (rust/crates/proc-macro-crate-3.2.0.crate) = 11164
 SHA256 (rust/crates/proc-macro2-1.0.93.crate) = 60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99
 SIZE (rust/crates/proc-macro2-1.0.93.crate) = 52388
 SHA256 (rust/crates/quote-1.0.38.crate) = 0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc
@@ -331,22 +333,28 @@ SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8
 SIZE (rust/crates/rand-0.8.5.crate) = 87113
 SHA256 (rust/crates/rand_core-0.6.3.crate) = d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7
 SIZE (rust/crates/rand_core-0.6.3.crate) = 21938
-SHA256 (rust/crates/ratatui-0.29.0.crate) = eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b
-SIZE (rust/crates/ratatui-0.29.0.crate) = 543514
 SHA256 (rust/crates/redox_syscall-0.2.13.crate) = 62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42
 SIZE (rust/crates/redox_syscall-0.2.13.crate) = 23759
 SHA256 (rust/crates/regex-1.6.0.crate) = 4c4eb3267174b8c6c2f654116623910a0fef09c4753f8dd83db29c48a0df988b
 SIZE (rust/crates/regex-1.6.0.crate) = 239329
 SHA256 (rust/crates/regex-syntax-0.6.27.crate) = a3f87b73ce11b1619a3c6332f45341e0047173771e8b8b73f87bfeefb7b56244
 SIZE (rust/crates/regex-syntax-0.6.27.crate) = 297300
+SHA256 (rust/crates/relative-path-2.0.1.crate) = bca40a312222d8ba74837cb474edef44b37f561da5f773981007a10bbaa992b0
+SIZE (rust/crates/relative-path-2.0.1.crate) = 28829
+SHA256 (rust/crates/rquickjs-0.11.0.crate) = c50dc6d6c587c339edb4769cf705867497a2baf0eca8b4645fa6ecd22f02c77a
+SIZE (rust/crates/rquickjs-0.11.0.crate) = 25527
+SHA256 (rust/crates/rquickjs-core-0.11.0.crate) = b8bf7840285c321c3ab20e752a9afb95548c75cd7f4632a0627cea3507e310c1
+SIZE (rust/crates/rquickjs-core-0.11.0.crate) = 130101
+SHA256 (rust/crates/rquickjs-macro-0.11.0.crate) = 7106215ff41a5677b104906a13e1a440b880f4b6362b5dc4f3978c267fad2b80
+SIZE (rust/crates/rquickjs-macro-0.11.0.crate) = 31447
+SHA256 (rust/crates/rquickjs-sys-0.11.0.crate) = 27344601ef27460e82d6a4e1ecb9e7e99f518122095f3c51296da8e9be2b9d83
+SIZE (rust/crates/rquickjs-sys-0.11.0.crate) = 916264
 SHA256 (rust/crates/rustc-demangle-0.1.23.crate) = d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76
 SIZE (rust/crates/rustc-demangle-0.1.23.crate) = 28970
 SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
 SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154
 SHA256 (rust/crates/rustix-0.36.11.crate) = db4165c9963ab29e422d6c26fbc1d37f15bace6b2810221f9d925023480fcf0e
 SIZE (rust/crates/rustix-0.36.11.crate) = 294103
-SHA256 (rust/crates/rustix-0.38.44.crate) = fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154
-SIZE (rust/crates/rustix-0.38.44.crate) = 379347
 SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
 SIZE (rust/crates/rustix-1.0.8.crate) = 416688
 SHA256 (rust/crates/rustversion-1.0.12.crate) = 4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06
@@ -367,14 +375,8 @@ SHA256 (rust/crates/serde_json-1.0.138.crate) = d434192e7da787e94a6ea7e9670b26a0
 SIZE (rust/crates/serde_json-1.0.138.crate) = 154769
 SHA256 (rust/crates/serde_yaml-0.9.25.crate) = 1a49e178e4452f45cb61d0cd8cebc1b0fafd3e41929e996cef79aa3aca91f574
 SIZE (rust/crates/serde_yaml-0.9.25.crate) = 64594
-SHA256 (rust/crates/serial2-0.2.29.crate) = c7d1d08630509d69f90eff4afcd02c3bd974d979225cbd815ff5942351b14375
-SIZE (rust/crates/serial2-0.2.29.crate) = 35321
 SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8
 SIZE (rust/crates/sha2-0.10.8.crate) = 26357
-SHA256 (rust/crates/shared_library-0.1.9.crate) = 5a9e7e0f2bfae24d8a5b5a66c5b257a83c7412304311512a0c054cd5e619da11
-SIZE (rust/crates/shared_library-0.1.9.crate) = 10566
-SHA256 (rust/crates/shell-words-1.1.0.crate) = 24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde
-SIZE (rust/crates/shell-words-1.1.0.crate) = 9871
 SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
 SIZE (rust/crates/shlex-1.3.0.crate) = 18713
 SHA256 (rust/crates/signal-hook-0.3.17.crate) = 8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801
@@ -399,10 +401,6 @@ SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f0
 SIZE (rust/crates/strsim-0.10.0.crate) = 11355
 SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
 SIZE (rust/crates/strsim-0.11.1.crate) = 14266
-SHA256 (rust/crates/strum-0.26.3.crate) = 8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06
-SIZE (rust/crates/strum-0.26.3.crate) = 7237
-SHA256 (rust/crates/strum_macros-0.26.4.crate) = 4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be
-SIZE (rust/crates/strum_macros-0.26.4.crate) = 27531
 SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
 SIZE (rust/crates/syn-1.0.109.crate) = 237611
 SHA256 (rust/crates/syn-2.0.98.crate) = 36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1
@@ -423,16 +421,22 @@ SHA256 (rust/crates/thiserror-impl-1.0.38.crate) = 1fb327af4685e4d03fa8cbcf17163
 SIZE (rust/crates/thiserror-impl-1.0.38.crate) = 15429
 SHA256 (rust/crates/thiserror-impl-2.0.12.crate) = 7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d
 SIZE (rust/crates/thiserror-impl-2.0.12.crate) = 21141
+SHA256 (rust/crates/time-0.1.45.crate) = 1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a
+SIZE (rust/crates/time-0.1.45.crate) = 28911
 SHA256 (rust/crates/tokio-1.48.0.crate) = ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408
 SIZE (rust/crates/tokio-1.48.0.crate) = 843434
 SHA256 (rust/crates/tokio-macros-2.6.0.crate) = af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5
 SIZE (rust/crates/tokio-macros-2.6.0.crate) = 16505
 SHA256 (rust/crates/tokio-util-0.7.17.crate) = 2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594
 SIZE (rust/crates/tokio-util-0.7.17.crate) = 133898
+SHA256 (rust/crates/toml_datetime-0.6.11.crate) = 22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c
+SIZE (rust/crates/toml_datetime-0.6.11.crate) = 16125
+SHA256 (rust/crates/toml_edit-0.22.20.crate) = 583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d
+SIZE (rust/crates/toml_edit-0.22.20.crate) = 106726
 SHA256 (rust/crates/triggered-0.1.2.crate) = ce148eae0d1a376c1b94ae651fc3261d9cb8294788b962b7382066376503a2d1
 SIZE (rust/crates/triggered-0.1.2.crate) = 6904
-SHA256 (rust/crates/tui-input-0.14.0.crate) = 911e93158bf80bbc94bad533b2b16e3d711e1132d69a6a6980c3920a63422c19
-SIZE (rust/crates/tui-input-0.14.0.crate) = 15216
+SHA256 (rust/crates/tui-input-0.15.0.crate) = 79c1ee964298f136020f5f69e0e601f4d3a1f610a7baf1af9fcb96152e8a2c45
+SIZE (rust/crates/tui-input-0.15.0.crate) = 21031
 SHA256 (rust/crates/typeid-1.0.3.crate) = bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c
 SIZE (rust/crates/typeid-1.0.3.crate) = 9006
 SHA256 (rust/crates/typenum-1.16.0.crate) = 497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba
@@ -443,12 +447,10 @@ SHA256 (rust/crates/unicode-ident-1.0.8.crate) = e5464a87b239f13a63a501f27015657
 SIZE (rust/crates/unicode-ident-1.0.8.crate) = 41962
 SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
 SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323
-SHA256 (rust/crates/unicode-truncate-1.1.0.crate) = b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf
-SIZE (rust/crates/unicode-truncate-1.1.0.crate) = 12529
 SHA256 (rust/crates/unicode-width-0.1.10.crate) = c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b
 SIZE (rust/crates/unicode-width-0.1.10.crate) = 18968
-SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd
-SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
+SHA256 (rust/crates/unicode-width-0.2.2.crate) = b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254
+SIZE (rust/crates/unicode-width-0.2.2.crate) = 282768
 SHA256 (rust/crates/unsafe-libyaml-0.2.7.crate) = ad2024452afd3874bf539695e04af6732ba06517424dbf958fdb16a01f3bef6c
 SIZE (rust/crates/unsafe-libyaml-0.2.7.crate) = 61483
 SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
@@ -459,6 +461,8 @@ SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7
 SIZE (rust/crates/version_check-0.9.4.crate) = 14895
 SHA256 (rust/crates/vtparse-0.6.2.crate) = 6d9b2acfb050df409c972a37d3b8e08cdea3bddb0c09db9d53137e504cfabed0
 SIZE (rust/crates/vtparse-0.6.2.crate) = 11448
+SHA256 (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f
+SIZE (rust/crates/wasi-0.10.0+wasi-snapshot-preview1.crate) = 26964
 SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
 SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
 SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3
@@ -499,8 +503,26 @@ SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1
 SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
 SHA256 (rust/crates/windows-0.46.0.crate) = cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25
 SIZE (rust/crates/windows-0.46.0.crate) = 11668505
+SHA256 (rust/crates/windows-0.62.2.crate) = 527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580
+SIZE (rust/crates/windows-0.62.2.crate) = 9360572
+SHA256 (rust/crates/windows-collections-0.3.2.crate) = 23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610
+SIZE (rust/crates/windows-collections-0.3.2.crate) = 13510
+SHA256 (rust/crates/windows-core-0.62.2.crate) = b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb
+SIZE (rust/crates/windows-core-0.62.2.crate) = 36932
+SHA256 (rust/crates/windows-future-0.3.2.crate) = e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb
+SIZE (rust/crates/windows-future-0.3.2.crate) = 17944
+SHA256 (rust/crates/windows-implement-0.60.2.crate) = 053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf
+SIZE (rust/crates/windows-implement-0.60.2.crate) = 15325
+SHA256 (rust/crates/windows-interface-0.59.3.crate) = 3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358
+SIZE (rust/crates/windows-interface-0.59.3.crate) = 11809
 SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5
 SIZE (rust/crates/windows-link-0.2.1.crate) = 6133
+SHA256 (rust/crates/windows-numerics-0.3.1.crate) = 6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26
+SIZE (rust/crates/windows-numerics-0.3.1.crate) = 9772
+SHA256 (rust/crates/windows-result-0.4.1.crate) = 7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5
+SIZE (rust/crates/windows-result-0.4.1.crate) = 13381
+SHA256 (rust/crates/windows-strings-0.5.1.crate) = 7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091
+SIZE (rust/crates/windows-strings-0.5.1.crate) = 13966
 SHA256 (rust/crates/windows-sys-0.36.1.crate) = ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2
 SIZE (rust/crates/windows-sys-0.36.1.crate) = 3347053
 SHA256 (rust/crates/windows-sys-0.42.0.crate) = 5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7
@@ -525,6 +547,8 @@ SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d478
 SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
 SHA256 (rust/crates/windows-targets-0.53.5.crate) = 4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3
 SIZE (rust/crates/windows-targets-0.53.5.crate) = 7126
+SHA256 (rust/crates/windows-threading-0.2.1.crate) = 3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37
+SIZE (rust/crates/windows-threading-0.2.1.crate) = 9686
 SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8
 SIZE (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 364071
 SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc
@@ -595,17 +619,13 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270
 SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
 SHA256 (rust/crates/windows_x86_64_msvc-0.53.1.crate) = d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650
 SIZE (rust/crates/windows_x86_64_msvc-0.53.1.crate) = 837950
-SHA256 (rust/crates/winreg-0.10.1.crate) = 80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d
-SIZE (rust/crates/winreg-0.10.1.crate) = 25725
+SHA256 (rust/crates/winnow-0.6.26.crate) = 1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28
+SIZE (rust/crates/winnow-0.6.26.crate) = 167349
 SHA256 (rust/crates/winsafe-0.0.19.crate) = d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904
 SIZE (rust/crates/winsafe-0.0.19.crate) = 492820
 SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1
 SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241
 SHA256 (rust/crates/xdg-3.0.0.crate) = 2fb433233f2df9344722454bc7e96465c9d03bff9d77c248f9e7523fe79585b5
 SIZE (rust/crates/xdg-3.0.0.crate) = 15821
-SHA256 (rust/crates/zerocopy-0.7.32.crate) = 74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be
-SIZE (rust/crates/zerocopy-0.7.32.crate) = 151096
-SHA256 (rust/crates/zerocopy-derive-0.7.32.crate) = 9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6
-SIZE (rust/crates/zerocopy-derive-0.7.32.crate) = 37623
-SHA256 (pvolok-mprocs-v0.8.3_GH0.tar.gz) = e0e91097399b751df42558c3717e6be130bfd523612c772dd1e3f9070eddbc5e
-SIZE (pvolok-mprocs-v0.8.3_GH0.tar.gz) = 264341
+SHA256 (pvolok-dekit-v0.9.6_GH0.tar.gz) = 294fa02bfec7c73bc29448c55497ac46deda8b82bec259e492c51cfb67330c2d
+SIZE (pvolok-dekit-v0.9.6_GH0.tar.gz) = 324188
diff --git a/sysutils/dekit/files/patch-Cargo.lock b/sysutils/dekit/files/patch-Cargo.lock
new file mode 100644
index 000000000000..ca1f16d0d9cb
--- /dev/null
+++ b/sysutils/dekit/files/patch-Cargo.lock
@@ -0,0 +1,134 @@
+--- Cargo.lock.orig	2026-09-05 22:19:57 UTC
++++ Cargo.lock
+@@ -159,6 +159,26 @@ dependencies = [
+ ]
+ 
+ [[package]]
++name = "bindgen"
++version = "0.72.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895"
++dependencies = [
++ "bitflags 2.9.1",
++ "cexpr",
++ "clang-sys",
++ "itertools",
++ "log",
++ "prettyplease",
++ "proc-macro2",
++ "quote",
++ "regex",
++ "rustc-hash",
++ "shlex",
++ "syn 2.0.98",
++]
++
++[[package]]
+ name = "bit-set"
+ version = "0.5.3"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -244,6 +264,15 @@ dependencies = [
+ ]
+ 
+ [[package]]
++name = "cexpr"
++version = "0.6.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
++dependencies = [
++ "nom",
++]
++
++[[package]]
+ name = "cfg-if"
+ version = "1.0.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -271,6 +300,17 @@ dependencies = [
+ ]
+ 
+ [[package]]
++name = "clang-sys"
++version = "1.9.1"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a"
++dependencies = [
++ "glob",
++ "libc",
++ "libloading",
++]
++
++[[package]]
+ name = "clap"
+ version = "4.3.19"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -795,6 +835,12 @@ checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5e
+ checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
+ 
+ [[package]]
++name = "glob"
++version = "0.3.3"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280"
++
++[[package]]
+ name = "hashbrown"
+ version = "0.14.0"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -894,6 +940,15 @@ dependencies = [
+ ]
+ 
+ [[package]]
++name = "itertools"
++version = "0.13.0"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
++dependencies = [
++ "either",
++]
++
++[[package]]
+ name = "itoa"
+ version = "1.0.15"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -927,6 +982,16 @@ checksum = "d750af042f7ef4f724306de029d18836c26c1765a5
+ checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
+ 
+ [[package]]
++name = "libloading"
++version = "0.8.9"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
++dependencies = [
++ "cfg-if",
++ "windows-link",
++]
++
++[[package]]
+ name = "link-cplusplus"
+ version = "1.0.8"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+@@ -1441,6 +1506,16 @@ checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558c
+ checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
+ 
+ [[package]]
++name = "prettyplease"
++version = "0.2.34"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "6837b9e10d61f45f987d50808f83d1ee3d206c66acf650c3e4ae2e1f6ddedf55"
++dependencies = [
++ "proc-macro2",
++ "syn 2.0.98",
++]
++
++[[package]]
+ name = "print-key"
+ version = "0.1.0"
+ dependencies = [
+@@ -1585,6 +1660,7 @@ dependencies = [
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+ checksum = "27344601ef27460e82d6a4e1ecb9e7e99f518122095f3c51296da8e9be2b9d83"
+ dependencies = [
++ "bindgen",
+  "cc",
+ ]
+ 
diff --git a/sysutils/dekit/files/patch-src_Cargo.toml b/sysutils/dekit/files/patch-src_Cargo.toml
new file mode 100644
index 000000000000..badea9ed4be5
--- /dev/null
+++ b/sysutils/dekit/files/patch-src_Cargo.toml
@@ -0,0 +1,11 @@
+--- src/Cargo.toml.orig	2026-09-05 22:05:31 UTC
++++ src/Cargo.toml
+@@ -72,7 +72,7 @@ itoa = "1"
+ log-panics = { version = "2.1.0", features = ["with-backtrace"] }
+ scopeguard = "1.2.0"
+ itoa = "1"
+-rquickjs = { version = "0.11", features = ["full-async"] }
++rquickjs = { version = "0.11", features = ["full-async", "bindgen"] }
+ rustix = { version = "1", features = ["all-apis"] }
+ 
+ [target."cfg(unix)".dependencies]
diff --git a/sysutils/dekit/pkg-descr b/sysutils/dekit/pkg-descr
new file mode 100644
index 000000000000..60346cf6f296
--- /dev/null
+++ b/sysutils/dekit/pkg-descr
@@ -0,0 +1,2 @@
+dekit (formerly known as mprocs) runs multiple commands in parallel
+and shows output of each command separately.
diff --git a/sysutils/mprocs/pkg-descr b/sysutils/mprocs/pkg-descr
deleted file mode 100644
index 30c7787fbb11..000000000000
--- a/sysutils/mprocs/pkg-descr
+++ /dev/null
@@ -1,2 +0,0 @@
-mprocs runs multiple commands in parallel and shows output of each
-command separately.