Merge remote-tracking branch 'origin/rust-team'

This commit is contained in:
Efraim Flashner 2023-10-21 20:34:46 +03:00
commit e6af40d7b4
No known key found for this signature in database
GPG Key ID: 41AAE7DCCA3D8351
17 changed files with 4120 additions and 1178 deletions

View File

@ -1945,6 +1945,7 @@ dist_patch_DATA = \
%D%/packages/patches/ruby-nokogiri.patch \
%D%/packages/patches/rustc-1.54.0-src.patch \
%D%/packages/patches/rust-1.64-fix-riscv64-bootstrap.patch \
%D%/packages/patches/rust-1.70-fix-rustix-build.patch \
%D%/packages/patches/rust-ring-0.16-missing-files.patch \
%D%/packages/patches/rust-ring-0.16-test-files.patch \
%D%/packages/patches/i3status-rust-enable-unstable-features.patch \
@ -1952,7 +1953,6 @@ dist_patch_DATA = \
%D%/packages/patches/rust-ndarray-0.13-remove-blas-src.patch \
%D%/packages/patches/rust-ndarray-0.14-remove-blas-src.patch \
%D%/packages/patches/rust-nettle-disable-vendor.patch \
%D%/packages/patches/rust-openssl-sys-no-vendor.patch \
%D%/packages/patches/rust-webbrowser-remove-unsupported-os.patch \
%D%/packages/patches/rust-wl-clipboard-rs-newer-wl.patch \
%D%/packages/patches/rw-igraph-0.10.patch \

View File

