Subject: Re: bug#49956: [PATCH] gnu: Add rust-1.53.

From: Maxim Cournoyer <[email-masked]>
Date: Sat, 16 Oct 2021 01:42:26 -0400

Hello,

Matthew James Kraai <[email-masked]> writes:

> * gnu/packages/rust.scm (rust-1.53): New variable.
> ---
>  gnu/packages/rust.scm | 28 +++++++++++++++++++++++++++-
>  1 file changed, 27 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
> index 73f94a3929..bb4da17243 100644
> --- a/gnu/packages/rust.scm
> +++ b/gnu/packages/rust.scm
> @@ -10,7 +10,7 @@
>  ;;; Copyright © 2019 Ivan Petkov <[email-masked]>
>  ;;; Copyright © 2020, 2021 Jakub Kądziołka <[email-masked]>
>  ;;; Copyright © 2020 Pierre Langlois <[email-masked]>
> -;;; Copyright © 2020 Matthew James Kraai <[email-masked]>
> +;;; Copyright © 2020, 2021 Matthew James Kraai <[email-masked]>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -1474,5 +1474,31 @@ move around."
>          (alist-replace "llvm" (list llvm-12)
>                         (package-inputs base-rust))))))
>  
> +(define-public rust-1.53
> +  (let ((base-rust
> +         (rust-bootstrapped-package rust-1.52 "1.53.0"
> +           "1f95p259dfp5ca118bg107rj3rqwlswy65dxn3hg8sqgl4wwmxsw")))
> +    (package
> +      (inherit base-rust)
> +      (arguments
> +       (substitute-keyword-arguments (package-arguments base-rust)
> +         ((#:phases phases)
> +          `(modify-phases ,phases
> +             ;; Some tests got split out into separate files.
> +             (replace 'patch-tests
> +               (lambda* (#:key inputs #:allow-other-keys)
> +                 (let ((bash (assoc-ref inputs "bash")))
> +                   (substitute* "library/std/src/process/tests.rs"
> +                     (("\"/bin/sh\"") (string-append "\"" bash "/bin/sh\"")))
> +                   (substitute* "library/std/src/sys/unix/process/process_common/tests.rs"
> +                     (("fn test_process_mask") "#[allow(unused_attributes)]
> +    #[ignore]
> +    fn test_process_mask"))
> +                   (substitute* "src/test/codegen/alloc-optimisation.rs"
> +                     (("// min-llvm-version: 10.0.1") "// no-system-llvm"))
> +                   (substitute* "src/test/ui/asm/sym.rs"
> +                     (("// min-llvm-version: 10.0.1") "// no-system-llvm"))
> +                   #t))))))))))
> +
>  ;; TODO(staging): Bump this variable to the latest packaged rust.
>  (define-public rust rust-1.45)

Apologies for the duplicated work, but that's been tackled as part of
the reduced rust bootstrap that you can currently inspect in the
core-updates-frozen-batched-changes branch (to be merged into
core-updates-frozen soonish).

Closing,

Thank you!

Maxim