summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Milosavljevic <dannym@friendly-machines.com>2026-02-08 21:14:05 +0000
committerDanny Milosavljevic <dannym@friendly-machines.com>2026-02-15 17:34:12 +0100
commit5ab5c418685d073f8d98d6f5a23639e276daf776 (patch)
tree426fe804f73420e674195dae8b47bd555d1d25d6
parent6a386b23c228b1ec3f8c1e95c56a080ac7c7ec1d (diff)
gnu: Add rust-codex@0.0.0.785c0c43.
* gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch: New file. * gnu/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch: New file. * gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch: New file. * gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch: New file. * gnu/local.mk (dist_patch_DATA): Register them. * gnu/packages/rust-crates.scm (rust-codex-api-0.0.0.785c0c43, rust-codex-app-server-protocol-0.0.0.785c0c43, rust-codex-apply-patch-0.0.0.785c0c43, rust-codex-arg0-0.0.0.785c0c43, rust-codex-async-utils-0.0.0.785c0c43, rust-codex-client-0.0.0.785c0c43, rust-codex-common-0.0.0.785c0c43, rust-codex-core-0.0.0.785c0c43, rust-codex-execpolicy-0.0.0.785c0c43, rust-codex-experimental-api-macros-0.0.0.785c0c43, rust-codex-file-search-0.0.0.785c0c43, rust-codex-git-0.0.0.785c0c43, rust-codex-keyring-store-0.0.0.785c0c43, rust-codex-linux-sandbox-0.0.0.785c0c43, rust-codex-lmstudio-0.0.0.785c0c43, rust-codex-login-0.0.0.785c0c43, rust-codex-mcp-server-0.0.0.785c0c43, rust-codex-ollama-0.0.0.785c0c43, rust-codex-otel-0.0.0.785c0c43, rust-codex-protocol-0.0.0.785c0c43, rust-codex-rmcp-client-0.0.0.785c0c43, rust-codex-state-0.0.0.785c0c43, rust-codex-utils-absolute-path-0.0.0.785c0c43, rust-codex-utils-cache-0.0.0.785c0c43, rust-codex-utils-home-dir-0.0.0.785c0c43, rust-codex-utils-image-0.0.0.785c0c43, rust-codex-utils-json-to-toml-0.0.0.785c0c43, rust-codex-utils-pty-0.0.0.785c0c43, rust-codex-utils-readiness-0.0.0.785c0c43, rust-codex-utils-string-0.0.0.785c0c43, rust-codex-windows-sandbox-0.0.0.785c0c43): New variables. * gnu/packages/rust-crates.scm (lookup-cargo-inputs) [rust-codex-0.0.0.785c0c43, codex-app-server-protocol, codex-common, codex-core, codex-protocol, codex-utils-absolute-path]: New entries. * gnu/packages/rust-sources.scm (rust-codex-0.0.0.785c0c43): New variable. Change-Id: I3e4fceeb6f7821525a19b556fe852db6c707bae4
-rw-r--r--gnu/local.mk4
-rw-r--r--gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch89
-rw-r--r--gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch91
-rw-r--r--gnu/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch24
-rw-r--r--gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch49
-rw-r--r--gnu/packages/rust-crates.scm821
-rw-r--r--gnu/packages/rust-sources.scm105
7 files changed, 1178 insertions, 5 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index b9acddf9c62..b37d5616d08 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2319,6 +2319,10 @@ dist_patch_DATA = \
2319 %D%/packages/patches/rust-1.70-fix-rustix-build.patch \ 2319 %D%/packages/patches/rust-1.70-fix-rustix-build.patch \
2320 %D%/packages/patches/rust-1.78-unwinding-fix.patch \ 2320 %D%/packages/patches/rust-1.78-unwinding-fix.patch \
2321 %D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \ 2321 %D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \
2322 %D%/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch \
2323 %D%/packages/patches/rust-codex-0.98.0-core-file-lock.patch \
2324 %D%/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch \
2325 %D%/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch \
2322 %D%/packages/patches/rust-ring-0.17-ring-core.patch \ 2326 %D%/packages/patches/rust-ring-0.17-ring-core.patch \
2323 %D%/packages/patches/rw-igraph-0.10.patch \ 2327 %D%/packages/patches/rw-igraph-0.10.patch \
2324 %D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \ 2328 %D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
diff --git a/gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch b/gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch
new file mode 100644
index 00000000000..62298d95725
--- /dev/null
+++ b/gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch
@@ -0,0 +1,89 @@
1Author: Danny Milosavljevic <dannym@friendly-machines.com>
2Date: 2026-02-07
3License: ASL2.0
4Subject: Use libc::flock instead of unstable std File::try_lock().
5
6The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>
7and is not yet stable in old Rust versions like Rust 1.88.
8
9diff -ruN a/codex-rs/arg0/Cargo.toml b/codex-rs/arg0/Cargo.toml
10--- a/codex-rs/arg0/Cargo.toml
11+++ b/codex-rs/arg0/Cargo.toml
12@@ -17,5 +17,6 @@
13 codex-core = { workspace = true }
14 codex-linux-sandbox = { workspace = true }
15 dotenvy = { workspace = true }
16+libc = { workspace = true }
17 tempfile = { workspace = true }
18 tokio = { workspace = true, features = ["rt-multi-thread"] }
19diff -ruN a/codex-rs/arg0/src/lib.rs b/codex-rs/arg0/src/lib.rs
20--- a/codex-rs/arg0/src/lib.rs
21+++ b/codex-rs/arg0/src/lib.rs
22@@ -5,6 +5,8 @@
23
24 use codex_core::CODEX_APPLY_PATCH_ARG1;
25 #[cfg(unix)]
26+use std::os::unix::io::AsRawFd;
27+#[cfg(unix)]
28 use std::os::unix::fs::symlink;
29 use tempfile::TempDir;
30
31@@ -13,6 +15,18 @@
32 const MISSPELLED_APPLY_PATCH_ARG0: &str = "applypatch";
33 const LOCK_FILENAME: &str = ".lock";
34
35+// FIXME: Remove this helper when Rust provides stable file locking API.
36+// The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
37+#[cfg(unix)]
38+fn try_lock_exclusive(file: &File) -> std::io::Result<()> {
39+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX | libc::LOCK_NB) };
40+ if ret == 0 {
41+ Ok(())
42+ } else {
43+ Err(std::io::Error::last_os_error())
44+ }
45+}
46+
47 /// Keeps the per-session PATH entry alive and locked for the process lifetime.
48 pub struct Arg0PathEntryGuard {
49 _temp_dir: TempDir,
50@@ -216,7 +230,7 @@
51 .create(true)
52 .truncate(false)
53 .open(&lock_path)?;
54- lock_file.try_lock()?;
55+ try_lock_exclusive(&lock_file)?;
56
57 for filename in &[
58 APPLY_PATCH_ARG0,
59@@ -307,10 +321,10 @@
60 Err(err) => return Err(err),
61 };
62
63- match lock_file.try_lock() {
64+ match try_lock_exclusive(&lock_file) {
65 Ok(()) => Ok(Some(lock_file)),
66- Err(std::fs::TryLockError::WouldBlock) => Ok(None),
67- Err(err) => Err(err.into()),
68+ Err(ref e) if e.raw_os_error() == Some(libc::EWOULDBLOCK) => Ok(None),
69+ Err(err) => Err(err),
70 }
71 }
72
73@@ -318,6 +332,7 @@
74 mod tests {
75 use super::LOCK_FILENAME;
76 use super::janitor_cleanup;
77+ use super::try_lock_exclusive;
78 use std::fs;
79 use std::fs::File;
80 use std::path::Path;
81@@ -350,7 +365,7 @@
82 let dir = root.path().join("locked");
83 fs::create_dir(&dir)?;
84 let lock_file = create_lock(&dir)?;
85- lock_file.try_lock()?;
86+ try_lock_exclusive(&lock_file)?;
87
88 janitor_cleanup(root.path())?;
89
diff --git a/gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch b/gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch
new file mode 100644
index 00000000000..ee53f7e2772
--- /dev/null
+++ b/gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch
@@ -0,0 +1,91 @@
1Author: Danny Milosavljevic <dannym@friendly-machines.com>
2Date: 2026-01-25
3License: ASL2.0
4Subject: Use libc::flock instead of unstable std File::try_lock()/try_lock_shared().
5
6The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
7and is not yet stable in old Rust versions like Rust 1.85.
8
9The file_lock feature was stabilized after Rust 1.88, but we only have 1.88.
10
11diff -u a/codex-rs/core/src/message_history.rs b/codex-rs/core/src/message_history.rs
12--- a/codex-rs/core/src/message_history.rs
13+++ b/codex-rs/core/src/message_history.rs
14@@ -41,6 +41,8 @@
15 use std::os::unix::fs::OpenOptionsExt;
16 #[cfg(unix)]
17 use std::os::unix::fs::PermissionsExt;
18+#[cfg(unix)]
19+use std::os::unix::io::AsRawFd;
20
21 /// Filename that stores the message history inside `~/.codex`.
22 const HISTORY_FILENAME: &str = "history.jsonl";
23@@ -51,6 +53,28 @@
24 const MAX_RETRIES: usize = 10;
25 const RETRY_SLEEP: Duration = Duration::from_millis(100);
26
27+// FIXME: Remove these helpers when Rust provides stable file locking API
28+// The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
29+#[cfg(unix)]
30+fn try_lock_exclusive(file: &File) -> std::io::Result<()> {
31+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX | libc::LOCK_NB) };
32+ if ret == 0 {
33+ Ok(())
34+ } else {
35+ Err(std::io::Error::last_os_error())
36+ }
37+}
38+
39+#[cfg(unix)]
40+fn try_lock_shared(file: &File) -> std::io::Result<()> {
41+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_SH | libc::LOCK_NB) };
42+ if ret == 0 {
43+ Ok(())
44+ } else {
45+ Err(std::io::Error::last_os_error())
46+ }
47+}
48+
49 #[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
50 pub struct HistoryEntry {
51 pub session_id: String,
52@@ -126,7 +150,7 @@
53 tokio::task::spawn_blocking(move || -> Result<()> {
54 // Retry a few times to avoid indefinite blocking when contended.
55 for _ in 0..MAX_RETRIES {
56- match history_file.try_lock() {
57+ match try_lock_exclusive(&history_file) {
58 Ok(()) => {
59 // While holding the exclusive lock, write the full line.
60 // We do not open the file with `append(true)` on Windows, so ensure the
61@@ -137,10 +161,10 @@
62 enforce_history_limit(&mut history_file, history_max_bytes)?;
63 return Ok(());
64 }
65- Err(std::fs::TryLockError::WouldBlock) => {
66+ Err(ref e) if e.kind() == std::io::ErrorKind::WouldBlock => {
67 std::thread::sleep(RETRY_SLEEP);
68 }
69- Err(e) => return Err(e.into()),
70+ Err(e) => return Err(e),
71 }
72 }
73
74@@ -341,7 +365,7 @@
75 // Open & lock file for reading using a shared lock.
76 // Retry a few times to avoid indefinite blocking.
77 for _ in 0..MAX_RETRIES {
78- let lock_result = file.try_lock_shared();
79+ let lock_result = try_lock_shared(&file);
80
81 match lock_result {
82 Ok(()) => {
83@@ -368,7 +392,7 @@
84 // Not found at requested offset.
85 return None;
86 }
87- Err(std::fs::TryLockError::WouldBlock) => {
88+ Err(ref e) if e.kind() == std::io::ErrorKind::WouldBlock => {
89 std::thread::sleep(RETRY_SLEEP);
90 }
91 Err(e) => {
diff --git a/gnu/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch b/gnu/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch
new file mode 100644
index 00000000000..a92f9de4d94
--- /dev/null
+++ b/gnu/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch
@@ -0,0 +1,24 @@
1Author: Danny Milosavljevic <dannym@friendly-machines.com>
2Date: 2026-02-08
3License: ASL2.0
4Subject: Remove codex-core circular dev-dependencies.
5
6codex-core has a dev-dependency on itself with different features enabled,
7and a dev-dependency on codex-arg0 which in turn depends on codex-core.
8Both cause cargo package to fail when resolving from the vendor directory
9because neither is available at the time codex-core is packaged.
10
11diff -u a/codex-rs/core/Cargo.toml b/codex-rs/core/Cargo.toml
12--- a/codex-rs/core/Cargo.toml
13+++ b/codex-rs/core/Cargo.toml
14@@ -140,10 +140,7 @@
15 assert_cmd = { workspace = true }
16 assert_matches = { workspace = true }
17-codex-arg0 = { workspace = true }
18-codex-core = { path = ".", default-features = false, features = [
19- "deterministic_process_ids",
20-] }
21+# codex-arg0 and codex-core self-ref removed for packaging
22 codex-otel = { workspace = true, features = [
23 "disable-default-metrics-exporter",
24 ] }
diff --git a/gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch b/gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch
new file mode 100644
index 00000000000..10b8b37c5c3
--- /dev/null
+++ b/gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch
@@ -0,0 +1,49 @@
1Author: Danny Milosavljevic <dannym@friendly-machines.com>
2Date: 2026-01-25
3License: ASL2.0
4Subject: Use libc::flock instead of unstable std File::lock().
5
6The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
7and is not yet stable in old Rust versions like Rust 1.85.
8
9The file_lock feature was stabilized after Rust 1.88, but we only have 1.88.
10
11diff -u a/codex-rs/execpolicy/Cargo.toml b/codex-rs/execpolicy/Cargo.toml
12--- a/codex-rs/execpolicy/Cargo.toml
13+++ b/codex-rs/execpolicy/Cargo.toml
14@@ -19,6 +19,7 @@
15 [dependencies]
16 anyhow = { workspace = true }
17 clap = { workspace = true, features = ["derive"] }
18+libc = { workspace = true }
19 multimap = { workspace = true }
20 serde = { workspace = true, features = ["derive"] }
21 serde_json = { workspace = true }
22diff -u a/codex-rs/execpolicy/src/amend.rs b/codex-rs/execpolicy/src/amend.rs
23--- a/codex-rs/execpolicy/src/amend.rs
24+++ b/codex-rs/execpolicy/src/amend.rs
25@@ -1,4 +1,5 @@
26 use std::fs::OpenOptions;
27+use std::os::unix::io::AsRawFd;
28 use std::io::Read;
29 use std::io::Seek;
30 use std::io::SeekFrom;
31@@ -100,10 +101,14 @@
32 path: policy_path.to_path_buf(),
33 source,
34 })?;
35- file.lock().map_err(|source| AmendError::LockPolicyFile {
36- path: policy_path.to_path_buf(),
37- source,
38- })?;
39+ // FIXME: Use file.lock() when Rust 1.91 is available
40+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX) };
41+ if ret != 0 {
42+ return Err(AmendError::LockPolicyFile {
43+ path: policy_path.to_path_buf(),
44+ source: std::io::Error::last_os_error(),
45+ });
46+ }
47
48 let len = file
49 .metadata()
diff --git a/gnu/packages/rust-crates.scm b/gnu/packages/rust-crates.scm
index 9961cb2f387..7a48bf04099 100644
--- a/gnu/packages/rust-crates.scm
+++ b/gnu/packages/rust-crates.scm
@@ -3447,6 +3447,99 @@
3447 (crate-source "codex" "0.2.0" 3447 (crate-source "codex" "0.2.0"
3448 "0g22dvnqq4nkdx1bn91x0nr072qmak34b5l98yivxb2wzkpy32cm")) 3448 "0g22dvnqq4nkdx1bn91x0nr072qmak34b5l98yivxb2wzkpy32cm"))
3449 3449
3450(define rust-codex-api-0.0.0.785c0c43
3451 package:rust-codex-0.0.0.785c0c43)
3452
3453(define rust-codex-app-server-protocol-0.0.0.785c0c43
3454 package:rust-codex-0.0.0.785c0c43)
3455
3456(define rust-codex-apply-patch-0.0.0.785c0c43
3457 package:rust-codex-0.0.0.785c0c43)
3458
3459(define rust-codex-arg0-0.0.0.785c0c43
3460 package:rust-codex-0.0.0.785c0c43)
3461
3462(define rust-codex-async-utils-0.0.0.785c0c43
3463 package:rust-codex-0.0.0.785c0c43)
3464
3465(define rust-codex-client-0.0.0.785c0c43
3466 package:rust-codex-0.0.0.785c0c43)
3467
3468(define rust-codex-common-0.0.0.785c0c43
3469 package:rust-codex-0.0.0.785c0c43)
3470
3471(define rust-codex-core-0.0.0.785c0c43
3472 package:rust-codex-0.0.0.785c0c43)
3473
3474(define rust-codex-execpolicy-0.0.0.785c0c43
3475 package:rust-codex-0.0.0.785c0c43)
3476
3477(define rust-codex-experimental-api-macros-0.0.0.785c0c43
3478 package:rust-codex-0.0.0.785c0c43)
3479
3480(define rust-codex-file-search-0.0.0.785c0c43
3481 package:rust-codex-0.0.0.785c0c43)
3482
3483(define rust-codex-git-0.0.0.785c0c43
3484 package:rust-codex-0.0.0.785c0c43)
3485
3486(define rust-codex-keyring-store-0.0.0.785c0c43
3487 package:rust-codex-0.0.0.785c0c43)
3488
3489(define rust-codex-linux-sandbox-0.0.0.785c0c43
3490 package:rust-codex-0.0.0.785c0c43)
3491
3492(define rust-codex-lmstudio-0.0.0.785c0c43
3493 package:rust-codex-0.0.0.785c0c43)
3494
3495(define rust-codex-login-0.0.0.785c0c43
3496 package:rust-codex-0.0.0.785c0c43)
3497
3498(define rust-codex-mcp-server-0.0.0.785c0c43
3499 package:rust-codex-0.0.0.785c0c43)
3500
3501(define rust-codex-ollama-0.0.0.785c0c43
3502 package:rust-codex-0.0.0.785c0c43)
3503
3504(define rust-codex-otel-0.0.0.785c0c43
3505 package:rust-codex-0.0.0.785c0c43)
3506
3507(define rust-codex-protocol-0.0.0.785c0c43
3508 package:rust-codex-0.0.0.785c0c43)
3509
3510(define rust-codex-rmcp-client-0.0.0.785c0c43
3511 package:rust-codex-0.0.0.785c0c43)
3512
3513(define rust-codex-state-0.0.0.785c0c43
3514 package:rust-codex-0.0.0.785c0c43)
3515
3516(define rust-codex-utils-absolute-path-0.0.0.785c0c43
3517 package:rust-codex-0.0.0.785c0c43)
3518
3519(define rust-codex-utils-cache-0.0.0.785c0c43
3520 package:rust-codex-0.0.0.785c0c43)
3521
3522(define rust-codex-utils-home-dir-0.0.0.785c0c43
3523 package:rust-codex-0.0.0.785c0c43)
3524
3525(define rust-codex-utils-image-0.0.0.785c0c43
3526 package:rust-codex-0.0.0.785c0c43)
3527
3528(define rust-codex-utils-json-to-toml-0.0.0.785c0c43
3529 package:rust-codex-0.0.0.785c0c43)
3530
3531(define rust-codex-utils-pty-0.0.0.785c0c43
3532 package:rust-codex-0.0.0.785c0c43)
3533
3534(define rust-codex-utils-readiness-0.0.0.785c0c43
3535 package:rust-codex-0.0.0.785c0c43)
3536
3537(define rust-codex-utils-string-0.0.0.785c0c43
3538 package:rust-codex-0.0.0.785c0c43)
3539
3540(define rust-codex-windows-sandbox-0.0.0.785c0c43
3541 package:rust-codex-0.0.0.785c0c43)
3542
3450(define rust-codspeed-2.10.0 3543(define rust-codspeed-2.10.0
3451 (crate-source "codspeed" "2.10.0" 3544 (crate-source "codspeed" "2.10.0"
3452 "1x9anwlfzlfby794d5fcvp214bj8bp29br8pkksxwb7834djja6j")) 3545 "1x9anwlfzlfby794d5fcvp214bj8bp29br8pkksxwb7834djja6j"))
@@ -18384,11 +18477,6 @@
18384 (crate-source "seq_io" "0.3.4" 18477 (crate-source "seq_io" "0.3.4"
18385 "1pkasxcf25p1cf2w99a4flhjjaicg4rs14w5g8fkrs0fafg5a0qk")) 18478 "1pkasxcf25p1cf2w99a4flhjjaicg4rs14w5g8fkrs0fafg5a0qk"))
18386 18479
18387(define rust-sequoia-autocrypt-0.25.1
18388 (crate-source "sequoia-autocrypt" "0.25.1"
18389 "0ns121ggmx690m8czhc7zbb7rwz0jjv3l5gw4igs6mn1hznc0kz2"
18390 #:snippet '(delete-file-recursively "tests")))
18391
18392(define rust-sequoia-autocrypt-0.26.0 18480(define rust-sequoia-autocrypt-0.26.0
18393 (crate-source "sequoia-autocrypt" "0.26.0" 18481 (crate-source "sequoia-autocrypt" "0.26.0"
18394 "12wjwv5bsbwjqf25zdkfilnlmgw3jj8y3j1nbm83x6jqr3qmzmhi" 18482 "12wjwv5bsbwjqf25zdkfilnlmgw3jj8y3j1nbm83x6jqr3qmzmhi"
@@ -31313,6 +31401,729 @@
31313 rust-zerovec-0.11.5 31401 rust-zerovec-0.11.5
31314 rust-zerovec-derive-0.11.2 31402 rust-zerovec-derive-0.11.2
31315 rust-zmij-1.0.12)) 31403 rust-zmij-1.0.12))
31404 (rust-codex-0.0.0.785c0c43 =>
31405 (list rust-inflector-0.11.4
31406 rust-adler2-2.0.1
31407 rust-aes-0.8.4
31408 rust-ahash-0.8.12
31409 rust-aho-corasick-1.1.4
31410 rust-allocative-0.3.4
31411 rust-allocative-derive-0.3.3
31412 rust-allocator-api2-0.2.21
31413 rust-android-system-properties-0.1.5
31414 rust-annotate-snippets-0.9.2
31415 rust-anstream-0.6.21
31416 rust-anstyle-1.0.13
31417 rust-anstyle-parse-0.2.7
31418 rust-anstyle-query-1.1.5
31419 rust-anstyle-wincon-3.0.11
31420 rust-anyhow-1.0.100
31421 rust-arbitrary-1.4.2
31422 rust-arc-swap-1.8.0
31423 rust-ascii-1.1.0
31424 rust-ascii-canvas-3.0.0
31425 rust-assert-json-diff-2.0.2
31426 rust-assert-cmd-2.1.2
31427 rust-assert-matches-1.5.0
31428 rust-async-broadcast-0.7.2
31429 rust-async-channel-2.5.0
31430 rust-async-executor-1.13.3
31431 rust-async-fs-2.2.0
31432 rust-async-io-2.6.0
31433 rust-async-lock-3.4.2
31434 rust-async-process-2.5.0
31435 rust-async-recursion-1.1.1
31436 rust-async-signal-0.2.13
31437 rust-async-stream-0.3.6
31438 rust-async-stream-impl-0.3.6
31439 rust-async-task-4.7.1
31440 rust-async-trait-0.1.89
31441 rust-atoi-2.0.0
31442 rust-atomic-waker-1.1.2
31443 rust-autocfg-1.5.0
31444 rust-axum-0.8.8
31445 rust-axum-core-0.5.6
31446 rust-base64-0.22.1
31447 rust-base64ct-1.8.3
31448 rust-beef-0.5.2
31449 rust-bit-set-0.5.3
31450 rust-bit-vec-0.6.3
31451 rust-bitflags-1.3.2
31452 rust-bitflags-2.10.0
31453 rust-block-buffer-0.10.4
31454 rust-block-padding-0.3.3
31455 rust-block2-0.6.2
31456 rust-blocking-1.6.2
31457 rust-bstr-1.12.1
31458 rust-bumpalo-3.19.1
31459 rust-bytemuck-1.25.0
31460 rust-byteorder-1.5.0
31461 rust-byteorder-lite-0.1.0
31462 rust-bytes-1.11.1
31463 rust-bzip2-0.5.2
31464 rust-bzip2-sys-0.1.13+1.0.8
31465 rust-cbc-0.1.2
31466 rust-cc-1.2.55
31467 rust-cesu8-1.1.0
31468 rust-cfg-if-1.0.4
31469 rust-cfg-aliases-0.1.1
31470 rust-cfg-aliases-0.2.1
31471 rust-chardetng-0.1.17
31472 rust-chrono-0.4.43
31473 rust-chunked-transfer-1.5.0
31474 rust-cipher-0.4.4
31475 rust-clap-4.5.56
31476 rust-clap-builder-4.5.56
31477 rust-clap-derive-4.5.55
31478 rust-clap-lex-0.7.7
31479 rust-clipboard-win-5.4.1
31480 rust-cmp-any-0.8.1
31481 rust-colorchoice-1.0.4
31482 rust-combine-4.6.7
31483 rust-concurrent-queue-2.5.0
31484 rust-const-hex-1.17.0
31485 rust-const-oid-0.9.6
31486 rust-constant-time-eq-0.3.1
31487 rust-convert-case-0.6.0
31488 rust-core-foundation-0.10.1
31489 rust-core-foundation-0.9.4
31490 rust-core-foundation-sys-0.8.7
31491 rust-cpufeatures-0.2.17
31492 rust-crc-3.4.0
31493 rust-crc-catalog-2.4.0
31494 rust-crc32fast-1.5.0
31495 rust-critical-section-1.2.0
31496 rust-crossbeam-channel-0.5.15
31497 rust-crossbeam-deque-0.8.6
31498 rust-crossbeam-epoch-0.9.18
31499 rust-crossbeam-queue-0.3.12
31500 rust-crossbeam-utils-0.8.21
31501 rust-crunchy-0.2.4
31502 rust-crypto-common-0.1.7
31503 rust-ctor-0.1.26
31504 rust-ctor-0.6.3
31505 rust-ctor-proc-macro-0.0.7
31506 rust-dtor-0.1.1
31507 rust-dtor-proc-macro-0.0.6
31508 rust-darling-0.21.3
31509 rust-darling-0.23.0
31510 rust-darling-core-0.21.3
31511 rust-darling-core-0.23.0
31512 rust-darling-macro-0.21.3
31513 rust-darling-macro-0.23.0
31514 rust-data-encoding-2.10.0
31515 rust-dbus-0.9.10
31516 rust-dbus-secret-service-4.1.0
31517 rust-deadpool-0.12.3
31518 rust-deadpool-runtime-0.1.4
31519 rust-deflate64-0.1.10
31520 rust-debugserver-types-0.5.0
31521 rust-der-0.7.10
31522 rust-deranged-0.5.5
31523 rust-derivative-2.2.0
31524 rust-derive-arbitrary-1.4.2
31525 rust-derive-more-1.0.0
31526 rust-derive-more-impl-1.0.0
31527 rust-diff-0.1.13
31528 rust-difflib-0.4.0
31529 rust-digest-0.10.7
31530 rust-dirs-6.0.0
31531 rust-dirs-next-2.0.0
31532 rust-dirs-sys-0.5.0
31533 rust-dirs-sys-next-0.1.2
31534 rust-dispatch2-0.3.0
31535 rust-display-container-0.9.0
31536 rust-displaydoc-0.2.5
31537 rust-dotenvy-0.15.7
31538 rust-downcast-rs-1.2.1
31539 rust-dunce-1.0.5
31540 rust-dupe-0.9.1
31541 rust-dupe-derive-0.9.1
31542 rust-dyn-clone-1.0.20
31543 rust-either-1.15.0
31544 rust-ena-0.14.3
31545 rust-encoding-rs-0.8.35
31546 rust-endi-1.1.1
31547 rust-endian-type-0.1.2
31548 rust-enumflags2-0.7.12
31549 rust-enumflags2-derive-0.7.12
31550 rust-env-flags-0.1.1
31551 rust-env-filter-0.1.4
31552 rust-env-home-0.1.0
31553 rust-env-logger-0.11.8
31554 rust-etcetera-0.8.0
31555 rust-equivalent-1.0.2
31556 rust-erased-serde-0.3.31
31557 rust-errno-0.3.14
31558 rust-error-code-3.3.2
31559 rust-event-listener-5.4.1
31560 rust-event-listener-strategy-0.5.4
31561 rust-eventsource-stream-0.2.3
31562 rust-fastrand-2.3.0
31563 rust-fax-0.2.6
31564 rust-fax-derive-0.2.0
31565 rust-fd-lock-4.0.4
31566 rust-fdeflate-0.3.7
31567 rust-filedescriptor-0.8.3
31568 rust-find-msvc-tools-0.1.9
31569 rust-fixed-decimal-0.7.1
31570 rust-fixedbitset-0.4.2
31571 rust-flate2-1.1.8
31572 rust-float-cmp-0.10.0
31573 rust-flume-0.11.1
31574 rust-fnv-1.0.7
31575 rust-foldhash-0.1.5
31576 rust-foldhash-0.2.0
31577 rust-foreign-types-0.3.2
31578 rust-foreign-types-shared-0.1.1
31579 rust-form-urlencoded-1.2.2
31580 rust-fsevent-sys-4.1.0
31581 rust-futures-0.3.31
31582 rust-futures-channel-0.3.31
31583 rust-futures-core-0.3.31
31584 rust-futures-executor-0.3.31
31585 rust-futures-io-0.3.31
31586 rust-futures-intrusive-0.5.0
31587 rust-futures-lite-2.6.1
31588 rust-futures-macro-0.3.31
31589 rust-futures-sink-0.3.31
31590 rust-futures-task-0.3.31
31591 rust-futures-util-0.3.31
31592 rust-fxhash-0.2.1
31593 rust-generic-array-0.14.7
31594 rust-getrandom-0.2.17
31595 rust-getrandom-0.3.4
31596 rust-globset-0.4.18
31597 rust-h2-0.4.13
31598 rust-half-2.7.1
31599 rust-hashbrown-0.12.3
31600 rust-hashbrown-0.14.5
31601 rust-hashbrown-0.15.5
31602 rust-hashbrown-0.16.1
31603 rust-hashlink-0.10.0
31604 rust-heck-0.5.0
31605 rust-hermit-abi-0.5.2
31606 rust-hex-0.4.3
31607 rust-hkdf-0.12.4
31608 rust-hmac-0.12.1
31609 rust-home-0.5.12
31610 rust-http-1.4.0
31611 rust-http-body-1.0.1
31612 rust-http-body-util-0.1.3
31613 rust-httparse-1.10.1
31614 rust-httpdate-1.0.3
31615 rust-hyper-1.8.1
31616 rust-hyper-rustls-0.27.7
31617 rust-hyper-timeout-0.5.2
31618 rust-hyper-tls-0.6.0
31619 rust-hyper-util-0.1.19
31620 rust-iana-time-zone-0.1.65
31621 rust-iana-time-zone-haiku-0.1.2
31622 rust-icu-collections-2.1.1
31623 rust-icu-decimal-2.1.1
31624 rust-icu-decimal-data-2.1.1
31625 rust-icu-locale-2.1.1
31626 rust-icu-locale-core-2.1.1
31627 rust-icu-locale-data-2.1.2
31628 rust-icu-normalizer-2.1.1
31629 rust-icu-normalizer-data-2.1.1
31630 rust-icu-properties-2.1.2
31631 rust-icu-properties-data-2.1.2
31632 rust-icu-provider-2.1.1
31633 rust-ident-case-1.0.1
31634 rust-idna-1.1.0
31635 rust-idna-adapter-1.2.1
31636 rust-ignore-0.4.25
31637 rust-image-0.25.9
31638 rust-include-dir-0.7.4
31639 rust-include-dir-macros-0.7.4
31640 rust-indenter-0.3.4
31641 rust-indexmap-1.9.3
31642 rust-indexmap-2.13.0
31643 rust-indoc-2.0.7
31644 rust-inotify-0.11.0
31645 rust-inotify-sys-0.1.5
31646 rust-inout-0.1.4
31647 rust-inventory-0.3.21
31648 rust-ipnet-2.11.0
31649 rust-iri-string-0.7.10
31650 rust-is-terminal-0.4.17
31651 rust-is-ci-1.2.0
31652 rust-is-terminal-polyfill-1.70.2
31653 rust-itertools-0.10.5
31654 rust-itertools-0.13.0
31655 rust-itertools-0.14.0
31656 rust-itoa-1.0.17
31657 rust-jiff-0.2.18
31658 rust-jiff-static-0.2.18
31659 rust-jni-0.21.1
31660 rust-jni-sys-0.3.0
31661 rust-jobserver-0.1.34
31662 rust-js-sys-0.3.85
31663 rust-keyring-3.6.3
31664 rust-kqueue-1.1.1
31665 rust-kqueue-sys-1.0.4
31666 rust-lalrpop-0.19.12
31667 rust-lalrpop-util-0.19.12
31668 rust-landlock-0.4.4
31669 rust-lazy-static-1.5.0
31670 rust-libc-0.2.180
31671 rust-libdbus-sys-0.2.7
31672 rust-libredox-0.1.12
31673 rust-libm-0.2.16
31674 rust-libsqlite3-sys-0.30.1
31675 rust-linux-keyutils-0.2.4
31676 rust-linux-raw-sys-0.11.0
31677 rust-litemap-0.8.1
31678 rust-lock-api-0.4.14
31679 rust-log-0.4.29
31680 rust-logos-0.12.1
31681 rust-logos-derive-0.12.1
31682 rust-lru-0.16.3
31683 rust-lru-slab-0.1.2
31684 rust-lsp-types-0.94.1
31685 rust-lzma-rs-0.3.0
31686 rust-lzma-sys-0.1.20
31687 rust-maplit-1.0.2
31688 rust-matchers-0.2.0
31689 rust-matchit-0.8.4
31690 rust-md-5-0.10.6
31691 rust-memchr-2.7.6
31692 rust-memoffset-0.6.5
31693 rust-memoffset-0.9.1
31694 rust-mime-0.3.17
31695 rust-mime-guess-2.0.5
31696 rust-minimal-lexical-0.2.1
31697 rust-miniz-oxide-0.8.9
31698 rust-mio-1.1.1
31699 rust-moxcms-0.7.11
31700 rust-multimap-0.10.1
31701 rust-native-tls-0.2.14
31702 rust-ndk-context-0.1.1
31703 rust-new-debug-unreachable-1.0.6
31704 rust-nibble-vec-0.1.0
31705 rust-nix-0.28.0
31706 rust-nix-0.29.0
31707 rust-nix-0.30.1
31708 rust-nom-7.1.3
31709 rust-normalize-line-endings-0.3.0
31710 rust-notify-8.2.0
31711 rust-notify-types-2.1.0
31712 rust-nu-ansi-term-0.50.3
31713 rust-nucleo-0.5.0.4253de9f
31714 rust-nucleo-matcher-0.3.1
31715 rust-num-0.4.3
31716 rust-num-bigint-0.4.6
31717 rust-num-bigint-dig-0.8.6
31718 rust-num-complex-0.4.6
31719 rust-num-conv-0.2.0
31720 rust-num-integer-0.1.46
31721 rust-num-iter-0.1.45
31722 rust-num-rational-0.4.2
31723 rust-num-traits-0.2.19
31724 rust-num-cpus-1.17.0
31725 rust-num-threads-0.1.7
31726 rust-oauth2-5.0.0
31727 rust-objc2-0.6.3
31728 rust-objc2-cloud-kit-0.3.2
31729 rust-objc2-core-data-0.3.2
31730 rust-objc2-core-foundation-0.3.2
31731 rust-objc2-core-graphics-0.3.2
31732 rust-objc2-core-image-0.3.2
31733 rust-objc2-core-location-0.3.2
31734 rust-objc2-core-text-0.3.2
31735 rust-objc2-encode-4.1.0
31736 rust-objc2-foundation-0.3.2
31737 rust-objc2-io-surface-0.3.2
31738 rust-objc2-quartz-core-0.3.2
31739 rust-objc2-ui-kit-0.3.2
31740 rust-objc2-user-notifications-0.3.2
31741 rust-once-cell-1.21.3
31742 rust-once-cell-polyfill-1.70.2
31743 rust-openssl-0.10.75
31744 rust-openssl-macros-0.1.1
31745 rust-openssl-probe-0.1.6
31746 rust-openssl-probe-0.2.1
31747 rust-openssl-src-300.5.5+3.5.5
31748 rust-openssl-sys-0.9.111
31749 rust-opentelemetry-0.31.0
31750 rust-opentelemetry-appender-tracing-0.31.1
31751 rust-opentelemetry-http-0.31.0
31752 rust-opentelemetry-otlp-0.31.0
31753 rust-opentelemetry-proto-0.31.0
31754 rust-opentelemetry-semantic-conventions-0.31.0
31755 rust-opentelemetry-sdk-0.31.0
31756 rust-option-ext-0.2.0
31757 rust-ordered-stream-0.2.0
31758 rust-os-info-3.14.0
31759 rust-owo-colors-4.2.3
31760 rust-parking-2.2.1
31761 rust-parking-lot-0.12.5
31762 rust-parking-lot-core-0.9.12
31763 rust-paste-1.0.15
31764 rust-pastey-0.2.1
31765 rust-path-absolutize-3.1.1
31766 rust-path-dedot-3.1.1
31767 rust-pbkdf2-0.12.2
31768 rust-pem-rfc7468-0.7.0
31769 rust-percent-encoding-2.3.2
31770 rust-petgraph-0.6.5
31771 rust-phf-shared-0.11.3
31772 rust-pin-project-1.1.10
31773 rust-pin-project-internal-1.1.10
31774 rust-pin-project-lite-0.2.16
31775 rust-pin-utils-0.1.0
31776 rust-piper-0.2.4
31777 rust-pkg-config-0.3.32
31778 rust-pkcs1-0.7.5
31779 rust-pkcs8-0.10.2
31780 rust-png-0.18.0
31781 rust-polling-3.11.0
31782 rust-portable-atomic-1.13.1
31783 rust-portable-atomic-util-0.2.5
31784 rust-portable-pty-0.9.0
31785 rust-potential-utf-0.1.4
31786 rust-powerfmt-0.2.0
31787 rust-ppv-lite86-0.2.21
31788 rust-precomputed-hash-0.1.1
31789 rust-predicates-3.1.3
31790 rust-predicates-core-1.0.9
31791 rust-predicates-tree-1.0.12
31792 rust-pretty-assertions-1.4.1
31793 rust-proc-macro-crate-3.4.0
31794 rust-proc-macro2-1.0.106
31795 rust-process-wrap-9.0.1
31796 rust-proptest-1.9.0
31797 rust-prost-0.14.3
31798 rust-prost-derive-0.14.3
31799 rust-pxfm-0.1.27
31800 rust-quick-error-2.0.1
31801 rust-quinn-0.11.9
31802 rust-quinn-proto-0.11.13
31803 rust-quinn-udp-0.5.14
31804 rust-quote-1.0.44
31805 rust-r-efi-5.3.0
31806 rust-radix-trie-0.2.1
31807 rust-rand-0.8.5
31808 rust-rand-0.9.2
31809 rust-rand-chacha-0.3.1
31810 rust-rand-chacha-0.9.0
31811 rust-rand-core-0.6.4
31812 rust-rand-core-0.9.5
31813 rust-rand-xorshift-0.4.0
31814 rust-rayon-1.11.0
31815 rust-rayon-core-1.13.0
31816 rust-redox-syscall-0.5.18
31817 rust-redox-syscall-0.7.0
31818 rust-redox-users-0.4.6
31819 rust-redox-users-0.5.2
31820 rust-ref-cast-1.0.25
31821 rust-ref-cast-impl-1.0.25
31822 rust-regex-1.12.2
31823 rust-regex-automata-0.4.13
31824 rust-regex-lite-0.1.8
31825 rust-regex-syntax-0.6.29
31826 rust-regex-syntax-0.8.8
31827 rust-reqwest-0.12.28
31828 rust-ring-0.17.14
31829 rust-rmcp-0.12.0
31830 rust-rmcp-macros-0.12.0
31831 rust-rsa-0.9.10
31832 rust-runfiles-0.1.0.b56cbaa8
31833 rust-rustc-hash-2.1.1
31834 rust-rustix-1.1.3
31835 rust-rustls-0.23.36
31836 rust-rustls-native-certs-0.8.3
31837 rust-rustls-pki-types-1.14.0
31838 rust-rustls-webpki-0.103.9
31839 rust-rustversion-1.0.22
31840 rust-rustyline-14.0.0
31841 rust-ryu-1.0.22
31842 rust-same-file-1.0.6
31843 rust-scc-2.4.0
31844 rust-schannel-0.1.28
31845 rust-schemafy-0.5.2
31846 rust-schemafy-core-0.5.2
31847 rust-schemafy-lib-0.5.2
31848 rust-schemars-0.8.22
31849 rust-schemars-0.9.0
31850 rust-schemars-1.2.1
31851 rust-schemars-derive-0.8.22
31852 rust-schemars-derive-1.2.1
31853 rust-scopeguard-1.2.0
31854 rust-sdd-3.0.10
31855 rust-seccompiler-0.5.0
31856 rust-secret-service-4.0.0
31857 rust-security-framework-2.11.1
31858 rust-security-framework-3.5.1
31859 rust-security-framework-sys-2.15.0
31860 rust-semver-1.0.27
31861 rust-serde-1.0.228
31862 rust-serde-core-1.0.228
31863 rust-serde-derive-1.0.228
31864 rust-serde-derive-internals-0.29.1
31865 rust-serde-json-1.0.149
31866 rust-serde-path-to-error-0.1.20
31867 rust-serde-repr-0.1.20
31868 rust-serde-spanned-1.0.4
31869 rust-serde-urlencoded-0.7.1
31870 rust-serde-with-3.16.1
31871 rust-serde-with-macros-3.16.1
31872 rust-serde-yaml-0.9.34+deprecated
31873 rust-serial-test-3.3.1
31874 rust-serial-test-derive-3.3.1
31875 rust-serial2-0.2.33
31876 rust-sha1-0.10.6
31877 rust-sha1-smol-1.0.1
31878 rust-sha2-0.10.9
31879 rust-sharded-slab-0.1.7
31880 rust-shared-library-0.1.9
31881 rust-shell-words-1.1.1
31882 rust-shlex-1.3.0
31883 rust-signal-hook-registry-1.4.8
31884 rust-signature-2.2.0
31885 rust-simd-adler32-0.3.8
31886 rust-similar-2.7.0
31887 rust-siphasher-1.0.2
31888 rust-slab-0.4.12
31889 rust-smallvec-1.15.1
31890 rust-socket2-0.6.2
31891 rust-spin-0.9.8
31892 rust-spki-0.7.3
31893 rust-sqlx-0.8.6
31894 rust-sqlx-core-0.8.6
31895 rust-sqlx-macros-0.8.6
31896 rust-sqlx-macros-core-0.8.6
31897 rust-sqlx-mysql-0.8.6
31898 rust-sqlx-postgres-0.8.6
31899 rust-sqlx-sqlite-0.8.6
31900 rust-sse-stream-0.2.1
31901 rust-stable-deref-trait-1.2.1
31902 rust-starlark-0.13.0
31903 rust-starlark-derive-0.13.0
31904 rust-starlark-map-0.13.0
31905 rust-starlark-syntax-0.13.0
31906 rust-static-assertions-1.1.0
31907 rust-streaming-iterator-0.1.9
31908 rust-string-cache-0.8.9
31909 rust-stringprep-0.1.5
31910 rust-strsim-0.10.0
31911 rust-strsim-0.11.1
31912 rust-strum-0.27.2
31913 rust-strum-macros-0.27.2
31914 rust-subtle-2.6.1
31915 rust-supports-color-2.1.0
31916 rust-supports-color-3.0.2
31917 rust-syn-1.0.109
31918 rust-syn-2.0.114
31919 rust-sync-wrapper-1.0.2
31920 rust-synstructure-0.13.2
31921 rust-sys-locale-0.3.2
31922 rust-system-configuration-0.6.1
31923 rust-system-configuration-sys-0.6.0
31924 rust-tempfile-3.24.0
31925 rust-term-0.7.0
31926 rust-termcolor-1.4.1
31927 rust-terminal-size-0.4.3
31928 rust-termtree-0.5.1
31929 rust-test-case-3.3.1
31930 rust-test-case-core-3.3.1
31931 rust-test-case-macros-3.3.1
31932 rust-test-log-0.2.19
31933 rust-test-log-macros-0.2.19
31934 rust-textwrap-0.11.0
31935 rust-thiserror-1.0.69
31936 rust-thiserror-2.0.18
31937 rust-thiserror-impl-1.0.69
31938 rust-thiserror-impl-2.0.18
31939 rust-thread-local-1.1.9
31940 rust-tiff-0.10.3
31941 rust-time-0.3.46
31942 rust-time-core-0.1.8
31943 rust-time-macros-0.2.26
31944 rust-tiny-keccak-2.0.2
31945 rust-tiny-http-0.12.0
31946 rust-tinystr-0.8.2
31947 rust-tinyvec-1.10.0
31948 rust-tinyvec-macros-0.1.1
31949 rust-tokio-1.49.0
31950 rust-tokio-macros-2.6.0
31951 rust-tokio-native-tls-0.3.1
31952 rust-tokio-rustls-0.26.4
31953 rust-tokio-stream-0.1.18
31954 rust-tokio-test-0.4.5
31955 rust-tokio-tungstenite-0.28.0.2ae536b0
31956 rust-tokio-util-0.7.18
31957 rust-toml-0.9.11+spec-1.1.0
31958 rust-toml-0.5.11
31959 rust-toml-datetime-0.7.5+spec-1.1.0
31960 rust-toml-edit-0.23.10+spec-1.0.0
31961 rust-toml-edit-0.24.0+spec-1.1.0
31962 rust-toml-parser-1.0.6+spec-1.1.0
31963 rust-toml-writer-1.0.6+spec-1.1.0
31964 rust-tonic-0.14.3
31965 rust-tonic-prost-0.14.3
31966 rust-tower-0.5.3
31967 rust-tower-http-0.6.8
31968 rust-tower-layer-0.3.3
31969 rust-tower-service-0.3.3
31970 rust-tracing-0.1.44
31971 rust-tracing-core-0.1.36
31972 rust-tracing-attributes-0.1.31
31973 rust-tracing-log-0.2.0
31974 rust-tracing-opentelemetry-0.32.1
31975 rust-tracing-subscriber-0.3.22
31976 rust-tracing-test-0.2.5
31977 rust-tracing-test-macro-0.2.5
31978 rust-tree-sitter-0.25.10
31979 rust-tree-sitter-bash-0.25.1
31980 rust-tree-sitter-language-0.1.7
31981 rust-try-lock-0.2.5
31982 rust-ts-rs-11.1.0
31983 rust-ts-rs-macros-11.1.0
31984 rust-tungstenite-0.28.0.f514de86
31985 rust-typenum-1.19.0
31986 rust-uds-windows-1.1.0
31987 rust-unarray-0.1.4
31988 rust-unicase-2.9.0
31989 rust-unicode-bidi-0.3.18
31990 rust-unicode-ident-1.0.22
31991 rust-unicode-normalization-0.1.25
31992 rust-unicode-properties-0.1.4
31993 rust-unicode-segmentation-1.12.0
31994 rust-unicode-width-0.1.14
31995 rust-unicode-xid-0.2.6
31996 rust-unsafe-libyaml-0.2.11
31997 rust-untrusted-0.9.0
31998 rust-url-2.5.8
31999 rust-urlencoding-2.1.3
32000 rust-utf-8-0.7.6
32001 rust-utf8-iter-1.0.4
32002 rust-utf8parse-0.2.2
32003 rust-uuid-1.20.0
32004 rust-valuable-0.1.1
32005 rust-vcpkg-0.2.15
32006 rust-version-check-0.9.5
32007 rust-wait-timeout-0.2.1
32008 rust-walkdir-2.5.0
32009 rust-want-0.3.1
32010 rust-wasi-0.11.1+wasi-snapshot-preview1
32011 rust-wasip2-1.0.2+wasi-0.2.9
32012 rust-wasite-0.1.0
32013 rust-wasm-bindgen-0.2.108
32014 rust-wasm-bindgen-futures-0.4.58
32015 rust-wasm-bindgen-macro-0.2.108
32016 rust-wasm-bindgen-macro-support-0.2.108
32017 rust-wasm-bindgen-shared-0.2.108
32018 rust-wasm-streams-0.4.2
32019 rust-web-sys-0.3.85
32020 rust-web-time-1.1.0
32021 rust-webbrowser-1.0.6
32022 rust-webpki-roots-0.26.11
32023 rust-webpki-roots-1.0.5
32024 rust-weezl-0.1.12
32025 rust-which-8.0.0
32026 rust-whoami-1.6.1
32027 rust-wildmatch-2.6.1
32028 rust-winapi-0.3.9
32029 rust-winapi-i686-pc-windows-gnu-0.4.0
32030 rust-winapi-util-0.1.11
32031 rust-winapi-x86-64-pc-windows-gnu-0.4.0
32032 rust-windows-0.58.0
32033 rust-windows-0.62.2
32034 rust-windows-collections-0.3.2
32035 rust-windows-core-0.58.0
32036 rust-windows-core-0.62.2
32037 rust-windows-future-0.3.2
32038 rust-windows-implement-0.58.0
32039 rust-windows-implement-0.60.2
32040 rust-windows-interface-0.58.0
32041 rust-windows-interface-0.59.3
32042 rust-windows-link-0.2.1
32043 rust-windows-numerics-0.3.1
32044 rust-windows-registry-0.6.1
32045 rust-windows-result-0.2.0
32046 rust-windows-result-0.4.1
32047 rust-windows-strings-0.1.0
32048 rust-windows-strings-0.5.1
32049 rust-windows-sys-0.45.0
32050 rust-windows-sys-0.48.0
32051 rust-windows-sys-0.52.0
32052 rust-windows-sys-0.59.0
32053 rust-windows-sys-0.60.2
32054 rust-windows-sys-0.61.2
32055 rust-windows-targets-0.42.2
32056 rust-windows-targets-0.48.5
32057 rust-windows-targets-0.52.6
32058 rust-windows-targets-0.53.5
32059 rust-windows-threading-0.2.1
32060 rust-windows-aarch64-gnullvm-0.42.2
32061 rust-windows-aarch64-gnullvm-0.48.5
32062 rust-windows-aarch64-gnullvm-0.52.6
32063 rust-windows-aarch64-gnullvm-0.53.1
32064 rust-windows-aarch64-msvc-0.42.2
32065 rust-windows-aarch64-msvc-0.48.5
32066 rust-windows-aarch64-msvc-0.52.6
32067 rust-windows-aarch64-msvc-0.53.1
32068 rust-windows-i686-gnu-0.42.2
32069 rust-windows-i686-gnu-0.48.5
32070 rust-windows-i686-gnu-0.52.6
32071 rust-windows-i686-gnu-0.53.1
32072 rust-windows-i686-gnullvm-0.52.6
32073 rust-windows-i686-gnullvm-0.53.1
32074 rust-windows-i686-msvc-0.42.2
32075 rust-windows-i686-msvc-0.48.5
32076 rust-windows-i686-msvc-0.52.6
32077 rust-windows-i686-msvc-0.53.1
32078 rust-windows-x86-64-gnu-0.42.2
32079 rust-windows-x86-64-gnu-0.48.5
32080 rust-windows-x86-64-gnu-0.52.6
32081 rust-windows-x86-64-gnu-0.53.1
32082 rust-windows-x86-64-gnullvm-0.42.2
32083 rust-windows-x86-64-gnullvm-0.48.5
32084 rust-windows-x86-64-gnullvm-0.52.6
32085 rust-windows-x86-64-gnullvm-0.53.1
32086 rust-windows-x86-64-msvc-0.42.2
32087 rust-windows-x86-64-msvc-0.48.5
32088 rust-windows-x86-64-msvc-0.52.6
32089 rust-windows-x86-64-msvc-0.53.1
32090 rust-winnow-0.7.14
32091 rust-winreg-0.10.1
32092 rust-winres-0.1.12
32093 rust-winsafe-0.0.19
32094 rust-wiremock-0.6.5
32095 rust-wit-bindgen-0.51.0
32096 rust-writeable-0.6.2
32097 rust-xdg-home-1.3.0
32098 rust-xz2-0.1.7
32099 rust-yansi-1.0.1
32100 rust-yoke-0.8.1
32101 rust-yoke-derive-0.8.1
32102 rust-zbus-4.4.0
32103 rust-zbus-macros-4.4.0
32104 rust-zbus-names-3.0.0
32105 rust-zerocopy-0.8.37
32106 rust-zerocopy-derive-0.8.37
32107 rust-zerofrom-0.1.6
32108 rust-zerofrom-derive-0.1.6
32109 rust-zeroize-1.8.2
32110 rust-zeroize-derive-1.4.3
32111 rust-zerotrie-0.2.3
32112 rust-zerovec-0.11.5
32113 rust-zerovec-derive-0.11.2
32114 rust-zip-2.4.2
32115 rust-zopfli-0.8.3
32116 rust-zstd-0.13.3
32117 rust-zstd-safe-7.2.4
32118 rust-zstd-sys-2.0.16+zstd.1.5.7
32119 rust-zmij-1.0.19
32120 rust-zune-core-0.4.12
32121 rust-zune-core-0.5.1
32122 rust-zune-jpeg-0.4.21
32123 rust-zune-jpeg-0.5.12
32124 rust-zvariant-4.2.0
32125 rust-zvariant-derive-4.2.0
32126 rust-zvariant-utils-2.1.0))
31316 (complgen => 32127 (complgen =>
31317 (list rust-ahash-0.7.8 32128 (list rust-ahash-0.7.8
31318 rust-ahash-0.8.11 32129 rust-ahash-0.8.11
diff --git a/gnu/packages/rust-sources.scm b/gnu/packages/rust-sources.scm
index 3d61b320bae..82bdef53ee2 100644
--- a/gnu/packages/rust-sources.scm
+++ b/gnu/packages/rust-sources.scm
@@ -678,3 +678,108 @@ intelligence.")
678webview, a tiny cross-platform library to render web-based GUIs as desktop 678webview, a tiny cross-platform library to render web-based GUIs as desktop
679applications.") 679applications.")
680 (license license:expat))))) 680 (license license:expat)))))
681(define-public rust-codex-0.0.0.785c0c43
682 (let ((commit "785c0c43df941e6997ff3a9e8a9dd48da2661f20")
683 (revision "0"))
684 (hidden-package
685 (package
686 (name "rust-codex")
687 (version (git-version "0.0.0" revision commit))
688 (source
689 (origin
690 (method git-fetch)
691 (uri (git-reference
692 (url "https://github.com/zed-industries/codex")
693 (commit commit)))
694 (file-name (git-file-name name version))
695 (sha256
696 (base32 "0rwj1ykknng39mhzna3fw3rcl3vngynsjdcj1namgkvw91zd9dl7"))
697 ;; TODO: Remove patches when Rust provides stable file locking API.
698 ;; The file_lock feature is tracked at
699 ;; <https://github.com/rust-lang/rust/issues/130994>.
700 (patches (search-patches "rust-codex-0.98.0-execpolicy-file-lock.patch"
701 "rust-codex-0.98.0-core-file-lock.patch"
702 "rust-codex-0.98.0-arg0-file-lock.patch"
703 "rust-codex-0.98.0-core-remove-self-dep.patch"))))
704 (build-system cargo-build-system)
705 (arguments
706 (list
707 #:skip-build? #t
708 #:cargo-package-crates
709 ;; Order matters: dependencies must come before packages that need them
710 ''("codex-async-utils" ; No internal deps
711 "codex-client" ; No internal deps
712 "codex-execpolicy" ; No internal deps
713 "codex-file-search" ; No internal deps
714 "codex-git" ; No internal deps
715 "codex-keyring-store" ; No internal deps
716 "codex-utils-absolute-path" ; No internal deps
717 "codex-utils-cache" ; No internal deps
718 "codex-utils-cargo-bin" ; No internal deps
719 "codex-utils-home-dir" ; No internal deps
720 "codex-utils-json-to-toml" ; No internal deps
721 "codex-utils-pty" ; No internal deps
722 "codex-utils-readiness" ; No internal deps
723 "codex-utils-string" ; No internal deps
724 "codex-utils-image" ; Depends on codex-utils-cache
725 "codex-apply-patch" ; Depends on codex-utils-cargo-bin
726 "codex-protocol" ; Depends on codex-git, codex-utils-*
727 "codex-windows-sandbox" ; Depends on codex-utils-absolute-path, codex-protocol
728 "codex-api" ; Depends on codex-client, codex-protocol
729 "codex-experimental-api-macros" ; Macro crate (must come before app-server-protocol)
730 "codex-app-server-protocol" ; Depends on codex-protocol, codex-experimental-api-macros
731 "codex-rmcp-client" ; Depends on codex-keyring-store, codex-protocol
732 "codex-otel" ; Depends on codex-app-server-protocol, codex-api
733 "codex-state" ; Depends on codex-protocol, codex-otel
734 "codex-core" ; Depends on many packages above
735 "codex-linux-sandbox" ; Depends on codex-core, codex-utils-absolute-path
736 "codex-arg0" ; Depends on codex-apply-patch, codex-core, codex-linux-sandbox
737 "codex-lmstudio" ; Depends on codex-core
738 "codex-login" ; Depends on codex-core
739 "codex-ollama" ; Depends on codex-core
740 "codex-common" ; Depends on codex-core, codex-lmstudio, codex-ollama
741 "codex-mcp-server") ; Depends on codex-core, codex-common
742 #:phases
743 #~(modify-phases %standard-phases
744 (add-after 'unpack 'chdir-to-workspace
745 (lambda _
746 (chdir "codex-rs")))
747 (add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
748 (lambda _
749 ;; Avoid git fetches in offline builds by pointing patches
750 ;; at the vendored sources provided via cargo-inputs.
751 (substitute* "Cargo.toml"
752 (("crossterm = \\{ git = [^}]+\\}")
753 "crossterm = { version = \"0.28.1\" }")
754 (("ratatui = \\{ git = [^}]+\\}")
755 "ratatui = { version = \"0.29.0\" }")
756 (("tokio-tungstenite = \\{ git = [^}]+\\}")
757 "tokio-tungstenite = { version = \"0.28.0\" }")
758 ;; Point nucleo git dependency to vendored checkout.
759 (("nucleo = \\{ git = [^}]+\\}")
760 "nucleo = { version = \"0.5.0\" }")
761 ;; Point runfiles git dependency to vendored checkout.
762 (("runfiles = \\{ git = [^}]+\\}")
763 "runfiles = { version = \"0.1.0\" }"))))
764 (add-after 'chdir-to-workspace 'add-version-to-workspace-deps
765 (lambda _
766 ;; cargo package requires all dependencies to have versions.
767 ;; Add version = "0.0.0" to internal path dependencies.
768 (let ((cargo-files (find-files "." "^Cargo\\.toml$")))
769 (substitute* cargo-files
770 ;; Handle inline deps: name = { path = "..." }
771 (("(codex-[a-z0-9-]+) = \\{ path = " all name)
772 (string-append name " = { version = \"0.0.0\", path = "))
773 ;; Handle inline deps with package: name = { package = "...", path = "..." }
774 (("(codex-[a-z0-9-]+) = \\{ package = " all name)
775 (string-append name " = { version = \"0.0.0\", package = "))
776 ;; Handle section deps: [dependencies.X] with path = "..."
777 (("^(path = \"\\.\\./[^\"]*\")" all path-line)
778 (string-append path-line "\nversion = \"0.0.0\"")))))))))
779 (inputs (cargo-inputs 'rust-codex-0.0.0.785c0c43))
780 (home-page "https://github.com/zed-industries/codex")
781 (synopsis "Zed Codex workspace crates")
782 (description
783 "This package provides the workspace crates for the Zed Codex CLI
784and runtime for AI-assisted coding.")
785 (license license:asl2.0)))))