@ -5491,7 +5491,7 @@ interfering with any pam-mount configuration.")))
(define-public wlgreet
(package
(name "wlgreet")
(version "0.4")
(version "0.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -5500,25 +5500,24 @@ interfering with any pam-mount configuration.")))
(file-name (git-file-name name version))
(sha256
(base32
"00grp63n9nrgqls3knxfv9wjbc7p0jwr7i2vzxy750dz85gi2kzn"))))
"1k0jmgh0rjbnb49gkvs0a4d7z9xb6pad8v5w5f7my4s0rfpk7wd9"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-chrono" ,rust-chrono-0.4)
("rust-getopts" ,rust-getopts-0.2)
("rust-greetd-ipc" ,rust-greetd-ipc-0.8)
("rust-greetd-ipc" ,rust-greetd-ipc-0.9)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-memmap2" ,rust-memmap2-0.3)
("rust-nix" ,rust-nix-0.15)
("rust-os-pipe" ,rust-os-pipe-0.8)
("rust-rusttype" ,rust-rusttype-0.7)
("rust-nix" ,rust-nix-0.25)
("rust-os-pipe" ,rust-os-pipe-1)
("rust-rusttype" ,rust-rusttype-0.9)
("rust-serde" ,rust-serde-1)
("rust-smithay-client-toolkit"
,rust-smithay-client-toolkit-0.15)
("rust-toml" ,rust-toml-0.5)
("rust-wayland-client" ,rust-wayland-client-0.29)
("rust-wayland-protocols" ,rust-wayland-protocols-0.29)
("rust-xml-rs" ,rust-xml-rs-0.8))
("rust-wayland-protocols" ,rust-wayland-protocols-0.29))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-bundled-fonts
@ -5910,34 +5909,54 @@ file or files to several hosts.")
(define-public du-dust
(package
(name "du-dust")
(version "0.8.3")
(version "0.8.6")
(source (origin
(method url-fetch)
(uri (crate-uri "du-dust" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1daif13rdd7wb8m5fbp6zif5b8znqcvmkxrjpp2w2famsp36sahx"))))
"1w52xdz1vi6awsvf4lph791zv13phjvz4ypmxr7f6pgxd3crr77c"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-clap" ,rust-clap-3)
`(#:cargo-test-flags
(list "--release" "--"
"--skip=test_apparent_size")
#:install-source? #f
#:cargo-inputs (("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-atty" ,rust-atty-0.2)
("rust-clap" ,rust-clap-3)
("rust-clap-complete" ,rust-clap-complete-3)
("rust-clap-mangen" ,rust-clap-mangen-0.1)
("rust-config-file" ,rust-config-file-0.2)
("rust-directories" ,rust-directories-4)
("rust-lscolors" ,rust-lscolors-0.7)
("rust-lscolors" ,rust-lscolors-0.13)
("rust-rayon" ,rust-rayon-1)
("rust-regex" ,rust-regex-1)
("rust-serde" ,rust-serde-1)
("rust-stfu8" ,rust-stfu8-0.2)
("rust-sysinfo" ,rust-sysinfo-0.15)
("rust-terminal-size" ,rust-terminal-size-0.1)
("rust-sysinfo" ,rust-sysinfo-0.27)
("rust-terminal-size" ,rust-terminal-size-0.2)
("rust-thousands" ,rust-thousands-0.2)
("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-winapi-util" ,rust-winapi-util-0.1))
#:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-1)
("rust-tempfile" ,rust-tempfile-3))))
#:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-2)
("rust-tempfile" ,rust-tempfile-3))
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-extras
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share")))
(install-file "man-page/dust.1"
(string-append share "/man/man1"))
(mkdir-p (string-append out "/etc/bash_completion.d"))
(copy-file "completions/dust.bash"
(string-append out "/etc/bash_completion.d/dust"))
(install-file "completions/dust.fish"
(string-append share "/fish/vendor_completions.d"))
(install-file "completions/_dust"
(string-append share "/zsh/site-fuctions"))))))))
(home-page "https://github.com/bootandy/dust")
(synopsis "Graphical disk usage analyzer")
(description "This package provides a graphical disk usage analyzer in

View File

@ -4695,26 +4695,17 @@ accurately delineate genomic rearrangements throughout the genome.")
(arguments
(list
#:install-source? #false ;fails
#:tests? #false ;"cargo test" ignores build.rs
#:tests? #true
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-test-files
(lambda _
(delete-file "Cargo.lock")
(substitute* "liftover-rs/Cargo.toml"
(("anyhow = \"1\"") "anyhow = \"1.0.65\""))
(substitute* "liftover-rs/prepare-test.sh"
(("/bin/bash")
(string-append #$(this-package-native-input "bash")
"/bin/bash")))
(invoke "bash" "prepare-test-files.sh")))
(add-before 'patch-cargo-checksums 'do-not-build-xz
(lambda _
;; Detection of liblzma (in rust-lzma-sys, pulled in by
;; rust-hts-sys) doesn't seem to work, or perhaps it really does
;; request a static build somewhere.
(substitute* "guix-vendor/rust-lzma-sys-0.1.17.tar.xz/build.rs"
(("if .want_static && .msvc && pkg_config::probe_library\\(\"liblzma\"\\).is_ok\\(\\)") ""))))
(add-before 'install 'chdir
(lambda _ (chdir "transanno"))))
#:cargo-inputs
@ -4736,7 +4727,8 @@ accurately delineate genomic rearrangements throughout the genome.")
#:cargo-development-inputs
`(("rust-clap" ,rust-clap-2)
("rust-lazy-static" ,rust-lazy-static-1))))
(native-inputs (list bash))
(native-inputs (list bash pkg-config))
(inputs (list xz))
(home-page "https://github.com/informationsea/transanno")
(synopsis "LiftOver tool for new genome assemblies")
(description "This package provides an accurate VCF/GFF3/GTF LiftOver tool

View File

@ -1217,20 +1217,18 @@ EUI-64, also known as MAC-48 media access control addresses.")
(package
(inherit rust-glutin-egl-sys-0.4)
(name "rust-glutin-egl-sys")
(version "0.1.5")
(version "0.1.6")
(source
(origin
(method url-fetch)
(uri (crate-uri "glutin-egl-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"04f2ci9kb8q4dv4kviigvgfy54lr4jmbnmjsvi50qj13anjnmfra"))))
(base32 "0g81bz7ppvaksvwcw1jg553g8b2shvmnfm9ms6hixwvinj20z438"))))
(arguments
`(#:cargo-inputs
(("rust-winapi" ,rust-winapi-0.3)
("rust-gl-generator" ,rust-gl-generator-0.13))))))
("rust-gl-generator" ,rust-gl-generator-0.14))))))
(define-public rust-glutin-emscripten-sys-0.1
(package
@ -1742,13 +1740,13 @@ graphics and video games.")
(define-public rust-mp4parse-0.12
(package
(name "rust-mp4parse")
(version "0.12.0")
(version "0.12.1")
(source (origin
(method url-fetch)
(uri (crate-uri "mp4parse" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1ppqv60qiyrnbb996gb1sik08c0j2i317llv3rrcwb1cjg3bdlk7"))))
(base32 "1scynvlmiy6xv2rrzzpijd812amh6a863na8i0xrcw5d9d08kl8h"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ; Not all files included.
@ -2186,21 +2184,22 @@ AVIF format (powers the `cavif` tool).")
(package
(inherit rust-ravif-0.8)
(name "rust-ravif")
(version "0.6.4")
(version "0.6.6")
(source
(origin
(method url-fetch)
(uri (crate-uri "ravif" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1gyc7w1fz3qdk95cdpkj185dm6lskxfp329xm69waxc565fcz9rx"))))
(base32 "0rfm63bv0q2rjyivmzlk4wma8xff6jralh7dr1bjz2aw4knm7cw1"))))
(arguments
`(#:cargo-inputs
`(#:skip-build? #t ; Not packaging older versions of rav1e.
#:cargo-inputs
(("rust-avif-serialize" ,rust-avif-serialize-0.6)
("rust-imgref" ,rust-imgref-1)
("rust-loop9" ,rust-loop9-0.1)
("rust-num-cpus" ,rust-num-cpus-1)
("rav1e" ,rav1e)
("rav1e" ,rav1e) ; 0.5
("rust-rayon" ,rust-rayon-1)
("rust-rgb" ,rust-rgb-0.8))
#:cargo-development-inputs
@ -2262,6 +2261,25 @@ AVIF format (powers the `cavif` tool).")
(arguments
`(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))))
(define-public rust-resize-0.4
(package
(name "rust-resize")
(version "0.4.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "resize" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0bamrw2m37l8q46mcy6snp6106d93dq7x67hbbj32w88pjdhxn84"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs (("rust-png" ,rust-png-0.16))))
(home-page "https://github.com/PistonDevelopers/resize")
(synopsis "Image resampling library in pure Rust")
(description "This package provides an image resampling library in pure Rust.")
(license license:expat)))
(define-public rust-rgb-0.8
(package
(name "rust-rgb")
@ -3823,8 +3841,29 @@ the platform-specific getters provided by winit, or another library.")
(description "This package provides X11 library bindings for Rust.")
(license license:expat)))
(define-public rust-y4m-0.8
(package
(name "rust-y4m")
(version "0.8.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "y4m" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0j24y2zf60lpxwd7kyg737hqfyqx16y32s0fjyi6fax6w4hlnnks"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs (("rust-resize" ,rust-resize-0.4))))
(home-page "https://github.com/image-rs/y4m")
(synopsis "YUV4MPEG2 (@file{.y4m}) encoder and decoder")
(description
"This package provides a YUV4MPEG2 (@file{.y4m}) encoder and decoder.")
(license license:expat)))
(define-public rust-y4m-0.7
(package
(inherit rust-y4m-0.8)
(name "rust-y4m")
(version "0.7.0")
(source
@ -3834,13 +3873,7 @@ the platform-specific getters provided by winit, or another library.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7"))))
(build-system cargo-build-system)
(arguments `(#:skip-build? #t))
(home-page "https://github.com/image-rs/y4m")
(synopsis "YUV4MPEG2 (@file{.y4m}) encoder and decoder")
(description
"This package provides a YUV4MPEG2 (@file{.y4m}) encoder and decoder.")
(license license:expat)))
(arguments `(#:skip-build? #t))))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances

View File

@ -168,8 +168,42 @@
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-cairo-rs-0.17
(package
(name "rust-cairo-rs")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "cairo-rs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "02lz7kvml4m6fx02hy1pgk6ysils9di8n75m166kcpla0b206dmb"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.17)
("rust-freetype-rs" ,rust-freetype-rs-0.32)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-once-cell" ,rust-once-cell-1)
("rust-thiserror" ,rust-thiserror-1))
#:cargo-development-inputs
(("rust-float-eq" ,rust-float-eq-1)
("rust-tempfile" ,rust-tempfile-3))))
(native-inputs
(list pkg-config))
(inputs
(list cairo))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Cairo library")
(description "Rust bindings for the Cairo library")
(license license:expat)))
(define-public rust-cairo-rs-0.15
(package
(inherit rust-cairo-rs-0.17)
(name "rust-cairo-rs")
(version "0.15.12")
(source
@ -179,7 +213,6 @@
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1g396fdz8crf74dmmjarcsdbsm8qgxy3a5x9kw6m2d9xn28y6vn7"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
@ -189,15 +222,7 @@
("rust-libc" ,rust-libc-0.2)
("rust-thiserror" ,rust-thiserror-1))
#:cargo-development-inputs
(("rust-tempfile" ,rust-tempfile-3))))
(native-inputs
(list pkg-config))
(inputs
(list cairo))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Cairo library")
(description "Rust bindings for the Cairo library")
(license license:expat)))
(("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-cairo-rs-0.14
(package
@ -277,21 +302,21 @@
(("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-cairo-sys-rs-0.15
(define-public rust-cairo-sys-rs-0.17
(package
(name "rust-cairo-sys-rs")
(version "0.15.1")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "cairo-sys-rs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1j6k4pps3dv6g0vlpmxc2xyk0s40vj2wpzi55lbwjspmpqlx8m9w"))))
(base32 "1ccw4z59dx60khngx79g64c75abfwy7wnq57h2z82j7vn5k0q7b9"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-glib-sys" ,rust-glib-sys-0.15)
(("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6)
("rust-winapi" ,rust-winapi-0.3)
@ -305,6 +330,26 @@
(description "This package provides FFI bindings to libcairo.")
(license license:expat)))
(define-public rust-cairo-sys-rs-0.15
(package
(inherit rust-cairo-sys-rs-0.17)
(name "rust-cairo-sys-rs")
(version "0.15.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "cairo-sys-rs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1j6k4pps3dv6g0vlpmxc2xyk0s40vj2wpzi55lbwjspmpqlx8m9w"))))
(arguments
`(#:cargo-inputs
(("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6)
("rust-winapi" ,rust-winapi-0.3)
("rust-x11" ,rust-x11-2))))))
(define-public rust-cairo-sys-rs-0.14
(package
(inherit rust-cairo-sys-rs-0.15)
@ -463,8 +508,41 @@
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-gdk-pixbuf-0.17
(package
(name "rust-gdk-pixbuf")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "gdk-pixbuf" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "05q7ajsp2z8xi355h26k7lvq7n3lj9xm61vhn045g3238v46npb9"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ; `Errors` doesn't implement `std::fmt::Display`
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.17)
("rust-gio" ,rust-gio-0.17)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-once-cell" ,rust-once-cell-1))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list gdk-pixbuf))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the GdkPixbuf library")
(description "Rust bindings for the @code{GdkPixbuf} library")
(license license:expat)))
(define-public rust-gdk-pixbuf-0.15
(package
(inherit rust-gdk-pixbuf-0.17)
(name "rust-gdk-pixbuf")
(version "0.15.11")
(source
@ -474,7 +552,6 @@
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "16k1z21r76m620z61kfmgid1n6s8dnxpa4zlrppcr6dhr2fdsf5d"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
@ -485,15 +562,7 @@
("rust-glib" ,rust-glib-0.15)
("rust-libc" ,rust-libc-0.2))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list gdk-pixbuf))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the GdkPixbuf library")
(description "Rust bindings for the GdkPixbuf library")
(license license:expat)))
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-gdk-pixbuf-0.14
(package
@ -570,25 +639,23 @@
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-gdk-pixbuf-sys-0.15
(define-public rust-gdk-pixbuf-sys-0.17
(package
(name "rust-gdk-pixbuf-sys")
(version "0.15.10")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "gdk-pixbuf-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "19q2qjrzmmgc7bbs59sk6k0sv3xhpmnk9a2h0cajfr95g19jy2ql"))))
(base32 "1jvh91lzanr1a8c5h6ya8i4jzx7ifs8mjxjnmg8dfriw24yfr1cj"))))
(build-system cargo-build-system)
(arguments
`(;#:skip-build?
;#t
#:cargo-inputs
(("rust-gio-sys" ,rust-gio-sys-0.15)
("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-gobject-sys" ,rust-gobject-sys-0.15)
`(#:cargo-inputs
(("rust-gio-sys" ,rust-gio-sys-0.17)
("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-gobject-sys" ,rust-gobject-sys-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
@ -603,6 +670,29 @@
(description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.")
(license license:expat)))
(define-public rust-gdk-pixbuf-sys-0.15
(package
(inherit rust-gdk-pixbuf-sys-0.17)
(name "rust-gdk-pixbuf-sys")
(version "0.15.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "gdk-pixbuf-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "19q2qjrzmmgc7bbs59sk6k0sv3xhpmnk9a2h0cajfr95g19jy2ql"))))
(arguments
`(#:cargo-inputs
(("rust-gio-sys" ,rust-gio-sys-0.15)
("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-gobject-sys" ,rust-gobject-sys-0.15)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-gdk-pixbuf-sys-0.14
(package
(inherit rust-gdk-pixbuf-sys-0.15)
@ -768,8 +858,50 @@
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-gio-0.17
(package
(name "rust-gio")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "gio" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "02nkqpq1a6ikzhv5x4nyfvzx8zk5dkjsjm50ns4qdybwjf93x5x6"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ; `Errors` doesn't implement `std::fmt::Display`
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-futures-channel" ,rust-futures-channel-0.3)
("rust-futures-core" ,rust-futures-core-0.3)
("rust-futures-io" ,rust-futures-io-0.3)
("rust-futures-util" ,rust-futures-util-0.3)
("rust-gio-sys" ,rust-gio-sys-0.17)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-once-cell" ,rust-once-cell-1)
("rust-pin-project-lite" ,rust-pin-project-lite-0.2)
("rust-smallvec" ,rust-smallvec-1)
("rust-thiserror" ,rust-thiserror-1))
#:cargo-development-inputs
(("rust-futures" ,rust-futures-0.3)
("rust-futures-util" ,rust-futures-util-0.3)
("rust-gir-format-check" ,rust-gir-format-check-0.1)
("rust-serial-test" ,rust-serial-test-1))))
(native-inputs
(list pkg-config))
(inputs
(list glib))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Gio library")
(description "Rust bindings for the Gio library")
(license license:expat)))
(define-public rust-gio-0.15
(package
(inherit rust-gio-0.17)
(name "rust-gio")
(version "0.15.12")
(source
@ -779,7 +911,6 @@
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0fr8qiqjf9yzl8867kgqdsxpkcx2jrns3xwmlf0jfiid668brzb8"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
@ -797,15 +928,7 @@
#:cargo-development-inputs
(("rust-futures-util" ,rust-futures-util-0.3)
("rust-gir-format-check" ,rust-gir-format-check-0.1)
("rust-serial-test" ,rust-serial-test-0.6))))
(native-inputs
(list pkg-config))
(inputs
(list glib))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Gio library")
(description "Rust bindings for the Gio library")
(license license:expat)))
("rust-serial-test" ,rust-serial-test-0.6))))))
(define-public rust-gio-0.14
(package
@ -1272,14 +1395,14 @@
(package
(inherit rust-glib-macros-0.17)
(name "rust-glib-macros")
(version "0.15.11")
(version "0.15.13")
(source
(origin
(method url-fetch)
(uri (crate-uri "glib-macros" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0r3cr0c79rs91z0sps089nsf8ppnm8agp48qwwqlkc32lqqq39i5"))))
(base32 "0jiwvywmkqhih6glipj1c7aylwfr738jid8nmjr4yvx2dygsxihh"))))
(arguments
`(;; XXX: Circular dependency on rust-glib??
#:tests? #f
@ -1813,8 +1936,42 @@
library.")
(license license:expat)))
(define-public rust-pango-0.17
(package
(name "rust-pango")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "pango" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0j0xj9yw81qivqb0y34j9c5azjsdspxp1zzpvxi1zri0qrplbgim"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-gio" ,rust-gio-0.17)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-once-cell" ,rust-once-cell-1)
("rust-pango-sys" ,rust-pango-sys-0.17))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list pango))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Pango library")
(description "This package provides Rust bindings for the Pango library.")
(license license:expat)))
(define-public rust-pango-0.15
(package
(inherit rust-pango-0.17)
(name "rust-pango")
(version "0.15.10")
(source
@ -1824,7 +1981,6 @@ library.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0ksf85fqkw4y5pf21p84g5xn4fnqn21cbrmx2d9yx6k591ah9r12"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
@ -1835,15 +1991,7 @@ library.")
("rust-once-cell" ,rust-once-cell-1)
("rust-pango-sys" ,rust-pango-sys-0.15))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list pango))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the Pango library")
(description "Rust bindings for the Pango library")
(license license:expat)))
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-pango-0.14
(package
@ -1923,22 +2071,22 @@ library.")
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-pango-sys-0.15
(define-public rust-pango-sys-0.17
(package
(name "rust-pango-sys")
(version "0.15.10")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "pango-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1an3c931kbkr08n9d9d1dapsq3n26zs0xn4ixn11jrp4rn0h186j"))))
(base32 "15aindwdxsydzvqcvhc9ysamx5v1jmq8qbs61ncxic2h72grz9ix"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-gobject-sys" ,rust-gobject-sys-0.15)
(("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-gobject-sys" ,rust-gobject-sys-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
@ -1953,6 +2101,28 @@ library.")
(description "This package provides FFI bindings to @code{libpango-1.0}.")
(license license:expat)))
(define-public rust-pango-sys-0.15
(package
(inherit rust-pango-sys-0.17)
(name "rust-pango-sys")
(version "0.15.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "pango-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1an3c931kbkr08n9d9d1dapsq3n26zs0xn4ixn11jrp4rn0h186j"))))
(arguments
`(#:cargo-inputs
(("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-gobject-sys" ,rust-gobject-sys-0.15)
("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-pango-sys-0.14
(package
(inherit rust-pango-sys-0.15)
@ -2017,8 +2187,43 @@ library.")
(("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-pangocairo-0.17
(package
(name "rust-pangocairo")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "pangocairo" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1kr2b31034b8zif4r3lf4rniqphk2bxi2q7n8iwq2wrf3k5jkgw6"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-cairo-rs" ,rust-cairo-rs-0.17)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-pango" ,rust-pango-0.17)
("rust-pangocairo-sys" ,rust-pangocairo-sys-0.17))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list pango))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the PangoCairo library")
(description
"This package provides Rust bindings for the @code{PangoCairo} library.")
(license license:expat)))
(define-public rust-pangocairo-0.15
(package
(inherit rust-pangocairo-0.17)
(name "rust-pangocairo")
(version "0.15.1")
(source
@ -2029,7 +2234,6 @@ library.")
(sha256
(base32
"0rjk0clrjxah4kc0kybn7l7bxa5m5kpxkihxc2i7a6hx3xfa8xkq"))))
(build-system cargo-build-system)
(arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f
@ -2041,37 +2245,26 @@ library.")
("rust-pango" ,rust-pango-0.15)
("rust-pangocairo-sys" ,rust-pangocairo-sys-0.15))
#:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))
(native-inputs
(list pkg-config))
(inputs
(list pango))
(home-page "https://gtk-rs.org/")
(synopsis "Rust bindings for the PangoCairo library")
(description
"Rust bindings for the PangoCairo library.")
(license license:expat)))
(("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
(define-public rust-pangocairo-sys-0.15
(define-public rust-pangocairo-sys-0.17
(package
(name "rust-pangocairo-sys")
(version "0.15.1")
(version "0.17.10")
(source
(origin
(method url-fetch)
(uri (crate-uri "pangocairo-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"154llaawy60zh8fkw2yq0r31ynpmqlsr7brryzaq2v4ijijp9kvq"))))
(origin
(method url-fetch)
(uri (crate-uri "pangocairo-sys" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0ymr4aqrdpysz0rh383s4h6hj8nbkyj7n4723f45zzzqkf6x7pwl"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.15)
("rust-glib-sys" ,rust-glib-sys-0.15)
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.17)
("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-pango-sys" ,rust-pango-sys-0.15)
("rust-pango-sys" ,rust-pango-sys-0.17)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-1)
@ -2083,9 +2276,34 @@ library.")
(list cairo glib pango))
(home-page "https://gtk-rs.org/")
(synopsis "FFI bindings to libgtk-3")
(description "This package provides FFI bindings to libgtk-3.")
(description "This package provides FFI bindings to @code{PangoCairo}.")
(license license:expat)))
(define-public rust-pangocairo-sys-0.15
(package
(inherit rust-pangocairo-sys-0.17)
(name "rust-pangocairo-sys")
(version "0.15.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "pangocairo-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"154llaawy60zh8fkw2yq0r31ynpmqlsr7brryzaq2v4ijijp9kvq"))))
(arguments
`(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.15)
("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-libc" ,rust-libc-0.2)
("rust-pango-sys" ,rust-pango-sys-0.15)
("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-1)
("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-soup-sys-0.10
(package
(name "rust-soup-sys")

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020, 2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018, 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
@ -258,22 +258,20 @@ OpenBSD tool of the same name.")
(define-public rust-minisign
(package
(name "rust-minisign")
(version "0.5.20")
(version "0.7.5")
(source
(origin
(method url-fetch)
(uri (crate-uri "minisign" version))
(file-name
(string-append name "-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0xmcvh2snravghaar8igc6b9r3s1snnmf9qam9l3zyhm4987767y"))))
(base32 "1lmp83bxdg53c4n35fbwr3rkh6178y75fwsn25hf1kn62f2gbdnj"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-getrandom" ,rust-getrandom-0.1)
("rust-rpassword" ,rust-rpassword-4)
("rust-scrypt" ,rust-scrypt-0.3))))
(("rust-getrandom" ,rust-getrandom-0.2)
("rust-rpassword" ,rust-rpassword-7)
("rust-scrypt" ,rust-scrypt-0.11))))
(home-page "https://github.com/jedisct1/rust-minisign")
(synopsis "Crate to sign files and verify signatures")
(description
@ -1554,36 +1552,37 @@ SHA-3, and BLAKE2.")
(define-public rust-blake3-1
(package
(name "rust-blake3")
(version "1.0.0")
;; The crate does not include the reference_impl directory.
(version "1.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BLAKE3-team/BLAKE3")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (crate-uri "blake3" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"09xi7rjyi5hgxyfpias485x5argwqygvfl9sggiw221qjdfxpbdn"))))
(base32 "11ysh12zcqq6xkjxh5cbrmnwzalprm3z552i5ff7wm5za9hz0c82"))))
(build-system cargo-build-system)
(arguments
(list
#:tests? #f ; use of undeclared crate or module `reference_impl`
#:cargo-inputs
`(("rust-arrayref" ,rust-arrayref-0.3)
("rust-arrayvec" ,rust-arrayvec-0.7)
("rust-cc" ,rust-cc-1)
("rust-cfg-if" ,rust-cfg-if-1)
("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
("rust-crypto-mac" ,rust-crypto-mac-0.11)
("rust-digest" ,rust-digest-0.9)
("rust-rayon" ,rust-rayon-1))
("rust-constant-time-eq" ,rust-constant-time-eq-0.3)
("rust-digest" ,rust-digest-0.10)
("rust-memmap2" ,rust-memmap2-0.7)
("rust-rayon" ,rust-rayon-1)
("rust-serde" ,rust-serde-1)
("rust-zeroize" ,rust-zeroize-1))
#:cargo-development-inputs
`(("rust-cc" ,rust-cc-1)
("rust-hex" ,rust-hex-0.4)
("rust-page-size" ,rust-page-size-0.4)
`(("rust-hex" ,rust-hex-0.4)
("rust-hmac" ,rust-hmac-0.12)
("rust-page-size" ,rust-page-size-0.6)
("rust-rand" ,rust-rand-0.8)
("rust-rand-chacha" ,rust-rand-chacha-0.3))))
("rust-rand-chacha" ,rust-rand-chacha-0.3)
("rust-serde-json" ,rust-serde-json-1)
("rust-tempfile" ,rust-tempfile-3))))
(home-page "https://github.com/BLAKE3-team/BLAKE3")
(synopsis "BLAKE3 hash function Rust implementation")
(description "This crate provides the official Rust implementation of the
@ -1596,16 +1595,14 @@ SHA-3, and BLAKE2.")
(define-public b3sum
(package
(name "b3sum")
;; Version 1 requires Rust >= 1.51.
;; <https://github.com/BLAKE3-team/BLAKE3/releases/tag/1.0.0>
(version "0.3.8")
(version "1.5.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "b3sum" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0h3fz16q5lk6mg7r8kjkjrq5hd4injngn5m7pswjbf2pyzjmg4b4"))))
(base32 "05k0vn7gpbvjr925vjc5yzvhiyrmkw9pqmch5fr4ir7s8wiaq2fm"))))
(build-system cargo-build-system)
(arguments
`(;; Install the source so that Cargo.toml is installed, because that is
@ -1625,10 +1622,10 @@ SHA-3, and BLAKE2.")
(install-file "README.md" doc)))))
#:cargo-inputs
(("rust-anyhow" ,rust-anyhow-1)
("rust-blake3" ,rust-blake3-0.3)
("rust-clap" ,rust-clap-2)
("rust-blake3" ,rust-blake3-1)
("rust-clap" ,rust-clap-4)
("rust-hex" ,rust-hex-0.4)
("rust-memmap" ,rust-memmap-0.7)
("rust-memmap2" ,rust-memmap2-0.7)
("rust-rayon" ,rust-rayon-1)
("rust-wild" ,rust-wild-2))
#:cargo-development-inputs

View File

@ -3500,7 +3500,7 @@ for dealing with different structured file formats.")
(define-public librsvg
(package
(name "librsvg")
(version "2.54.5")
(version "2.56.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/librsvg/"
@ -3508,10 +3508,7 @@ for dealing with different structured file formats.")
"librsvg-" version ".tar.xz"))
(sha256
(base32
"0vmfgihhf35bxn7giqiskgsflr0zxp6xyy9aynhiyk9j8l7ij0sg"))
(modules '((guix build utils)))
(snippet
'(begin (delete-file-recursively "vendor")))))
"1xa0cxdvc6vis5ssh1i0vi2rwgcx3bll6k5i135qyd2ra77zv1za"))))
(build-system cargo-build-system)
(outputs '("out" "doc" "debug"))
(arguments
@ -3522,55 +3519,61 @@ for dealing with different structured file formats.")
(guix build utils)
((guix build gnu-build-system) #:prefix gnu:))
#:cargo-inputs
`(("rust-byteorder" ,rust-byteorder-1)
("rust-cairo-rs" ,rust-cairo-rs-0.15)
`(("rust-anyhow" ,rust-anyhow-1)
("rust-byteorder" ,rust-byteorder-1)
("rust-cairo-rs" ,rust-cairo-rs-0.17)
("rust-cast" ,rust-cast-0.3)
("rust-chrono" ,rust-chrono-0.4)
("rust-clap" ,rust-clap-2)
("rust-cssparser" ,rust-cssparser-0.28)
("rust-data-url" ,rust-data-url-0.1)
("rust-encoding" ,rust-encoding-0.2)
("rust-clap" ,rust-clap-4)
("rust-clap-complete" ,rust-clap-complete-4)
("rust-cssparser" ,rust-cssparser-0.29)
("rust-data-url" ,rust-data-url-0.2)
("rust-encoding-rs" ,rust-encoding-rs-0.8)
("rust-float-cmp" ,rust-float-cmp-0.9)
("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.15)
("rust-gio" ,rust-gio-0.15)
("rust-glib" ,rust-glib-0.15)
("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.17)
("rust-gio" ,rust-gio-0.17)
("rust-glib" ,rust-glib-0.17)
("rust-itertools" ,rust-itertools-0.10)
("rust-language-tags" ,rust-language-tags-0.3)
("rust-libc" ,rust-libc-0.2)
("rust-locale-config" ,rust-locale-config-0.3)
("rust-markup5ever" ,rust-markup5ever-0.10)
("rust-nalgebra" ,rust-nalgebra-0.29)
("rust-markup5ever" ,rust-markup5ever-0.11)
("rust-nalgebra" ,rust-nalgebra-0.32)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-once-cell" ,rust-once-cell-1)
("rust-pango" ,rust-pango-0.15)
("rust-pangocairo" ,rust-pangocairo-0.15)
("rust-pango" ,rust-pango-0.17)
("rust-pangocairo" ,rust-pangocairo-0.17)
("rust-rayon" ,rust-rayon-1)
("rust-rctree" ,rust-rctree-0.4)
("rust-rgb" ,rust-rgb-0.8)
("rust-rctree" ,rust-rctree-0.5)
("rust-regex" ,rust-regex-1)
("rust-selectors" ,rust-selectors-0.23)
("rust-rgb" ,rust-rgb-0.8)
("rust-selectors" ,rust-selectors-0.24)
("rust-string-cache" ,rust-string-cache-0.8)
("rust-system-deps" ,rust-system-deps-6)
("rust-thiserror" ,rust-thiserror-1)
("rust-tinyvec" ,rust-tinyvec-1)
("rust-url" ,rust-url-2)
("rust-xml5ever" ,rust-xml5ever-0.16))
("rust-xml5ever" ,rust-xml5ever-0.17))
#:cargo-development-inputs
`(("rust-anyhow" ,rust-anyhow-1)
("rust-assert-cmd" ,rust-assert-cmd-2)
("rust-cairo-rs" ,rust-cairo-rs-0.15)
("rust-cairo-rs" ,rust-cairo-rs-0.17)
("rust-cast" ,rust-cast-0.3)
("rust-chrono" ,rust-chrono-0.4)
("rust-criterion" ,rust-criterion-0.3)
("rust-glib" ,rust-glib-0.15)
("rust-criterion" ,rust-criterion-0.4)
("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2)
("rust-lopdf" ,rust-lopdf-0.26)
("rust-lopdf" ,rust-lopdf-0.29)
("rust-matches" ,rust-matches-0.1)
("rust-pango" ,rust-pango-0.17)
("rust-pangocairo" ,rust-pangocairo-0.17)
("rust-png" ,rust-png-0.17)
("rust-predicates" ,rust-predicates-2)
("rust-proptest" ,rust-proptest-1)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-tempfile" ,rust-tempfile-3)
("rust-test-generator" ,rust-test-generator-0.3)
("rust-yeslogic-fontconfig-sys" ,rust-yeslogic-fontconfig-sys-2))
("rust-yeslogic-fontconfig-sys" ,rust-yeslogic-fontconfig-sys-4))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-gdk-pixbuf-thumbnailer
@ -3594,12 +3597,9 @@ for dealing with different structured file formats.")
;; Increase reftest tolerance a bit to account for different
;; harfbuzz, pango, etc.
(setenv "RSVG_TEST_TOLERANCE" "20")
;; These two tests even fail after loosening the tolerance.
(for-each delete-file
'("tests/fixtures/reftests/bugs/730-font-scaling.svg"
"tests/fixtures/reftests/bugs/730-font-scaling-ref.png"
"tests/fixtures/reftests/svg1.1/text-text-03-b.svg"
"tests/fixtures/reftests/svg1.1/text-text-03-b-ref.png"))))
;; This test fails even after loosening the tolerance.
(substitute* "tests/src/reference.rs"
((".*svg1_1_text_align_03_b_svg.*") ""))))
(add-before 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "gdk-pixbuf-loader/Makefile.in"

View File

@ -0,0 +1,21 @@
@@ -0,0 +1,20 @@
--- a/vendor/fd-lock/Cargo.toml 2023-05-31 14:44:48.000000000 -0700
+++ b/vendor/fd-lock/Cargo.toml 2023-07-14 21:19:34.637702319 -0700
@@ -45,7 +45,7 @@
[target."cfg(unix)".dependencies.rustix]
version = "0.37.0"
-features = ["fs"]
+features = ["fs", "cc"]
[target."cfg(windows)".dependencies.windows-sys]
version = "0.45.0"
--- a/src/bootstrap/Cargo.lock 2023-07-11 20:32:40.000000000 -0700
+++ b/src/bootstrap/Cargo.lock 2023-07-14 22:41:53.269284713 -0700
@@ -618,6 +618,7 @@
dependencies = [
"bitflags",
+ "cc",
"errno",
"io-lifetimes",
"libc",

View File

@ -1,32 +0,0 @@
--- openssl-sys-0.9.84/Cargo.toml.orig 2023-04-03 09:10:11.979197979 -0400
+++ openssl-sys-0.9.84/Cargo.toml 2023-04-03 12:07:30.285315609 -0400
@@ -31,10 +31,6 @@
[package.metadata.pkg-config]
openssl = "1.0.1"
-[dependencies.bssl-sys]
-version = "0.1.0"
-optional = true
-
[dependencies.libc]
version = "0.2"
@@ -46,16 +42,12 @@
[build-dependencies.cc]
version = "1.0"
-[build-dependencies.openssl-src]
-version = "111"
-optional = true
-
[build-dependencies.pkg-config]
version = "0.3.9"
[features]
-unstable_boringssl = ["bssl-sys"]
-vendored = ["openssl-src"]
+unstable_boringssl = []
+vendored = []
[target."cfg(target_env = \"msvc\")".build-dependencies.vcpkg]
version = "0.2.8"

View File

@ -486,15 +486,16 @@ is used by the Requests library to verify HTTPS requests.")
(define-public python-cryptography-vectors
(package
(name "python-cryptography-vectors")
(version "40.0.2")
(version "41.0.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cryptography_vectors" version))
(sha256
(base32
"16hcprw919f2rl3jipsy2996bnsz170inway3lishqi30xwqf6x8"))))
(build-system python-build-system)
"17m1azxfc3w0390jp9mkx1v0k3xfv4v1lrgch4hvbbm77s0z42j4"))))
(build-system pyproject-build-system)
(arguments (list #:tests? #f)) ; No tests included.
(home-page "https://github.com/pyca/cryptography")
(synopsis "Test vectors for the cryptography package")
(description
@ -505,14 +506,14 @@ is used by the Requests library to verify HTTPS requests.")
(define-public python-cryptography
(package
(name "python-cryptography")
(version "40.0.2")
(version "41.0.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cryptography" version))
(sha256
(base32
"16awbsm13vdksm98dybwvmpy2y1l636bq7g0s93scksrp0r0sg63"))))
"06pm952pr6f31pzwh5fb68zryqyss0hg9cbggxm15z15844w7svz"))))
(build-system pyproject-build-system)
(arguments
(list
@ -567,6 +568,9 @@ ciphers, message digests and key derivation functions.")
(guix build utils)
(srfi srfi-1)
(ice-9 match))
#:install-source? #f
;; As seen in noxfile.py
#:cargo-test-flags ''("--release" "--no-default-features")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
@ -584,26 +588,21 @@ ciphers, message digests and key derivation functions.")
(apply (assoc-ref %standard-phases 'configure)
(append args
(list #:inputs (alist-delete "source" inputs))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; As seen in tox.ini
(invoke "cargo" "test" "--no-default-features"))))
(add-after 'install 'install-shared-library
(lambda _
(install-file "target/release/libcryptography_rust.so"
(string-append #$output "/lib")))))
#:cargo-inputs
`(("rust-asn1-0.13" ,rust-asn1-0.13)
`(("rust-asn1" ,rust-asn1-0.15)
("rust-cc" ,rust-cc-1)
("rust-chrono-0.4" ,rust-chrono-0.4)
("rust-foreign-types-shared-0.1" ,rust-foreign-types-shared-0.1)
("rust-once-cell-1" ,rust-once-cell-1)
("rust-openssl-0.10" ,rust-openssl-0.10)
("rust-openssl-sys-0.9" ,rust-openssl-sys-0.9)
("rust-ouroboros-0.15" ,rust-ouroboros-0.15)
("rust-pem-1" ,rust-pem-1)
("rust-pyo3-0.15" ,rust-pyo3-0.15))))
("rust-foreign-types" ,rust-foreign-types-0.3)
("rust-foreign-types-shared" ,rust-foreign-types-shared-0.1)
("rust-once-cell" ,rust-once-cell-1)
("rust-openssl" ,rust-openssl-0.10)
("rust-openssl-sys" ,rust-openssl-sys-0.9)
("rust-ouroboros" ,rust-ouroboros-0.15)
("rust-pem" ,rust-pem-1)
("rust-pyo3" ,rust-pyo3-0.18))))
(native-inputs (list pkg-config python python-cffi))
;; XXX: Adding rust-openssl-sys-0.9 is needed because #:cargo-inputs
;; doesn't honor propagated-inputs.
@ -614,14 +613,14 @@ ciphers, message digests and key derivation functions.")
(define-public python-pyopenssl
(package
(name "python-pyopenssl")
(version "23.1.1")
(version "23.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyOpenSSL" version))
(sha256
(base32
"1dxhip610zw1j2bz35g1w1h7vh374g0bnzn4nsqj65n6pswrh544"))))
"1b4bkcpzhmablf592g21rq3l8apbhklp6wcwlvgfflm4algr6vr7"))))
(build-system python-build-system)
(arguments
(list

View File

@ -246,6 +246,7 @@
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages scanner)
#:use-module (gnu packages sdl)
#:use-module (gnu packages search)
@ -3056,13 +3057,13 @@ help formatter.")
(define-public python-orjson
(package
(name "python-orjson")
(version "3.8.8")
(version "3.9.7")
(source (origin
(method url-fetch)
(uri (pypi-uri "orjson" version))
(sha256
(base32
"1nn617pzn8smjkf7j593ybq16qfnj53bla52qjwzzrms4fjxg5n0"))))
"0hh1j7akxgx1nvsnwx1p4f4h4pkgr7v9aqr99l2pwbwfyyc93qw5"))))
(build-system cargo-build-system)
(arguments
(list
@ -3073,47 +3074,10 @@ help formatter.")
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'prepare-python-module
(lambda _
;; We don't use maturin.
(delete-file "pyproject.toml")
(call-with-output-file "pyproject.toml"
(lambda (port)
(format port "\
[build-system]
build-backend = 'setuptools.build_meta'
requires = ['setuptools']
")))
(call-with-output-file "setup.cfg"
(lambda (port)
(format port "\
[metadata]
name = orjson
version = ~a
[options]
packages = find:
[options.packages.find]
exclude =
src
integration
test
Cargo.toml
" #$version)))))
(add-after 'prepare-python-module 'build-python-module
(assoc-ref py:%standard-phases 'build))
(add-after 'build-python-module 'install-python-module
(assoc-ref py:%standard-phases 'install))
(add-after 'install-python-module 'install-python-library
(lambda _
(let ((site (string-append #$output "/lib/python"
#$(version-major+minor
(package-version python))
"/site-packages")))
(mkdir-p site)
(copy-file "target/release/liborjson.so"
(string-append site "/orjson.so"))))))
(assoc-ref py:%standard-phases 'install)))
#:cargo-inputs
`(("rust-ahash" ,rust-ahash-0.8)
("rust-arrayvec" ,rust-arrayvec-0.7)
@ -3126,17 +3090,20 @@ exclude =
("rust-itoa" ,rust-itoa-1)
("rust-itoap" ,rust-itoap-1)
("rust-once-cell" ,rust-once-cell-1)
("rust-pyo3-ffi" ,rust-pyo3-ffi-0.18)
("rust-pyo3-ffi" ,rust-pyo3-ffi-0.19)
("rust-ryu" ,rust-ryu-1)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-simdutf8" ,rust-simdutf8-0.1)
("rust-smallvec" ,rust-smallvec-1))
("rust-smallvec" ,rust-smallvec-1)
("rust-cc" ,rust-cc-1)
("rust-pyo3-build-config" ,rust-pyo3-build-config-0.19)
("rust-version-check" ,rust-version-check-0.9))
#:install-source? #false))
(inputs
(list maturin))
(native-inputs
(list python-wrapper
python-pypa-build
python-wheel))
(list python-wrapper))
(home-page "https://github.com/ijl/orjson")
(synopsis "Python JSON library supporting dataclasses, datetimes, and numpy")
(description "Orjson is a fast, correct JSON library for Python. It

View File

@ -1084,7 +1084,7 @@ touchscreen devices.")
(define-public rust-swc
(package
(name "rust-swc")
(version "1.2.24")
(version "1.2.124")
(source
(origin
(method git-fetch)
@ -1094,81 +1094,125 @@ touchscreen devices.")
(file-name (git-file-name name version))
(sha256
(base32
"1w9al035x0gmard80vqvah8sy8szs6bnd1ynnyssiiylzg7vhyyv"))))
"1cb65vl437sy7shflsazi2k4sz53v3r85dj8rb32ny1j6njczj4h"))
(modules '((guix build utils)))
(snippet
'(begin (substitute* (find-files "." "^Cargo\\.toml$")
(("\"=([[:digit:]]+(\\.[[:digit:]]+)*)" _ version)
(string-append "\"^" version)))))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-base64" ,rust-base64-0.12)
`(#:install-source? #f
#:cargo-build-flags
'("--release" "-p" "swc_cli")
#:cargo-test-flags
'("--release" "-p" "swc_cli")
#:cargo-inputs
(("rust-abi-stable" ,rust-abi-stable-0.10)
("rust-ahash" ,rust-ahash-0.7)
("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-anyhow" ,rust-anyhow-1)
("rust-arrayvec" ,rust-arrayvec-0.5)
("rust-arbitrary" ,rust-arbitrary-1)
("rust-auto-impl" ,rust-auto-impl-0.5)
("rust-auto-impl" ,rust-auto-impl-0.4)
("rust-backtrace" ,rust-backtrace-0.3)
("rust-bincode" ,rust-bincode-1)
("rust-bitflags" ,rust-bitflags-1)
("rust-browserslist-rs" ,rust-browserslist-rs-0.6)
("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-console-error-panic-hook" ,rust-console-error-panic-hook-0.1)
("rust-copyless" ,rust-copyless-0.1)
("rust-crc" ,rust-crc-1)
("rust-darling" ,rust-darling-0.10)
("rust-dashmap" ,rust-dashmap-3)
("rust-dashmap" ,rust-dashmap-4)
("rust-debug-unreachable" ,rust-debug-unreachable-0.1)
("rust-difference" ,rust-difference-2)
("rust-either" ,rust-either-1)
("rust-fxhash" ,rust-fxhash-0.2)
("rust-glob" ,rust-glob-0.3)
("rust-hex" ,rust-hex-0.4)
("rust-indexmap" ,rust-indexmap-1)
("rust-inflector" ,rust-inflector-0.11)
("rust-is-macro" ,rust-is-macro-0.1)
("rust-jemallocator" ,rust-jemallocator-0.3)
("rust-log" ,rust-log-0.4)
("rust-mimalloc" ,rust-mimalloc-0.1)
("rust-napi" ,rust-napi-0.5)
("rust-napi-build" ,rust-napi-build-0.2)
("rust-napi-derive" ,rust-napi-derive-0.5)
("rust-lexical" ,rust-lexical-5)
("rust-libloading" ,rust-libloading-0.7)
("rust-lru" ,rust-lru-0.7)
("rust-mimalloc-rust" ,rust-mimalloc-rust-0.1)
("rust-napi" ,rust-napi-2)
("rust-napi-build" ,rust-napi-build-1)
("rust-napi-derive" ,rust-napi-derive-2)
("rust-nom" ,rust-nom-5)
("rust-normpath" ,rust-normpath-0.2)
("rust-num-bigint" ,rust-num-bigint-0.2)
("rust-once-cell" ,rust-once-cell-1)
("rust-ordered-float" ,rust-ordered-float-1)
("rust-ordered-float" ,rust-ordered-float-2)
("rust-owning-ref" ,rust-owning-ref-0.4)
("rust-parking-lot" ,rust-parking-lot-0.11)
("rust-parking-lot" ,rust-parking-lot-0.7)
("rust-parking-lot-core" ,rust-parking-lot-core-0.8)
("rust-path-clean" ,rust-path-clean-0.1)
("rust-paw" ,rust-paw-1)
("rust-petgraph" ,rust-petgraph-0.5)
("rust-phf" ,rust-phf-0.8)
("rust-pmutil" ,rust-pmutil-0.5)
("rust-pretty-assertions" ,rust-pretty-assertions-0.7)
("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-rayon" ,rust-rayon-1)
("rust-radix-fmt" ,rust-radix-fmt-1)
("rust-regex" ,rust-regex-1)
("rust-relative-path" ,rust-relative-path-1)
("rust-retain-mut" ,rust-retain-mut-0.1)
("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-scoped-tls" ,rust-scoped-tls-1)
("rust-st-map" ,rust-st-map-0.1)
("rust-string-cache" ,rust-string-cache-0.8)
("rust-walkdir" ,rust-walkdir-2)
("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4))
#:cargo-development-inputs
(("rust-anyhow" ,rust-anyhow-1)
("rust-env-logger" ,rust-env-logger-0.7)
("rust-num-bigint" ,rust-num-bigint-0.2)
("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
("rust-pretty-env-logger" ,rust-pretty-env-logger-0.3)
("rust-semver" ,rust-semver-0.9)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-serde-regex" ,rust-serde-regex-1)
("rust-sha-1" ,rust-sha-1-0.9)
("rust-smallvec" ,rust-smallvec-1)
("rust-sourcemap" ,rust-sourcemap-6)
("rust-st-map" ,rust-st-map-0.1)
("rust-string-cache" ,rust-string-cache-0.8)
("rust-string-cache-codegen" ,rust-string-cache-codegen-0.5)
("rust-tempfile" ,rust-tempfile-3))
#:tests? #f ;; tests env_query_chrome_71 and project_env fail
("rust-structopt" ,rust-structopt-0.3)
("rust-syn" ,rust-syn-1)
("rust-termcolor" ,rust-termcolor-1)
("rust-tracing" ,rust-tracing-0.1)
("rust-tracing-subscriber" ,rust-tracing-subscriber-0.3)
("rust-typed-arena" ,rust-typed-arena-2)
("rust-walkdir" ,rust-walkdir-2)
("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4)
("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-unicode-xid" ,rust-unicode-xid-0.2)
("rust-url" ,rust-url-2))
#:cargo-development-inputs
(("rust-ansi-term" ,rust-ansi-term-0.12)
("rust-anyhow" ,rust-anyhow-1)
("rust-dashmap" ,rust-dashmap-4)
("rust-env-logger" ,rust-env-logger-0.7)
("rust-hex" ,rust-hex-0.4)
("rust-ntest" ,rust-ntest-0.7)
("rust-path-clean" ,rust-path-clean-0.1)
("rust-pretty-assertions" ,rust-pretty-assertions-0.7)
("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
("rust-reqwest" ,rust-reqwest-0.11)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-sha-1" ,rust-sha-1-0.9)
("rust-sourcemap" ,rust-sourcemap-6)
("rust-tempfile" ,rust-tempfile-3)
("rust-url" ,rust-url-2)
("rust-walkdir" ,rust-walkdir-2))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enable-unstable-features
(lambda _
(setenv "RUSTC_BOOTSTRAP" "1")
(substitute* "ecmascript/jsdoc/src/lib.rs"
(("pub use self" all)
(string-append "#![feature(non_exhaustive)]\n" all)))
(substitute* "ecmascript/parser/src/lib.rs"
(("//! es2019" all)
(string-append "#![feature(non_exhaustive)]
#![feature(mem_take)]
#![feature(proc_macro_hygiene)]
" all)))
(substitute* "ecmascript/transforms/src/lib.rs"
(("#!\\[cfg_attr" all)
(string-append "#![feature(mem_take)]\n" all)))
#t))
(add-after 'enable-unstable-features 'patch-build-failures
(lambda _
(chmod ".cargo/config" 420)
(substitute* "ecmascript/transforms/macros/src/lib.rs"
(("use proc_macro::")
"extern crate proc_macro;\nuse proc_macro::"))
(substitute* "common/src/errors/emitter.rs"
((" #\\[cfg\\(feature = \"tty-emitter\"\\)\\]\n") ""))
#t)))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(install-file "target/release/swc" bin)))))))
(home-page "https://swc.rs/")
(synopsis "Typescript/javascript compiler")
(description "@code{rust-swc} is a typescript/javascript compiler. It
@ -1911,7 +1955,7 @@ background agent taking care of maintaining the necessary state.")
(("rust-arbitrary" ,rust-arbitrary-1)
("rust-derive-arbitrary" ,rust-derive-arbitrary-1)
("rust-expect-test" ,rust-expect-test-1)
("rust-oorandom" ,rust-oorandom-11.1)
("rust-oorandom" ,rust-oorandom-11)
("rust-quote" ,rust-quote-1.0.10)
("rust-rayon" ,rust-rayon-1)
("rust-tracing" ,rust-tracing-0.1)

View File

@ -16,6 +16,7 @@
;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Jim Newsome <jnewsome@torproject.org>
;;; Copyright © 2022 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2023 Fries <fries1234@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -706,6 +707,92 @@ safety and thread safety guarantees.")
(rust-bootstrapped-package
rust-1.67 "1.68.2" "15ifyd5jj8rd979dkakp887hgmhndr68pqaqvd2hqkfdywirqcwk"))
(define rust-1.69
(let ((base-rust
(rust-bootstrapped-package
rust-1.68 "1.69.0"
"03zn7kx5bi5mdfsqfccj4h8gd6abm7spj0kjsfxwlv5dcwc9f1gv")))
(package
(inherit base-rust)
(source
(origin
(inherit (package-source base-rust))
(snippet
'(begin
(for-each delete-file-recursively
'("src/llvm-project"
"vendor/tikv-jemalloc-sys/jemalloc"))
;; Also remove the bundled (mostly Windows) libraries.
(for-each delete-file
(find-files "vendor" "\\.(a|dll|exe|lib)$")))))))))
(define rust-1.70
(let ((base-rust
(rust-bootstrapped-package
rust-1.69 "1.70.0"
"0z6j7d0ni0rmfznv0w3mrf882m11kyh51g2bxkj40l3s1c0axgxj")))
(package
(inherit base-rust)
(source
(origin
(inherit (package-source base-rust))
;; Rust 1.70 adds the rustix library which depends on the vendored
;; fd-lock crate. The fd-lock crate uses Outline assembly which expects
;; a precompiled static library. Enabling the "cc" feature tells the
;; build.rs script to compile the assembly files instead of searching
;; for a precompiled library.
(patches (search-patches "rust-1.70-fix-rustix-build.patch")))))))
(define rust-1.71
(let ((base-rust
(rust-bootstrapped-package
rust-1.70 "1.71.1" "0bj79syjap1kgpg9pc0r4jxc0zkxwm6phjf3digsfafms580vabg")))
(package
(inherit base-rust)
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
`(modify-phases ,phases
(replace 'patch-cargo-checksums
(lambda _
(substitute* (cons* "Cargo.lock"
"src/bootstrap/Cargo.lock"
(find-files "src/tools" "Cargo.lock"))
(("(checksum = )\".*\"" all name)
(string-append name "\"" ,%cargo-reference-hash "\"")))
(generate-all-checksums "vendor"))))))))))
(define rust-1.72
(let ((base-rust
(rust-bootstrapped-package
rust-1.71 "1.72.1" "15gqd1jzhnc16a7gjmav4x1v83jjbzyjh1gvcdfvpkajd9gq8j3z")))
(package
(inherit base-rust)
(source
(origin
(inherit (package-source base-rust))
(snippet
'(begin
(for-each delete-file-recursively
'("src/llvm-project"
"vendor/tikv-jemalloc-sys/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 rustc_driver to explicitly use rustix with libc backend.
(substitute* "compiler/rustc_driver/Cargo.toml"
(("rustix = \"=0.37.11\"")
(string-append "rustix = { version = \"=0.37.11\","
" features = [\"use-libc\"] }"))))))))))
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
(map (lambda (str)
`((,str) (string-append "#[ignore]\n" ,str)))
strs))
;;; Note: Only the latest version of Rust is supported and tested. The
;;; intermediate rusts are built for bootstrapping purposes and should not
;;; be relied upon. This is to ease maintenance and reduce the time
@ -714,10 +801,10 @@ safety and thread safety guarantees.")
;;; 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.68))
(let ((base-rust rust-1.70))
(package
(inherit base-rust)
(outputs (cons "rustfmt" (package-outputs base-rust)))
(outputs (cons* "rust-src" "tools" (package-outputs base-rust)))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:tests? _ #f)
@ -738,52 +825,36 @@ safety and thread safety guarantees.")
(substitute* "src/tools/compiletest/src/runtest.rs"
(("\"-nx\".as_ref\\(\\), ")
""))))
(add-after 'unpack 'patch-cargo-env-shebang
(lambda _
(substitute* '("src/tools/cargo/tests/testsuite/build.rs"
"src/tools/cargo/tests/testsuite/fix.rs")
;; The cargo *_wrapper tests set RUSTC.*WRAPPER environment
;; variable which points to /usr/bin/env. Since it's not a
;; shebang, it needs to be manually patched.
(("/usr/bin/env")
(which "env")))))
(add-after 'unpack 'disable-tests-requiring-git
(lambda _
(substitute* "src/tools/cargo/tests/testsuite/new.rs"
(("fn author_prefers_cargo")
"#[ignore]\nfn author_prefers_cargo")
(("fn finds_author_git")
"#[ignore]\nfn finds_author_git")
(("fn finds_local_author_git")
"#[ignore]\nfn finds_local_author_git"))))
(substitute* "src/tools/cargo/tests/testsuite/git.rs"
,@(make-ignore-test-list
'("fn fetch_downloads_with_git2_first_")))))
(add-after 'unpack 'disable-tests-requiring-mercurial
(lambda _
(substitute*
"src/tools/cargo/tests/testsuite/init/simple_hg_ignore_exists/mod.rs"
(("fn simple_hg_ignore_exists")
"#[ignore]\nfn simple_hg_ignore_exists"))
(substitute*
"src/tools/cargo/tests/testsuite/init/mercurial_autodetect/mod.rs"
(("fn mercurial_autodetect")
"#[ignore]\nfn mercurial_autodetect"))))
(with-directory-excursion "src/tools/cargo/tests/testsuite/init"
(substitute* '("mercurial_autodetect/mod.rs"
"simple_hg_ignore_exists/mod.rs")
,@(make-ignore-test-list
'("fn case"))))))
(add-after 'unpack 'disable-tests-broken-on-aarch64
(lambda _
(with-directory-excursion "src/tools/cargo/tests/testsuite/"
(substitute* "build_script_extra_link_arg.rs"
(("^fn build_script_extra_link_arg_bin_single" m)
(string-append "#[ignore]\n" m)))
,@(make-ignore-test-list
'("fn build_script_extra_link_arg_bin_single")))
(substitute* "build_script.rs"
(("^fn env_test" m)
(string-append "#[ignore]\n" m)))
,@(make-ignore-test-list
'("fn env_test")))
(substitute* "collisions.rs"
(("^fn collision_doc_profile_split" m)
(string-append "#[ignore]\n" m)))
,@(make-ignore-test-list
'("fn collision_doc_profile_split")))
(substitute* "concurrent.rs"
(("^fn no_deadlock_with_git_dependencies" m)
(string-append "#[ignore]\n" m)))
,@(make-ignore-test-list
'("fn no_deadlock_with_git_dependencies")))
(substitute* "features2.rs"
(("^fn dep_with_optional_host_deps_activated" m)
(string-append "#[ignore]\n" m))))))
,@(make-ignore-test-list
'("fn dep_with_optional_host_deps_activated"))))))
(add-after 'unpack 'patch-command-exec-tests
;; This test suite includes some tests that the stdlib's
;; `Command` execution properly handles in situations where
@ -791,16 +862,14 @@ safety and thread safety guarantees.")
;; since we don't have `echo` available at its usual FHS
;; location.
(lambda _
(substitute* (match (find-files "." "^command-exec.rs$")
((file) file))
(substitute* "tests/ui/command/command-exec.rs"
(("Command::new\\(\"echo\"\\)")
(format #f "Command::new(~s)" (which "echo"))))))
(add-after 'unpack 'patch-command-uid-gid-test
(lambda _
(substitute* (match (find-files "." "^command-uid-gid.rs$")
((file) file))
(("/bin/sh")
(which "sh")))))
(substitute* "tests/ui/command/command-uid-gid.rs"
(("/bin/sh") (which "sh"))
(("/bin/ls") (which "ls")))))
(add-after 'unpack 'skip-shebang-tests
;; This test make sure that the parser behaves properly when a
;; source file starts with a shebang. Unfortunately, the
@ -812,26 +881,29 @@ safety and thread safety guarantees.")
(add-after 'unpack 'patch-process-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\"")))
;; The three tests which are known to fail upstream on QEMU
;; emulation on aarch64 and riscv64 also fail on x86_64 in Guix's
;; build system. Skip them on all builds.
(substitute* "library/std/src/sys/unix/process/process_common/tests.rs"
(("target_arch = \"arm\",") "target_os = \"linux\",")))))
(with-directory-excursion "library/std/src"
(substitute* "process/tests.rs"
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\"")))
;; The three tests which are known to fail upstream on QEMU
;; emulation on aarch64 and riscv64 also fail on x86_64 in
;; Guix's build system. Skip them on all builds.
(substitute* "sys/unix/process/process_common/tests.rs"
;; We can't use make-ignore-test-list because we will get
;; build errors due to the double [ignore] block.
(("target_arch = \"arm\"" arm)
(string-append "target_os = \"linux\",\n"
" " arm)))))))
(add-after 'unpack 'disable-interrupt-tests
(lambda _
;; This test hangs in the build container; disable it.
(substitute* (match (find-files "." "^freshness.rs$")
((file) file))
(("fn linking_interrupted")
"#[ignore]\nfn linking_interrupted"))
(substitute* "src/tools/cargo/tests/testsuite/freshness.rs"
,@(make-ignore-test-list
'("fn linking_interrupted")))
;; Likewise for the ctrl_c_kills_everyone test.
(substitute* (match (find-files "." "^death.rs$")
((file) file))
(("fn ctrl_c_kills_everyone")
"#[ignore]\nfn ctrl_c_kills_everyone"))))
(substitute* "src/tools/cargo/tests/testsuite/death.rs"
,@(make-ignore-test-list
'("fn ctrl_c_kills_everyone")))))
(add-after 'unpack 'adjust-rpath-values
;; This adds %output:out to rpath, allowing us to install utilities in
;; different outputs while reusing the shared libraries.
@ -851,18 +923,20 @@ safety and thread safety guarantees.")
(string-append all
"gdb = \"" gdb "/bin/gdb\"\n"))))))
(replace 'build
;; Phase overridden to also build rustfmt.
;; Phase overridden to also build more tools.
(lambda* (#:key parallel-build? #:allow-other-keys)
(let ((job-spec (string-append
"-j" (if parallel-build?
(number->string (parallel-job-count))
"1"))))
(invoke "./x.py" job-spec "build"
"library/std" ;rustc
"library/std" ;rustc
"src/tools/cargo"
"src/tools/clippy"
"src/tools/rust-analyzer"
"src/tools/rustfmt"))))
(replace 'check
;; Phase overridden to also test rustfmt.
;; Phase overridden to also test more tools.
(lambda* (#:key tests? parallel-build? #:allow-other-keys)
(when tests?
(let ((job-spec (string-append
@ -872,9 +946,11 @@ safety and thread safety guarantees.")
(invoke "./x.py" job-spec "test" "-vv"
"library/std"
"src/tools/cargo"
"src/tools/clippy"
"src/tools/rust-analyzer"
"src/tools/rustfmt")))))
(replace 'install
;; Phase overridden to also install rustfmt.
;; Phase overridden to also install more tools.
(lambda* (#:key outputs #:allow-other-keys)
(invoke "./x.py" "install")
(substitute* "config.toml"
@ -883,10 +959,26 @@ safety and thread safety guarantees.")
(format #f "prefix = ~s" (assoc-ref outputs "cargo"))))
(invoke "./x.py" "install" "cargo")
(substitute* "config.toml"
;; Adjust the prefix to the 'rustfmt' output.
;; Adjust the prefix to the 'tools' output.
(("prefix = \"[^\"]*\"")
(format #f "prefix = ~s" (assoc-ref outputs "rustfmt"))))
(invoke "./x.py" "install" "rustfmt")))))))
(format #f "prefix = ~s" (assoc-ref outputs "tools"))))
(invoke "./x.py" "install" "clippy")
(invoke "./x.py" "install" "rust-analyzer")
(invoke "./x.py" "install" "rustfmt")))
(add-after 'install 'install-rust-src
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "rust-src"))
(dest "/lib/rustlib/src/rust"))
(mkdir-p (string-append out dest))
(copy-recursively "library" (string-append out dest "/library"))
(copy-recursively "src" (string-append out dest "/src")))))
(add-after 'install-rust-src 'wrap-rust-analyzer
(lambda* (#:key outputs #:allow-other-keys)
(wrap-program (string-append (assoc-ref outputs "tools")
"/bin/rust-analyzer")
`("RUST_SRC_PATH" ":" =
(,(string-append (assoc-ref outputs "rust-src")
"/lib/rustlib/src/rust/library"))))))))))
;; Add test inputs.
(native-inputs (cons* `("gdb" ,gdb/pinned)
`("procps" ,procps)

View File

@ -224,14 +224,14 @@ cards.")
(define-public newsboat
(package
(name "newsboat")
(version "2.32")
(version "2.33")
(source
(origin
(method url-fetch)
(uri (string-append "https://newsboat.org/releases/" version
"/newsboat-" version ".tar.xz"))
(sha256
(base32 "1rp67fqsnsknlhlq75vgdjg9rggx8j7wbmixvps967m2f92m2qsv"))))
(base32 "1yilrfa8h63x24mcl8a6a17fsaa12imhl337br7g2dw3c1g0v78p"))))
(build-system cargo-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
@ -252,7 +252,6 @@ cards.")
`(#:modules ((guix build cargo-build-system)
(guix build utils)
((guix build gnu-build-system) #:prefix gnu:))
#:vendor-dir "vendor"
#:install-source? #f
#:cargo-inputs
(("rust-backtrace" ,rust-backtrace-0.3)
@ -261,7 +260,7 @@ cards.")
("rust-curl-sys" ,rust-curl-sys-0.4)
("rust-cxx" ,rust-cxx-1)
("rust-cxx-build" ,rust-cxx-build-1)
("rust-fastrand" ,rust-fastrand-1)
("rust-fastrand" ,rust-fastrand-2)
("rust-gettext-rs" ,rust-gettext-rs-0.7)
("rust-lexopt" ,rust-lexopt-0.3)
("rust-libc" ,rust-libc-0.2)

View File

@ -5341,16 +5341,19 @@ result in several formats:
(define-public rav1e
(package
(name "rav1e")
(version "0.6.3")
(version "0.6.6")
(source
(origin
(method url-fetch)
(uri (crate-uri "rav1e" version))
(file-name
(string-append name "-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0if94sfviy5cwljlnsy0f470ixfs090k54g416kcc0qd9w4rhy17"))))
(base32 "1h9fhmamb7mh3cv86y1qja9qb7r6w2jv3p8ydngvsyjy59lq7hqn"))
(modules '((guix build utils)))
(snippet
'(begin (substitute* "Cargo.toml"
(("\"= ?([[:digit:]]+(\\.[[:digit:]]+)*)" _ version)
(string-append "\"^" version)))))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -5368,8 +5371,8 @@ result in several formats:
("rust-cfg-if" ,rust-cfg-if-1)
("rust-clap" ,rust-clap-4)
("rust-clap-complete" ,rust-clap-complete-4)
("rust-clap-lex" ,rust-clap-lex-0.3)
("rust-console" ,rust-console-0.15)
("rust-const-fn-assert" ,rust-const-fn-assert-0.1)
("rust-crossbeam" ,rust-crossbeam-0.8)
("rust-dav1d-sys" ,rust-dav1d-sys-0.7)
("rust-fern" ,rust-fern-0.6)
@ -5403,12 +5406,16 @@ result in several formats:
("rust-toml" ,rust-toml-0.5)
("rust-v-frame" ,rust-v-frame-0.3)
("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
("rust-y4m" ,rust-y4m-0.7))
("rust-winnow" ,rust-winnow-0.4)
("rust-y4m" ,rust-y4m-0.8))
#:cargo-development-inputs
(("rust-assert-cmd" ,rust-assert-cmd-2)
("rust-criterion" ,rust-criterion-0.4)
("rust-interpolate-name" ,rust-interpolate-name-0.2)
("rust-nom" ,rust-nom-7)
("rust-predicates" ,rust-predicates-2)
("rust-predicates-core" ,rust-predicates-core-1)
("rust-predicates-tree" ,rust-predicates-tree-1)
("rust-pretty-assertions" ,rust-pretty-assertions-1)
("rust-quickcheck" ,rust-quickcheck-1)
("rust-quickcheck-macros" ,rust-quickcheck-macros-1)
@ -5424,7 +5431,7 @@ result in several formats:
(string-append "--prefix=" out)))))
(add-after 'install 'delete-static-library
(lambda* (#:key outputs #:allow-other-keys)
;; Delete 80 MiB (!) static library.
;; Delete 93 MiB (!) static library.
(delete-file (string-append (assoc-ref outputs "out")
"/lib/librav1e.a")))))))
(native-inputs

View File

@ -111,6 +111,13 @@ Cargo.toml file present at its root."
(define (rust-package? name)
(string-prefix? "rust-" name))
(define* (check-for-pregenerated-files #:rest _)
"Check the source code for files which are known to generally be bundled
libraries or executables."
(let ((pregenerated-files (find-files "." "\\.(a|dll|dylib|exe|lib)$")))
(when (not (null-list? pregenerated-files))
(error "Possible pre-generated files found:" pregenerated-files))))
(define* (configure #:key inputs
(vendor-dir "guix-vendor")
#:allow-other-keys)
@ -224,10 +231,10 @@ directory = '" port)
(for-each
(lambda (file)
(make-file-writable file)
;; Strip the hash and replace '.tar.gz' with '.crate'.
;; Strip the hash and rust prefix and replace '.tar.gz' with '.crate'.
(rename-file file
(string-append (string-drop-right
(string-drop file 35)
(string-drop file 40)
(string-length ".tar.gz"))
".crate")))
(find-files "." "\\.tar\\.gz$"))))
@ -235,7 +242,32 @@ directory = '" port)
;;error: invalid inclusion of reserved file name Cargo.toml.orig in package source
(when (file-exists? "Cargo.toml.orig")
(delete-file "Cargo.toml.orig"))
(apply invoke `("cargo" "package" ,@cargo-package-flags))))
(apply invoke `("cargo" "package" ,@cargo-package-flags))
;; Then unpack the crate, reset the timestamp of all contained files, and
;; repack them. This is necessary to ensure that they are reproducible.
(with-directory-excursion "target/package"
(for-each
(lambda (crate)
(invoke "tar" "xf" crate)
(delete-file crate)
;; Some of the crate names have underscores, so we need to
;; search the current directory to find the unpacked crate.
(let ((dir
(car (scandir "."
(lambda (file)
(and (not (member file '("." "..")))
(not (string-suffix? ".crate" file))))))))
;; XXX: copied from (gnu build install)
(for-each (lambda (file)
(let ((s (lstat file)))
(unless (eq? (stat:type s) 'symlink)
(utime file 0 0 0 0))))
(find-files dir #:directories? #t))
(apply invoke "tar" "czf" (string-append dir ".crate")
(find-files dir #:directories? #t))
(delete-file-recursively dir)))
(find-files "." "\\.crate$")))))
(format #t "Not installing cargo sources, skipping `cargo package`.~%"))
#t)
@ -285,7 +317,8 @@ directory = '" port)
(replace 'check check)
(replace 'install install)
(add-after 'build 'package package)
(add-after 'unpack 'unpack-rust-crates unpack-rust-crates)
(add-after 'unpack 'check-for-pregenerated-files check-for-pregenerated-files)
(add-after 'check-for-pregenerated-files 'unpack-rust-crates unpack-rust-crates)
(add-after 'patch-generated-file-shebangs 'patch-cargo-checksums patch-cargo-checksums)))
(define* (cargo-build #:key inputs (phases %standard-phases)