summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Brielmaier <jonathan.brielmaier@web.de>2022-08-13 19:44:40 +0200
committerJonathan Brielmaier <jonathan.brielmaier@web.de>2022-08-13 19:44:40 +0200
commit60c8d4499f12c4b26605a64b6871d950ccda65da (patch)
treec5c07cb5e57136beeefb3fb692c1c2721ce168cd
parent245e0b4d9b04be110ed8ab44f0ae06b306bea722 (diff)
nongnu: Add rust-firefox.
Firefox 101 requires rust >= 1.59 which is currently not in upstream Guix. So lets bootstrap one. * nongnu/packages/mozilla.scm (rust-uri, rust-bootstrapped-package): New procedures from guix/gnu/packages/rust.scm. (rust-firefox-1.58, rust-firefox-1.59, rust-firefox): New variables. (firefox)[native-inputs]: Replace rust with rust-firefox.
-rw-r--r--nongnu/packages/mozilla.scm35
1 files changed, 33 insertions, 2 deletions
diff --git a/nongnu/packages/mozilla.scm b/nongnu/packages/mozilla.scm
index f888b12..0106cfa 100644
--- a/nongnu/packages/mozilla.scm
+++ b/nongnu/packages/mozilla.scm
@@ -45,6 +45,7 @@
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix utils)
+ #:use-module ((guix build utils) #:select (alist-replace))
#:use-module (gnu packages)
#:use-module (gnu packages assembly)
@@ -84,6 +85,36 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
+;; Copied from guix/gnu/packages/rust.scm
+(define* (rust-uri version #:key (dist "static"))
+ (string-append "https://" dist ".rust-lang.org/dist/"
+ "rustc-" version "-src.tar.gz"))
+
+(define* (rust-bootstrapped-package base-rust version checksum)
+ "Bootstrap rust VERSION with source checksum CHECKSUM using BASE-RUST."
+ (package
+ (inherit base-rust)
+ (version version)
+ (source
+ (origin
+ (inherit (package-source base-rust))
+ (uri (rust-uri version))
+ (sha256 (base32 checksum))))
+ (native-inputs
+ (alist-replace "cargo-bootstrap" (list base-rust "cargo")
+ (alist-replace "rustc-bootstrap" (list base-rust)
+ (package-native-inputs base-rust))))))
+
+(define rust-firefox-1.58
+ (rust-bootstrapped-package
+ rust "1.58.1" "1iq7kj16qfpkx8gvw50d8rf7glbm6s0pj2y1qkrz7mi56vfsyfd8"))
+
+(define rust-firefox-1.59
+ (rust-bootstrapped-package
+ rust-firefox-1.58 "1.59.0" "1yc5bwcbmbwyvpfq7zvra78l0r8y3lbv60kbr62fzz2vx2pfxj57"))
+
+(define-public rust-firefox rust-firefox-1.59)
+
;; Update this id with every firefox update to it's release date.
;; It's used for cache validation and therefor can lead to strange bugs.
(define %firefox-build-id "20220520000000")
@@ -403,7 +434,7 @@
(list
alsa-lib
autoconf-2.13
- `(,rust "cargo")
+ `(,rust-firefox "cargo")
clang-12
llvm-12
wasm32-wasi-clang-toolchain
@@ -413,7 +444,7 @@
perl
pkg-config
python
- rust
+ rust-firefox
rust-cbindgen-0.19
which
yasm))