guix_mirror_bot pushed a commit to branch rust-team
in repository guix.
commit 554a0139183ddd6e7c7fc0d37a7fa1273800909f
Author: Efraim Flashner <[email protected]>
AuthorDate: Wed Apr 29 18:01:07 2026 +0300
gnu: rust: Update to 1.95.
* gnu/packages/rust.scm (rust-1.95): New variable.
(rust): Update to 1.95.
Change-Id: Id79077ea01bfcc08881c3ff545f3c7bda15c2702
---
gnu/packages/rust.scm | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 62 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index db04cbe1fc..d31721b6f1 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1915,6 +1915,67 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(copy-recursively "stage2/lib"
(string-append out "/lib")))))))))))))
+(define-public rust-1.95
+ (let ((base-rust
+ (rust-bootstrapped-package
+ rust-1.94 "1.95.0"
+ "05d53hj717ildhvm3rln7821r08nzbbfk72nqcvpb5j67sl856za")))
+ (package
+ (inherit base-rust)
+ (source
+ (origin
+ (inherit (package-source base-rust))
+ (snippet
+ '(begin
+ (for-each delete-file-recursively
+ '("src/llvm-project"
+ "vendor/curl-sys-0.4.79+curl-8.12.0/curl"
+ "vendor/curl-sys-0.4.83+curl-8.15.0/curl"
+ "vendor/curl-sys-0.4.84+curl-8.17.0/curl"
+ "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
+ "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+ "vendor/libffi-sys-4.1.0/libffi"
+ "vendor/libmimalloc-sys-0.1.44/c_src/mimalloc"
+ "vendor/libz-sys-1.1.21/src/zlib"
+ "vendor/libz-sys-1.1.23/src/zlib"
+ "vendor/openssl-src-111.28.2+1.1.1w/openssl"
+ "vendor/openssl-src-300.5.0+3.5.0/openssl"
+ "vendor/openssl-src-300.5.4+3.5.4/openssl"
+
"vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
+ "vendor/tikv-jemalloc-sys-0.6.1+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)$"))
+ ;; Use the packaged nghttp2.
+ (for-each
+ (lambda (ver)
+ (let ((vendored-dir
+ (format #f "vendor/libnghttp2-sys-~a/nghttp2" ver))
+ (build-rs
+ (format #f "vendor/libnghttp2-sys-~a/build.rs" ver)))
+ (delete-file-recursively vendored-dir)
+ (delete-file build-rs)
+ (call-with-output-file build-rs
+ (lambda (port)
+ (format port "fn main() {~@
+ println!(\"cargo:rustc-link-lib=nghttp2\");~@
+ }~%")))))
+ '("0.1.11+1.64.0"))
+ ;; Adjust vendored dependency to explicitly use rustix with libc
+ ;; backend.
+ (substitute* '("vendor/tempfile-3.14.0/Cargo.toml"
+ "vendor/tempfile-3.16.0/Cargo.toml"
+ "vendor/tempfile-3.19.1/Cargo.toml"
+ "vendor/tempfile-3.20.0/Cargo.toml"
+ "vendor/tempfile-3.21.0/Cargo.toml"
+ "vendor/tempfile-3.23.0/Cargo.toml"
+ "vendor/tempfile-3.24.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."
(map (lambda (str)
@@ -1929,7 +1990,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
;;; 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.94))
+ (let ((base-rust rust-1.95))
(package
(inherit base-rust)
(properties (append