Subject: [PATCH] gnu: rust: Update to 1.85.

From: Brennan Vincent <[email-masked]>
Date: Fri, 21 Mar 2025 03:03:35 -0700

* gnu/packages/rust.scm (rust-1.85): New variable.
* gnu/packages/rust.scm (rust): Update to 1.85.

Change-Id: Ifa7b223e478f05830d343f169c5e8b29501ade5c
---
 gnu/packages/rust.scm | 42 +++++++++++++++++++++++++++++++++++-------
 1 file changed, 35 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index ccf28c63f8..3fd7fc3433 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1085,6 +1085,34 @@ (define-public rust-1.84
   (rust-bootstrapped-package rust-1.83 "1.84.1"
    "0xdk3g1xq33fy4m7q6l38ba9ydxbanccyb0vczvlk998jvababsy"))
 
+(define-public rust-1.85
+  (let ((base-rust
+         (rust-bootstrapped-package rust-1.84 "1.85.1"
+                                    "12i3jkxrc2bbd2d423q7krwkbc39wlwkjacsimx7b61m1359aa8g")))
+    (package
+      (inherit base-rust)
+      (source
+       (origin
+         (inherit (package-source base-rust))
+         (snippet
+          '(begin
+             (for-each delete-file-recursively
+                       '("src/llvm-project"
+                         "vendor/jemalloc-sys-0.3.2"
+                         "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
+                         "vendor/openssl-src-111.28.2+1.1.1w/openssl"
+                         "vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+                         "vendor/tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
+             ;; Remove vendored dynamically linked libraries.
+             ;; find . -not -type d -executable -exec file {} \+ | grep ELF
+             ;; Also remove the bundled (mostly Windows) libraries.
+             (for-each delete-file
+                       (find-files "vendor" "\\.(a|dll|exe|lib)$"))
+             ;; Adjust vendored dependency to explicitly use rustix with libc backend.
+             (substitute* '("vendor/tempfile-3.10.1/Cargo.toml"
+                            "vendor/tempfile-3.14.0/Cargo.toml")
+               (("features = \\[\"fs\"" all)
+                (string-append all ", \"use-libc\""))))))))))
 
 (define (make-ignore-test-list strs)
   "Function to make creating a list to ignore tests a bit easier."
@@ -1100,7 +1128,7 @@ (define (make-ignore-test-list strs)
 ;;; Here we take the latest included Rust, make it public, and re-enable tests
 ;;; and extra components such as rustfmt.
 (define-public rust
-  (let ((base-rust rust-1.84))
+  (let ((base-rust rust-1.85))
     (package
       (inherit base-rust)
       (properties (append
@@ -1114,19 +1142,19 @@ (define-public rust
          (snippet
           '(begin
              (for-each delete-file-recursively
-                       '("src/gcc"
-                         "src/llvm-project"
+                       '("src/llvm-project"
                          "vendor/jemalloc-sys-0.3.2/jemalloc"
                          "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
-                         "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+                         ;; "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
                          "vendor/openssl-src-111.17.0+1.1.1m/openssl"
                          "vendor/openssl-src-111.28.2+1.1.1w/openssl"
                          "vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+                         "vendor/tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"                         
                          ;; These are referenced by the cargo output
                          ;; so we unbundle them.
                          "vendor/curl-sys-0.4.52+curl-7.81.0/curl"
                          "vendor/curl-sys-0.4.74+curl-8.9.0/curl"
-                         "vendor/curl-sys-0.4.77+curl-8.10.1/curl"
+                         "vendor/curl-sys-0.4.78+curl-8.11.0/curl"
                          "vendor/libffi-sys-2.3.0/libffi"
                          "vendor/libz-sys-1.1.3/src/zlib"
                          "vendor/libz-sys-1.1.20/src/zlib"))
@@ -1159,7 +1187,7 @@ (define-public rust
               '("3.3.0"
                 "3.4.0"
                 "3.10.1"
-                "3.13.0"))))))
+                "3.14.0"))))))
       (arguments
        (substitute-keyword-arguments
          (strip-keyword-arguments '(#:tests?)
@@ -1292,7 +1320,7 @@ (define-public rust
                    (substitute* "install.rs"
                      ,@(make-ignore-test-list
                         '("fn install_global_cargo_config")))
-                   (substitute* '("cargo_add/add_workspace_non_fuzzy/mod.rs"
+                   (substitute* '("cargo_add/normalize_name_path_existing/mod.rs"
                                   "cargo_info/within_ws_with_alternative_registry/mod.rs")
                      ,@(make-ignore-test-list
                         '("fn case")))

base-commit: b54a9ca849f013300c633fb79d80bc754f6b28a2
-- 
2.48.1