Clément Lassieur transcribed 1.1K bytes:
> Hello,
> 
> As this blog article[1] says, Firefox 52's end of life will happen on
> August 28, 2018.  That is, in 47 days.  I imagine that by that time
> Icecat 60 will be released, but it seems that we are pretty far from
> being able to package it, because of the Rust packages that are needed.

As far as my experience with trying to finish newer firefox packages
goes, you can use cendor bundled crates. My idea so far was something
along thoe lines (not succesful so far):

;; (add-before 'configure 'unpatch-sh
;;   (lambda _
;;     (substitute* (list 
"third_party/rust/libc-0.2.24/ci/android-install-ndk.sh"
;;                        
"third_party/rust/mio/ci/docker/arm-linux-androideabi/install-sdk.sh")
;;       (((string-append "^#!" (which "sh")))
;;        "#!/bin/sh"))
;;     #t))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
  (lambda* (#:key inputs #:allow-other-keys)
;; third_party/rust/ has no Cargo.lock, but all the checksum.json files
;; Cargo.lock files occur outside of third_party/rust/ though.
;; (for-each
;;  (lambda (filename)
;;    (substitute* "Cargo.lock"
;;      (("(\"checksum .* = )\".*\"" all name)
;;       (string-append name "\"" ,%cargo-reference-hash "\""))))
;;  (find-files "third_party/rust" filename))
(for-each
(lambda (filename)
(use-modules (guix build cargo-build-system))
(delete-file filename)
(let* ((dir (dirname filename)))
(display (string-append
"patch-cargo-checksums: generate-checksums for "
dir "\n"))
(generate-checksums dir ,%cargo-reference-project-file)))
(find-files "third_party/rust" ".cargo-checksum.json"))
#t))


I'm more concerned about the unreliable building of rust itself.
A handful of us tried to build the new version and for some it
failed (in the testsuite), for some it succeeded.

> There might be other technical difficulties that I'm not aware of,
> though.
> 
> Is there any plan in this regard?  Maybe, as a first step, we should
> list the required dependencies so that people can pick them up?  My
> understanding of that article[2] is that the top level dependencies are
> listed in Cargo.toml[3].
> 
> What is the current state of the Rust build system (cargo-build-system)?

the inofficcial (no bug filed) guidelines: 
https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00051.html

> Is there anything blocking that would prevent its use?  I'm asking

Depends on what you want to use, but it is far from good enough for "real"
applications (like 200 crates dependencies).

> because I see very few packages in gnu/packages/rust.scm.
> 
> Thank you,
> Clément
> 
> [1]: 
> https://blog.mozilla.org/futurereleases/2018/01/11/announcing-esr60-policy-engine/
> [2]: 
> https://developer.mozilla.org/en-US/Firefox/Building_Firefox_with_Rust_code
> [3]: 
> https://dxr.mozilla.org/mozilla-central/source/toolkit/library/rust/shared/Cargo.toml
> 

Reply via email to