me
/
guix
Archived
1
0
Fork 0

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

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/ruby-nokogiri.patch \
%D%/packages/patches/rustc-1.54.0-src.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.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-missing-files.patch \
%D%/packages/patches/rust-ring-0.16-test-files.patch \ %D%/packages/patches/rust-ring-0.16-test-files.patch \
%D%/packages/patches/i3status-rust-enable-unstable-features.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.13-remove-blas-src.patch \
%D%/packages/patches/rust-ndarray-0.14-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-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-webbrowser-remove-unsupported-os.patch \
%D%/packages/patches/rust-wl-clipboard-rs-newer-wl.patch \ %D%/packages/patches/rust-wl-clipboard-rs-newer-wl.patch \
%D%/packages/patches/rw-igraph-0.10.patch \ %D%/packages/patches/rw-igraph-0.10.patch \

View File

@ -5491,7 +5491,7 @@ interfering with any pam-mount configuration.")))
(define-public wlgreet (define-public wlgreet
(package (package
(name "wlgreet") (name "wlgreet")
(version "0.4") (version "0.4.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -5500,25 +5500,24 @@ interfering with any pam-mount configuration.")))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"00grp63n9nrgqls3knxfv9wjbc7p0jwr7i2vzxy750dz85gi2kzn")))) "1k0jmgh0rjbnb49gkvs0a4d7z9xb6pad8v5w5f7my4s0rfpk7wd9"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
(list #:cargo-inputs (list #:cargo-inputs
`(("rust-chrono" ,rust-chrono-0.4) `(("rust-chrono" ,rust-chrono-0.4)
("rust-getopts" ,rust-getopts-0.2) ("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-lazy-static" ,rust-lazy-static-1)
("rust-memmap2" ,rust-memmap2-0.3) ("rust-memmap2" ,rust-memmap2-0.3)
("rust-nix" ,rust-nix-0.15) ("rust-nix" ,rust-nix-0.25)
("rust-os-pipe" ,rust-os-pipe-0.8) ("rust-os-pipe" ,rust-os-pipe-1)
("rust-rusttype" ,rust-rusttype-0.7) ("rust-rusttype" ,rust-rusttype-0.9)
("rust-serde" ,rust-serde-1) ("rust-serde" ,rust-serde-1)
("rust-smithay-client-toolkit" ("rust-smithay-client-toolkit"
,rust-smithay-client-toolkit-0.15) ,rust-smithay-client-toolkit-0.15)
("rust-toml" ,rust-toml-0.5) ("rust-toml" ,rust-toml-0.5)
("rust-wayland-client" ,rust-wayland-client-0.29) ("rust-wayland-client" ,rust-wayland-client-0.29)
("rust-wayland-protocols" ,rust-wayland-protocols-0.29) ("rust-wayland-protocols" ,rust-wayland-protocols-0.29))
("rust-xml-rs" ,rust-xml-rs-0.8))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'remove-bundled-fonts (add-after 'unpack 'remove-bundled-fonts
@ -5910,34 +5909,54 @@ file or files to several hosts.")
(define-public du-dust (define-public du-dust
(package (package
(name "du-dust") (name "du-dust")
(version "0.8.3") (version "0.8.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "du-dust" version)) (uri (crate-uri "du-dust" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1daif13rdd7wb8m5fbp6zif5b8znqcvmkxrjpp2w2famsp36sahx")))) "1w52xdz1vi6awsvf4lph791zv13phjvz4ypmxr7f6pgxd3crr77c"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs (("rust-ansi-term" ,rust-ansi-term-0.12) `(#:cargo-test-flags
("rust-clap" ,rust-clap-3) (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" ,rust-clap-3)
("rust-clap-complete" ,rust-clap-complete-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-config-file" ,rust-config-file-0.2)
("rust-directories" ,rust-directories-4) ("rust-directories" ,rust-directories-4)
("rust-lscolors" ,rust-lscolors-0.7) ("rust-lscolors" ,rust-lscolors-0.13)
("rust-rayon" ,rust-rayon-1) ("rust-rayon" ,rust-rayon-1)
("rust-regex" ,rust-regex-1) ("rust-regex" ,rust-regex-1)
("rust-serde" ,rust-serde-1) ("rust-serde" ,rust-serde-1)
("rust-stfu8" ,rust-stfu8-0.2) ("rust-stfu8" ,rust-stfu8-0.2)
("rust-sysinfo" ,rust-sysinfo-0.15) ("rust-sysinfo" ,rust-sysinfo-0.27)
("rust-terminal-size" ,rust-terminal-size-0.1) ("rust-terminal-size" ,rust-terminal-size-0.2)
("rust-thousands" ,rust-thousands-0.2) ("rust-thousands" ,rust-thousands-0.2)
("rust-unicode-width" ,rust-unicode-width-0.1) ("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-winapi-util" ,rust-winapi-util-0.1)) ("rust-winapi-util" ,rust-winapi-util-0.1))
#:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-1) #:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-2)
("rust-tempfile" ,rust-tempfile-3)))) ("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") (home-page "https://github.com/bootandy/dust")
(synopsis "Graphical disk usage analyzer") (synopsis "Graphical disk usage analyzer")
(description "This package provides a graphical disk usage analyzer in (description "This package provides a graphical disk usage analyzer in

View File

@ -4695,26 +4695,17 @@ accurately delineate genomic rearrangements throughout the genome.")
(arguments (arguments
(list (list
#:install-source? #false ;fails #:install-source? #false ;fails
#:tests? #false ;"cargo test" ignores build.rs #:tests? #true
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'prepare-test-files (add-after 'unpack 'prepare-test-files
(lambda _ (lambda _
(delete-file "Cargo.lock") (delete-file "Cargo.lock")
(substitute* "liftover-rs/Cargo.toml"
(("anyhow = \"1\"") "anyhow = \"1.0.65\""))
(substitute* "liftover-rs/prepare-test.sh" (substitute* "liftover-rs/prepare-test.sh"
(("/bin/bash") (("/bin/bash")
(string-append #$(this-package-native-input "bash") (string-append #$(this-package-native-input "bash")
"/bin/bash"))) "/bin/bash")))
(invoke "bash" "prepare-test-files.sh"))) (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 (add-before 'install 'chdir
(lambda _ (chdir "transanno")))) (lambda _ (chdir "transanno"))))
#:cargo-inputs #:cargo-inputs
@ -4736,7 +4727,8 @@ accurately delineate genomic rearrangements throughout the genome.")
#:cargo-development-inputs #:cargo-development-inputs
`(("rust-clap" ,rust-clap-2) `(("rust-clap" ,rust-clap-2)
("rust-lazy-static" ,rust-lazy-static-1)))) ("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") (home-page "https://github.com/informationsea/transanno")
(synopsis "LiftOver tool for new genome assemblies") (synopsis "LiftOver tool for new genome assemblies")
(description "This package provides an accurate VCF/GFF3/GTF LiftOver tool (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 (package
(inherit rust-glutin-egl-sys-0.4) (inherit rust-glutin-egl-sys-0.4)
(name "rust-glutin-egl-sys") (name "rust-glutin-egl-sys")
(version "0.1.5") (version "0.1.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "glutin-egl-sys" version)) (uri (crate-uri "glutin-egl-sys" version))
(file-name (file-name (string-append name "-" version ".tar.gz"))
(string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32 "0g81bz7ppvaksvwcw1jg553g8b2shvmnfm9ms6hixwvinj20z438"))))
"04f2ci9kb8q4dv4kviigvgfy54lr4jmbnmjsvi50qj13anjnmfra"))))
(arguments (arguments
`(#:cargo-inputs `(#:cargo-inputs
(("rust-winapi" ,rust-winapi-0.3) (("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 (define-public rust-glutin-emscripten-sys-0.1
(package (package
@ -1742,13 +1740,13 @@ graphics and video games.")
(define-public rust-mp4parse-0.12 (define-public rust-mp4parse-0.12
(package (package
(name "rust-mp4parse") (name "rust-mp4parse")
(version "0.12.0") (version "0.12.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "mp4parse" version)) (uri (crate-uri "mp4parse" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1ppqv60qiyrnbb996gb1sik08c0j2i317llv3rrcwb1cjg3bdlk7")))) (base32 "1scynvlmiy6xv2rrzzpijd812amh6a863na8i0xrcw5d9d08kl8h"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:tests? #f ; Not all files included. `(#:tests? #f ; Not all files included.
@ -2186,21 +2184,22 @@ AVIF format (powers the `cavif` tool).")
(package (package
(inherit rust-ravif-0.8) (inherit rust-ravif-0.8)
(name "rust-ravif") (name "rust-ravif")
(version "0.6.4") (version "0.6.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "ravif" version)) (uri (crate-uri "ravif" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1gyc7w1fz3qdk95cdpkj185dm6lskxfp329xm69waxc565fcz9rx")))) (base32 "0rfm63bv0q2rjyivmzlk4wma8xff6jralh7dr1bjz2aw4knm7cw1"))))
(arguments (arguments
`(#:cargo-inputs `(#:skip-build? #t ; Not packaging older versions of rav1e.
#:cargo-inputs
(("rust-avif-serialize" ,rust-avif-serialize-0.6) (("rust-avif-serialize" ,rust-avif-serialize-0.6)
("rust-imgref" ,rust-imgref-1) ("rust-imgref" ,rust-imgref-1)
("rust-loop9" ,rust-loop9-0.1) ("rust-loop9" ,rust-loop9-0.1)
("rust-num-cpus" ,rust-num-cpus-1) ("rust-num-cpus" ,rust-num-cpus-1)
("rav1e" ,rav1e) ("rav1e" ,rav1e) ; 0.5
("rust-rayon" ,rust-rayon-1) ("rust-rayon" ,rust-rayon-1)
("rust-rgb" ,rust-rgb-0.8)) ("rust-rgb" ,rust-rgb-0.8))
#:cargo-development-inputs #:cargo-development-inputs
@ -2262,6 +2261,25 @@ AVIF format (powers the `cavif` tool).")
(arguments (arguments
`(#:cargo-inputs (("rust-libc" ,rust-libc-0.2)))))) `(#: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 (define-public rust-rgb-0.8
(package (package
(name "rust-rgb") (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.") (description "This package provides X11 library bindings for Rust.")
(license license:expat))) (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 (define-public rust-y4m-0.7
(package (package
(inherit rust-y4m-0.8)
(name "rust-y4m") (name "rust-y4m")
(version "0.7.0") (version "0.7.0")
(source (source
@ -3834,13 +3873,7 @@ the platform-specific getters provided by winit, or another library.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7")))) (base32 "1bhdgb7hgx7j92nm6ij5n8wisp50j8ff66ks14jzwdw2mwhrjam7"))))
(build-system cargo-build-system) (arguments `(#:skip-build? #t))))
(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)))
;;; ;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; Avoid adding new packages to the end of this file. To reduce the chances

View File

@ -168,8 +168,42 @@
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))))) (("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 (define-public rust-cairo-rs-0.15
(package (package
(inherit rust-cairo-rs-0.17)
(name "rust-cairo-rs") (name "rust-cairo-rs")
(version "0.15.12") (version "0.15.12")
(source (source
@ -179,7 +213,6 @@
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1g396fdz8crf74dmmjarcsdbsm8qgxy3a5x9kw6m2d9xn28y6vn7")))) (base32 "1g396fdz8crf74dmmjarcsdbsm8qgxy3a5x9kw6m2d9xn28y6vn7"))))
(build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1) (("rust-bitflags" ,rust-bitflags-1)
@ -189,15 +222,7 @@
("rust-libc" ,rust-libc-0.2) ("rust-libc" ,rust-libc-0.2)
("rust-thiserror" ,rust-thiserror-1)) ("rust-thiserror" ,rust-thiserror-1))
#:cargo-development-inputs #:cargo-development-inputs
(("rust-tempfile" ,rust-tempfile-3)))) (("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.14 (define-public rust-cairo-rs-0.14
(package (package
@ -277,21 +302,21 @@
(("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1) (("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
("rust-tempfile" ,rust-tempfile-3)))))) ("rust-tempfile" ,rust-tempfile-3))))))
(define-public rust-cairo-sys-rs-0.15 (define-public rust-cairo-sys-rs-0.17
(package (package
(name "rust-cairo-sys-rs") (name "rust-cairo-sys-rs")
(version "0.15.1") (version "0.17.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "cairo-sys-rs" version)) (uri (crate-uri "cairo-sys-rs" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1j6k4pps3dv6g0vlpmxc2xyk0s40vj2wpzi55lbwjspmpqlx8m9w")))) (base32 "1ccw4z59dx60khngx79g64c75abfwy7wnq57h2z82j7vn5k0q7b9"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#: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-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6) ("rust-system-deps" ,rust-system-deps-6)
("rust-winapi" ,rust-winapi-0.3) ("rust-winapi" ,rust-winapi-0.3)
@ -305,6 +330,26 @@
(description "This package provides FFI bindings to libcairo.") (description "This package provides FFI bindings to libcairo.")
(license license:expat))) (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 (define-public rust-cairo-sys-rs-0.14
(package (package
(inherit rust-cairo-sys-rs-0.15) (inherit rust-cairo-sys-rs-0.15)
@ -463,8 +508,41 @@
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))))) (("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 (define-public rust-gdk-pixbuf-0.15
(package (package
(inherit rust-gdk-pixbuf-0.17)
(name "rust-gdk-pixbuf") (name "rust-gdk-pixbuf")
(version "0.15.11") (version "0.15.11")
(source (source
@ -474,7 +552,6 @@
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "16k1z21r76m620z61kfmgid1n6s8dnxpa4zlrppcr6dhr2fdsf5d")))) (base32 "16k1z21r76m620z61kfmgid1n6s8dnxpa4zlrppcr6dhr2fdsf5d"))))
(build-system cargo-build-system)
(arguments (arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display` `(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f #:tests? #f
@ -485,15 +562,7 @@
("rust-glib" ,rust-glib-0.15) ("rust-glib" ,rust-glib-0.15)
("rust-libc" ,rust-libc-0.2)) ("rust-libc" ,rust-libc-0.2))
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))) (("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)))
(define-public rust-gdk-pixbuf-0.14 (define-public rust-gdk-pixbuf-0.14
(package (package
@ -570,25 +639,23 @@
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))))) (("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 (package
(name "rust-gdk-pixbuf-sys") (name "rust-gdk-pixbuf-sys")
(version "0.15.10") (version "0.17.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "gdk-pixbuf-sys" version)) (uri (crate-uri "gdk-pixbuf-sys" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "19q2qjrzmmgc7bbs59sk6k0sv3xhpmnk9a2h0cajfr95g19jy2ql")))) (base32 "1jvh91lzanr1a8c5h6ya8i4jzx7ifs8mjxjnmg8dfriw24yfr1cj"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(;#:skip-build? `(#:cargo-inputs
;#t (("rust-gio-sys" ,rust-gio-sys-0.17)
#:cargo-inputs ("rust-glib-sys" ,rust-glib-sys-0.17)
(("rust-gio-sys" ,rust-gio-sys-0.15) ("rust-gobject-sys" ,rust-gobject-sys-0.17)
("rust-glib-sys" ,rust-glib-sys-0.15)
("rust-gobject-sys" ,rust-gobject-sys-0.15)
("rust-libc" ,rust-libc-0.2) ("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6)) ("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs #:cargo-development-inputs
@ -603,6 +670,29 @@
(description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.") (description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.")
(license license:expat))) (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 (define-public rust-gdk-pixbuf-sys-0.14
(package (package
(inherit rust-gdk-pixbuf-sys-0.15) (inherit rust-gdk-pixbuf-sys-0.15)
@ -768,8 +858,50 @@
(("rust-shell-words" ,rust-shell-words-0.1) (("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3)))))) ("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 (define-public rust-gio-0.15
(package (package
(inherit rust-gio-0.17)
(name "rust-gio") (name "rust-gio")
(version "0.15.12") (version "0.15.12")
(source (source
@ -779,7 +911,6 @@
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0fr8qiqjf9yzl8867kgqdsxpkcx2jrns3xwmlf0jfiid668brzb8")))) (base32 "0fr8qiqjf9yzl8867kgqdsxpkcx2jrns3xwmlf0jfiid668brzb8"))))
(build-system cargo-build-system)
(arguments (arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display` `(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f #:tests? #f
@ -797,15 +928,7 @@
#:cargo-development-inputs #:cargo-development-inputs
(("rust-futures-util" ,rust-futures-util-0.3) (("rust-futures-util" ,rust-futures-util-0.3)
("rust-gir-format-check" ,rust-gir-format-check-0.1) ("rust-gir-format-check" ,rust-gir-format-check-0.1)
("rust-serial-test" ,rust-serial-test-0.6)))) ("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)))
(define-public rust-gio-0.14 (define-public rust-gio-0.14
(package (package
@ -1272,14 +1395,14 @@
(package (package
(inherit rust-glib-macros-0.17) (inherit rust-glib-macros-0.17)
(name "rust-glib-macros") (name "rust-glib-macros")
(version "0.15.11") (version "0.15.13")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "glib-macros" version)) (uri (crate-uri "glib-macros" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0r3cr0c79rs91z0sps089nsf8ppnm8agp48qwwqlkc32lqqq39i5")))) (base32 "0jiwvywmkqhih6glipj1c7aylwfr738jid8nmjr4yvx2dygsxihh"))))
(arguments (arguments
`(;; XXX: Circular dependency on rust-glib?? `(;; XXX: Circular dependency on rust-glib??
#:tests? #f #:tests? #f
@ -1813,8 +1936,42 @@
library.") library.")
(license license:expat))) (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 (define-public rust-pango-0.15
(package (package
(inherit rust-pango-0.17)
(name "rust-pango") (name "rust-pango")
(version "0.15.10") (version "0.15.10")
(source (source
@ -1824,7 +1981,6 @@ library.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0ksf85fqkw4y5pf21p84g5xn4fnqn21cbrmx2d9yx6k591ah9r12")))) (base32 "0ksf85fqkw4y5pf21p84g5xn4fnqn21cbrmx2d9yx6k591ah9r12"))))
(build-system cargo-build-system)
(arguments (arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display` `(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f #:tests? #f
@ -1835,15 +1991,7 @@ library.")
("rust-once-cell" ,rust-once-cell-1) ("rust-once-cell" ,rust-once-cell-1)
("rust-pango-sys" ,rust-pango-sys-0.15)) ("rust-pango-sys" ,rust-pango-sys-0.15))
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))) (("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)))
(define-public rust-pango-0.14 (define-public rust-pango-0.14
(package (package
@ -1923,22 +2071,22 @@ library.")
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))))) (("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 (package
(name "rust-pango-sys") (name "rust-pango-sys")
(version "0.15.10") (version "0.17.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "pango-sys" version)) (uri (crate-uri "pango-sys" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "1an3c931kbkr08n9d9d1dapsq3n26zs0xn4ixn11jrp4rn0h186j")))) (base32 "15aindwdxsydzvqcvhc9ysamx5v1jmq8qbs61ncxic2h72grz9ix"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#:cargo-inputs
(("rust-glib-sys" ,rust-glib-sys-0.15) (("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-gobject-sys" ,rust-gobject-sys-0.15) ("rust-gobject-sys" ,rust-gobject-sys-0.17)
("rust-libc" ,rust-libc-0.2) ("rust-libc" ,rust-libc-0.2)
("rust-system-deps" ,rust-system-deps-6)) ("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs #:cargo-development-inputs
@ -1953,6 +2101,28 @@ library.")
(description "This package provides FFI bindings to @code{libpango-1.0}.") (description "This package provides FFI bindings to @code{libpango-1.0}.")
(license license:expat))) (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 (define-public rust-pango-sys-0.14
(package (package
(inherit rust-pango-sys-0.15) (inherit rust-pango-sys-0.15)
@ -2017,8 +2187,43 @@ library.")
(("rust-shell-words" ,rust-shell-words-0.1) (("rust-shell-words" ,rust-shell-words-0.1)
("rust-tempfile" ,rust-tempfile-3)))))) ("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 (define-public rust-pangocairo-0.15
(package (package
(inherit rust-pangocairo-0.17)
(name "rust-pangocairo") (name "rust-pangocairo")
(version "0.15.1") (version "0.15.1")
(source (source
@ -2029,7 +2234,6 @@ library.")
(sha256 (sha256
(base32 (base32
"0rjk0clrjxah4kc0kybn7l7bxa5m5kpxkihxc2i7a6hx3xfa8xkq")))) "0rjk0clrjxah4kc0kybn7l7bxa5m5kpxkihxc2i7a6hx3xfa8xkq"))))
(build-system cargo-build-system)
(arguments (arguments
`(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display` `(;; FIXME: error[E0277]: `Errors` doesn't implement `std::fmt::Display`
#:tests? #f #:tests? #f
@ -2041,37 +2245,26 @@ library.")
("rust-pango" ,rust-pango-0.15) ("rust-pango" ,rust-pango-0.15)
("rust-pangocairo-sys" ,rust-pangocairo-sys-0.15)) ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.15))
#:cargo-development-inputs #:cargo-development-inputs
(("rust-gir-format-check" ,rust-gir-format-check-0.1)))) (("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)))
(define-public rust-pangocairo-sys-0.15 (define-public rust-pangocairo-sys-0.17
(package (package
(name "rust-pangocairo-sys") (name "rust-pangocairo-sys")
(version "0.15.1") (version "0.17.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "pangocairo-sys" version)) (uri (crate-uri "pangocairo-sys" version))
(file-name (file-name (string-append name "-" version ".tar.gz"))
(string-append name "-" version ".tar.gz")) (sha256
(sha256 (base32 "0ymr4aqrdpysz0rh383s4h6hj8nbkyj7n4723f45zzzqkf6x7pwl"))))
(base32
"154llaawy60zh8fkw2yq0r31ynpmqlsr7brryzaq2v4ijijp9kvq"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#:cargo-inputs
(("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.15) (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.17)
("rust-glib-sys" ,rust-glib-sys-0.15) ("rust-glib-sys" ,rust-glib-sys-0.17)
("rust-libc" ,rust-libc-0.2) ("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)) ("rust-system-deps" ,rust-system-deps-6))
#:cargo-development-inputs #:cargo-development-inputs
(("rust-shell-words" ,rust-shell-words-1) (("rust-shell-words" ,rust-shell-words-1)
@ -2083,9 +2276,34 @@ library.")
(list cairo glib pango)) (list cairo glib pango))
(home-page "https://gtk-rs.org/") (home-page "https://gtk-rs.org/")
(synopsis "FFI bindings to libgtk-3") (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))) (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 (define-public rust-soup-sys-0.10
(package (package
(name "rust-soup-sys") (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 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com> ;;; 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 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018, 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2018, 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
@ -258,22 +258,20 @@ OpenBSD tool of the same name.")
(define-public rust-minisign (define-public rust-minisign
(package (package
(name "rust-minisign") (name "rust-minisign")
(version "0.5.20") (version "0.7.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "minisign" version)) (uri (crate-uri "minisign" version))
(file-name (file-name (string-append name "-" version ".tar.gz"))
(string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32 "1lmp83bxdg53c4n35fbwr3rkh6178y75fwsn25hf1kn62f2gbdnj"))))
"0xmcvh2snravghaar8igc6b9r3s1snnmf9qam9l3zyhm4987767y"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#:cargo-inputs
(("rust-getrandom" ,rust-getrandom-0.1) (("rust-getrandom" ,rust-getrandom-0.2)
("rust-rpassword" ,rust-rpassword-4) ("rust-rpassword" ,rust-rpassword-7)
("rust-scrypt" ,rust-scrypt-0.3)))) ("rust-scrypt" ,rust-scrypt-0.11))))
(home-page "https://github.com/jedisct1/rust-minisign") (home-page "https://github.com/jedisct1/rust-minisign")
(synopsis "Crate to sign files and verify signatures") (synopsis "Crate to sign files and verify signatures")
(description (description
@ -1554,36 +1552,37 @@ SHA-3, and BLAKE2.")
(define-public rust-blake3-1 (define-public rust-blake3-1
(package (package
(name "rust-blake3") (name "rust-blake3")
(version "1.0.0") (version "1.5.0")
;; The crate does not include the reference_impl directory.
(source (source
(origin (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (crate-uri "blake3" version))
(url "https://github.com/BLAKE3-team/BLAKE3") (file-name (string-append name "-" version ".tar.gz"))
(commit version)))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "11ysh12zcqq6xkjxh5cbrmnwzalprm3z552i5ff7wm5za9hz0c82"))))
"09xi7rjyi5hgxyfpias485x5argwqygvfl9sggiw221qjdfxpbdn"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
(list (list
#:tests? #f ; use of undeclared crate or module `reference_impl`
#:cargo-inputs #:cargo-inputs
`(("rust-arrayref" ,rust-arrayref-0.3) `(("rust-arrayref" ,rust-arrayref-0.3)
("rust-arrayvec" ,rust-arrayvec-0.7) ("rust-arrayvec" ,rust-arrayvec-0.7)
("rust-cc" ,rust-cc-1) ("rust-cc" ,rust-cc-1)
("rust-cfg-if" ,rust-cfg-if-1) ("rust-cfg-if" ,rust-cfg-if-1)
("rust-constant-time-eq" ,rust-constant-time-eq-0.1) ("rust-constant-time-eq" ,rust-constant-time-eq-0.3)
("rust-crypto-mac" ,rust-crypto-mac-0.11) ("rust-digest" ,rust-digest-0.10)
("rust-digest" ,rust-digest-0.9) ("rust-memmap2" ,rust-memmap2-0.7)
("rust-rayon" ,rust-rayon-1)) ("rust-rayon" ,rust-rayon-1)
("rust-serde" ,rust-serde-1)
("rust-zeroize" ,rust-zeroize-1))
#:cargo-development-inputs #:cargo-development-inputs
`(("rust-cc" ,rust-cc-1) `(("rust-hex" ,rust-hex-0.4)
("rust-hex" ,rust-hex-0.4) ("rust-hmac" ,rust-hmac-0.12)
("rust-page-size" ,rust-page-size-0.4) ("rust-page-size" ,rust-page-size-0.6)
("rust-rand" ,rust-rand-0.8) ("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") (home-page "https://github.com/BLAKE3-team/BLAKE3")
(synopsis "BLAKE3 hash function Rust implementation") (synopsis "BLAKE3 hash function Rust implementation")
(description "This crate provides the official Rust implementation of the (description "This crate provides the official Rust implementation of the
@ -1596,16 +1595,14 @@ SHA-3, and BLAKE2.")
(define-public b3sum (define-public b3sum
(package (package
(name "b3sum") (name "b3sum")
;; Version 1 requires Rust >= 1.51. (version "1.5.0")
;; <https://github.com/BLAKE3-team/BLAKE3/releases/tag/1.0.0>
(version "0.3.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (crate-uri "b3sum" version)) (uri (crate-uri "b3sum" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "0h3fz16q5lk6mg7r8kjkjrq5hd4injngn5m7pswjbf2pyzjmg4b4")))) (base32 "05k0vn7gpbvjr925vjc5yzvhiyrmkw9pqmch5fr4ir7s8wiaq2fm"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
`(;; Install the source so that Cargo.toml is installed, because that is `(;; 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))))) (install-file "README.md" doc)))))
#:cargo-inputs #:cargo-inputs
(("rust-anyhow" ,rust-anyhow-1) (("rust-anyhow" ,rust-anyhow-1)
("rust-blake3" ,rust-blake3-0.3) ("rust-blake3" ,rust-blake3-1)
("rust-clap" ,rust-clap-2) ("rust-clap" ,rust-clap-4)
("rust-hex" ,rust-hex-0.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-rayon" ,rust-rayon-1)
("rust-wild" ,rust-wild-2)) ("rust-wild" ,rust-wild-2))
#:cargo-development-inputs #:cargo-development-inputs

View File

@ -3500,7 +3500,7 @@ for dealing with different structured file formats.")
(define-public librsvg (define-public librsvg
(package (package
(name "librsvg") (name "librsvg")
(version "2.54.5") (version "2.56.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/librsvg/" (uri (string-append "mirror://gnome/sources/librsvg/"
@ -3508,10 +3508,7 @@ for dealing with different structured file formats.")
"librsvg-" version ".tar.xz")) "librsvg-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0vmfgihhf35bxn7giqiskgsflr0zxp6xyy9aynhiyk9j8l7ij0sg")) "1xa0cxdvc6vis5ssh1i0vi2rwgcx3bll6k5i135qyd2ra77zv1za"))))
(modules '((guix build utils)))
(snippet
'(begin (delete-file-recursively "vendor")))))
(build-system cargo-build-system) (build-system cargo-build-system)
(outputs '("out" "doc" "debug")) (outputs '("out" "doc" "debug"))
(arguments (arguments
@ -3522,55 +3519,61 @@ for dealing with different structured file formats.")
(guix build utils) (guix build utils)
((guix build gnu-build-system) #:prefix gnu:)) ((guix build gnu-build-system) #:prefix gnu:))
#:cargo-inputs #:cargo-inputs
`(("rust-byteorder" ,rust-byteorder-1) `(("rust-anyhow" ,rust-anyhow-1)
("rust-cairo-rs" ,rust-cairo-rs-0.15) ("rust-byteorder" ,rust-byteorder-1)
("rust-cairo-rs" ,rust-cairo-rs-0.17)
("rust-cast" ,rust-cast-0.3) ("rust-cast" ,rust-cast-0.3)
("rust-chrono" ,rust-chrono-0.4) ("rust-chrono" ,rust-chrono-0.4)
("rust-clap" ,rust-clap-2) ("rust-clap" ,rust-clap-4)
("rust-cssparser" ,rust-cssparser-0.28) ("rust-clap-complete" ,rust-clap-complete-4)
("rust-data-url" ,rust-data-url-0.1) ("rust-cssparser" ,rust-cssparser-0.29)
("rust-encoding" ,rust-encoding-0.2) ("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-float-cmp" ,rust-float-cmp-0.9)
("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.15) ("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.17)
("rust-gio" ,rust-gio-0.15) ("rust-gio" ,rust-gio-0.17)
("rust-glib" ,rust-glib-0.15) ("rust-glib" ,rust-glib-0.17)
("rust-itertools" ,rust-itertools-0.10) ("rust-itertools" ,rust-itertools-0.10)
("rust-language-tags" ,rust-language-tags-0.3) ("rust-language-tags" ,rust-language-tags-0.3)
("rust-libc" ,rust-libc-0.2) ("rust-libc" ,rust-libc-0.2)
("rust-locale-config" ,rust-locale-config-0.3) ("rust-locale-config" ,rust-locale-config-0.3)
("rust-markup5ever" ,rust-markup5ever-0.10) ("rust-markup5ever" ,rust-markup5ever-0.11)
("rust-nalgebra" ,rust-nalgebra-0.29) ("rust-nalgebra" ,rust-nalgebra-0.32)
("rust-num-traits" ,rust-num-traits-0.2) ("rust-num-traits" ,rust-num-traits-0.2)
("rust-once-cell" ,rust-once-cell-1) ("rust-once-cell" ,rust-once-cell-1)
("rust-pango" ,rust-pango-0.15) ("rust-pango" ,rust-pango-0.17)
("rust-pangocairo" ,rust-pangocairo-0.15) ("rust-pangocairo" ,rust-pangocairo-0.17)
("rust-rayon" ,rust-rayon-1) ("rust-rayon" ,rust-rayon-1)
("rust-rctree" ,rust-rctree-0.4) ("rust-rctree" ,rust-rctree-0.5)
("rust-rgb" ,rust-rgb-0.8)
("rust-regex" ,rust-regex-1) ("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-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-tinyvec" ,rust-tinyvec-1)
("rust-url" ,rust-url-2) ("rust-url" ,rust-url-2)
("rust-xml5ever" ,rust-xml5ever-0.16)) ("rust-xml5ever" ,rust-xml5ever-0.17))
#:cargo-development-inputs #:cargo-development-inputs
`(("rust-anyhow" ,rust-anyhow-1) `(("rust-anyhow" ,rust-anyhow-1)
("rust-assert-cmd" ,rust-assert-cmd-2) ("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-chrono" ,rust-chrono-0.4)
("rust-criterion" ,rust-criterion-0.3) ("rust-criterion" ,rust-criterion-0.4)
("rust-glib" ,rust-glib-0.15) ("rust-glib" ,rust-glib-0.17)
("rust-libc" ,rust-libc-0.2) ("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-matches" ,rust-matches-0.1)
("rust-pango" ,rust-pango-0.17)
("rust-pangocairo" ,rust-pangocairo-0.17)
("rust-png" ,rust-png-0.17) ("rust-png" ,rust-png-0.17)
("rust-predicates" ,rust-predicates-2) ("rust-predicates" ,rust-predicates-2)
("rust-proptest" ,rust-proptest-1) ("rust-proptest" ,rust-proptest-1)
("rust-serde" ,rust-serde-1) ("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1) ("rust-serde-json" ,rust-serde-json-1)
("rust-tempfile" ,rust-tempfile-3) ("rust-tempfile" ,rust-tempfile-3)
("rust-test-generator" ,rust-test-generator-0.3) ("rust-yeslogic-fontconfig-sys" ,rust-yeslogic-fontconfig-sys-4))
("rust-yeslogic-fontconfig-sys" ,rust-yeslogic-fontconfig-sys-2))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-gdk-pixbuf-thumbnailer (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 ;; Increase reftest tolerance a bit to account for different
;; harfbuzz, pango, etc. ;; harfbuzz, pango, etc.
(setenv "RSVG_TEST_TOLERANCE" "20") (setenv "RSVG_TEST_TOLERANCE" "20")
;; These two tests even fail after loosening the tolerance. ;; This test fails even after loosening the tolerance.
(for-each delete-file (substitute* "tests/src/reference.rs"
'("tests/fixtures/reftests/bugs/730-font-scaling.svg" ((".*svg1_1_text_align_03_b_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"))))
(add-before 'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(substitute* "gdk-pixbuf-loader/Makefile.in" (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 (define-public python-cryptography-vectors
(package (package
(name "python-cryptography-vectors") (name "python-cryptography-vectors")
(version "40.0.2") (version "41.0.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "cryptography_vectors" version)) (uri (pypi-uri "cryptography_vectors" version))
(sha256 (sha256
(base32 (base32
"16hcprw919f2rl3jipsy2996bnsz170inway3lishqi30xwqf6x8")))) "17m1azxfc3w0390jp9mkx1v0k3xfv4v1lrgch4hvbbm77s0z42j4"))))
(build-system python-build-system) (build-system pyproject-build-system)
(arguments (list #:tests? #f)) ; No tests included.
(home-page "https://github.com/pyca/cryptography") (home-page "https://github.com/pyca/cryptography")
(synopsis "Test vectors for the cryptography package") (synopsis "Test vectors for the cryptography package")
(description (description
@ -505,14 +506,14 @@ is used by the Requests library to verify HTTPS requests.")
(define-public python-cryptography (define-public python-cryptography
(package (package
(name "python-cryptography") (name "python-cryptography")
(version "40.0.2") (version "41.0.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "cryptography" version)) (uri (pypi-uri "cryptography" version))
(sha256 (sha256
(base32 (base32
"16awbsm13vdksm98dybwvmpy2y1l636bq7g0s93scksrp0r0sg63")))) "06pm952pr6f31pzwh5fb68zryqyss0hg9cbggxm15z15844w7svz"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
@ -567,6 +568,9 @@ ciphers, message digests and key derivation functions.")
(guix build utils) (guix build utils)
(srfi srfi-1) (srfi srfi-1)
(ice-9 match)) (ice-9 match))
#:install-source? #f
;; As seen in noxfile.py
#:cargo-test-flags ''("--release" "--no-default-features")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'chdir (add-after 'unpack 'chdir
@ -584,26 +588,21 @@ ciphers, message digests and key derivation functions.")
(apply (assoc-ref %standard-phases 'configure) (apply (assoc-ref %standard-phases 'configure)
(append args (append args
(list #:inputs (alist-delete "source" inputs)))))) (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 (add-after 'install 'install-shared-library
(lambda _ (lambda _
(install-file "target/release/libcryptography_rust.so" (install-file "target/release/libcryptography_rust.so"
(string-append #$output "/lib"))))) (string-append #$output "/lib")))))
#:cargo-inputs #:cargo-inputs
`(("rust-asn1-0.13" ,rust-asn1-0.13) `(("rust-asn1" ,rust-asn1-0.15)
("rust-cc" ,rust-cc-1) ("rust-cc" ,rust-cc-1)
("rust-chrono-0.4" ,rust-chrono-0.4) ("rust-foreign-types" ,rust-foreign-types-0.3)
("rust-foreign-types-shared-0.1" ,rust-foreign-types-shared-0.1) ("rust-foreign-types-shared" ,rust-foreign-types-shared-0.1)
("rust-once-cell-1" ,rust-once-cell-1) ("rust-once-cell" ,rust-once-cell-1)
("rust-openssl-0.10" ,rust-openssl-0.10) ("rust-openssl" ,rust-openssl-0.10)
("rust-openssl-sys-0.9" ,rust-openssl-sys-0.9) ("rust-openssl-sys" ,rust-openssl-sys-0.9)
("rust-ouroboros-0.15" ,rust-ouroboros-0.15) ("rust-ouroboros" ,rust-ouroboros-0.15)
("rust-pem-1" ,rust-pem-1) ("rust-pem" ,rust-pem-1)
("rust-pyo3-0.15" ,rust-pyo3-0.15)))) ("rust-pyo3" ,rust-pyo3-0.18))))
(native-inputs (list pkg-config python python-cffi)) (native-inputs (list pkg-config python python-cffi))
;; XXX: Adding rust-openssl-sys-0.9 is needed because #:cargo-inputs ;; XXX: Adding rust-openssl-sys-0.9 is needed because #:cargo-inputs
;; doesn't honor propagated-inputs. ;; doesn't honor propagated-inputs.
@ -614,14 +613,14 @@ ciphers, message digests and key derivation functions.")
(define-public python-pyopenssl (define-public python-pyopenssl
(package (package
(name "python-pyopenssl") (name "python-pyopenssl")
(version "23.1.1") (version "23.2.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pyOpenSSL" version)) (uri (pypi-uri "pyOpenSSL" version))
(sha256 (sha256
(base32 (base32
"1dxhip610zw1j2bz35g1w1h7vh374g0bnzn4nsqj65n6pswrh544")))) "1b4bkcpzhmablf592g21rq3l8apbhklp6wcwlvgfflm4algr6vr7"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list

View File

@ -246,6 +246,7 @@
#:use-module (gnu packages rdf) #:use-module (gnu packages rdf)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages regex) #:use-module (gnu packages regex)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages scanner) #:use-module (gnu packages scanner)
#:use-module (gnu packages sdl) #:use-module (gnu packages sdl)
#:use-module (gnu packages search) #:use-module (gnu packages search)
@ -3056,13 +3057,13 @@ help formatter.")
(define-public python-orjson (define-public python-orjson
(package (package
(name "python-orjson") (name "python-orjson")
(version "3.8.8") (version "3.9.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "orjson" version)) (uri (pypi-uri "orjson" version))
(sha256 (sha256
(base32 (base32
"1nn617pzn8smjkf7j593ybq16qfnj53bla52qjwzzrms4fjxg5n0")))) "0hh1j7akxgx1nvsnwx1p4f4h4pkgr7v9aqr99l2pwbwfyyc93qw5"))))
(build-system cargo-build-system) (build-system cargo-build-system)
(arguments (arguments
(list (list
@ -3073,47 +3074,10 @@ help formatter.")
(guix build utils)) (guix build utils))
#:phases #:phases
#~(modify-phases %standard-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 (add-after 'prepare-python-module 'build-python-module
(assoc-ref py:%standard-phases 'build)) (assoc-ref py:%standard-phases 'build))
(add-after 'build-python-module 'install-python-module (add-after 'build-python-module 'install-python-module
(assoc-ref py:%standard-phases 'install)) (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"))))))
#:cargo-inputs #:cargo-inputs
`(("rust-ahash" ,rust-ahash-0.8) `(("rust-ahash" ,rust-ahash-0.8)
("rust-arrayvec" ,rust-arrayvec-0.7) ("rust-arrayvec" ,rust-arrayvec-0.7)
@ -3126,17 +3090,20 @@ exclude =
("rust-itoa" ,rust-itoa-1) ("rust-itoa" ,rust-itoa-1)
("rust-itoap" ,rust-itoap-1) ("rust-itoap" ,rust-itoap-1)
("rust-once-cell" ,rust-once-cell-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-ryu" ,rust-ryu-1)
("rust-serde" ,rust-serde-1) ("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1) ("rust-serde-json" ,rust-serde-json-1)
("rust-simdutf8" ,rust-simdutf8-0.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)) #:install-source? #false))
(inputs
(list maturin))
(native-inputs (native-inputs
(list python-wrapper (list python-wrapper))
python-pypa-build
python-wheel))
(home-page "https://github.com/ijl/orjson") (home-page "https://github.com/ijl/orjson")
(synopsis "Python JSON library supporting dataclasses, datetimes, and numpy") (synopsis "Python JSON library supporting dataclasses, datetimes, and numpy")
(description "Orjson is a fast, correct JSON library for Python. It (description "Orjson is a fast, correct JSON library for Python. It

View File

@ -1084,7 +1084,7 @@ touchscreen devices.")
(define-public rust-swc (define-public rust-swc
(package (package
(name "rust-swc") (name "rust-swc")
(version "1.2.24") (version "1.2.124")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1094,81 +1094,125 @@ touchscreen devices.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (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) (build-system cargo-build-system)
(arguments (arguments
`(#:cargo-inputs `(#:install-source? #f
(("rust-ansi-term" ,rust-ansi-term-0.12) #:cargo-build-flags
("rust-base64" ,rust-base64-0.12) '("--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-console-error-panic-hook" ,rust-console-error-panic-hook-0.1)
("rust-copyless" ,rust-copyless-0.1)
("rust-crc" ,rust-crc-1) ("rust-crc" ,rust-crc-1)
("rust-darling" ,rust-darling-0.10) ("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-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-is-macro" ,rust-is-macro-0.1)
("rust-jemallocator" ,rust-jemallocator-0.3) ("rust-lexical" ,rust-lexical-5)
("rust-log" ,rust-log-0.4) ("rust-libloading" ,rust-libloading-0.7)
("rust-mimalloc" ,rust-mimalloc-0.1) ("rust-lru" ,rust-lru-0.7)
("rust-napi" ,rust-napi-0.5) ("rust-mimalloc-rust" ,rust-mimalloc-rust-0.1)
("rust-napi-build" ,rust-napi-build-0.2) ("rust-napi" ,rust-napi-2)
("rust-napi-derive" ,rust-napi-derive-0.5) ("rust-napi-build" ,rust-napi-build-1)
("rust-napi-derive" ,rust-napi-derive-2)
("rust-nom" ,rust-nom-5) ("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-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" ,rust-parking-lot-0.7)
("rust-parking-lot-core" ,rust-parking-lot-core-0.8)
("rust-path-clean" ,rust-path-clean-0.1) ("rust-path-clean" ,rust-path-clean-0.1)
("rust-paw" ,rust-paw-1)
("rust-petgraph" ,rust-petgraph-0.5) ("rust-petgraph" ,rust-petgraph-0.5)
("rust-phf" ,rust-phf-0.8) ("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-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-rayon" ,rust-rayon-1)
("rust-radix-fmt" ,rust-radix-fmt-1) ("rust-radix-fmt" ,rust-radix-fmt-1)
("rust-regex" ,rust-regex-1) ("rust-regex" ,rust-regex-1)
("rust-relative-path" ,rust-relative-path-1) ("rust-relative-path" ,rust-relative-path-1)
("rust-retain-mut" ,rust-retain-mut-0.1) ("rust-retain-mut" ,rust-retain-mut-0.1)
("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-scoped-tls" ,rust-scoped-tls-1) ("rust-scoped-tls" ,rust-scoped-tls-1)
("rust-st-map" ,rust-st-map-0.1) ("rust-semver" ,rust-semver-0.9)
("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-serde" ,rust-serde-1) ("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-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-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-string-cache-codegen" ,rust-string-cache-codegen-0.5)
("rust-tempfile" ,rust-tempfile-3)) ("rust-structopt" ,rust-structopt-0.3)
#:tests? #f ;; tests env_query_chrome_71 and project_env fail ("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 #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'enable-unstable-features (replace 'install
(lambda _ (lambda* (#:key outputs #:allow-other-keys)
(setenv "RUSTC_BOOTSTRAP" "1") (let* ((out (assoc-ref outputs "out"))
(substitute* "ecmascript/jsdoc/src/lib.rs" (bin (string-append out "/bin")))
(("pub use self" all) (install-file "target/release/swc" bin)))))))
(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)))))
(home-page "https://swc.rs/") (home-page "https://swc.rs/")
(synopsis "Typescript/javascript compiler") (synopsis "Typescript/javascript compiler")
(description "@code{rust-swc} is a typescript/javascript compiler. It (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-arbitrary" ,rust-arbitrary-1)
("rust-derive-arbitrary" ,rust-derive-arbitrary-1) ("rust-derive-arbitrary" ,rust-derive-arbitrary-1)
("rust-expect-test" ,rust-expect-test-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-quote" ,rust-quote-1.0.10)
("rust-rayon" ,rust-rayon-1) ("rust-rayon" ,rust-rayon-1)
("rust-tracing" ,rust-tracing-0.1) ("rust-tracing" ,rust-tracing-0.1)

View File

@ -16,6 +16,7 @@
;;; Copyright © 2022 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Jim Newsome <jnewsome@torproject.org> ;;; Copyright © 2022 Jim Newsome <jnewsome@torproject.org>
;;; Copyright © 2022 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2022 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2023 Fries <fries1234@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -706,6 +707,92 @@ safety and thread safety guarantees.")
(rust-bootstrapped-package (rust-bootstrapped-package
rust-1.67 "1.68.2" "15ifyd5jj8rd979dkakp887hgmhndr68pqaqvd2hqkfdywirqcwk")) 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 ;;; Note: Only the latest version of Rust is supported and tested. The
;;; intermediate rusts are built for bootstrapping purposes and should not ;;; intermediate rusts are built for bootstrapping purposes and should not
;;; be relied upon. This is to ease maintenance and reduce the time ;;; 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 ;;; Here we take the latest included Rust, make it public, and re-enable tests
;;; and extra components such as rustfmt. ;;; and extra components such as rustfmt.
(define-public rust (define-public rust
(let ((base-rust rust-1.68)) (let ((base-rust rust-1.70))
(package (package
(inherit base-rust) (inherit base-rust)
(outputs (cons "rustfmt" (package-outputs base-rust))) (outputs (cons* "rust-src" "tools" (package-outputs base-rust)))
(arguments (arguments
(substitute-keyword-arguments (package-arguments base-rust) (substitute-keyword-arguments (package-arguments base-rust)
((#:tests? _ #f) ((#:tests? _ #f)
@ -738,52 +825,36 @@ safety and thread safety guarantees.")
(substitute* "src/tools/compiletest/src/runtest.rs" (substitute* "src/tools/compiletest/src/runtest.rs"
(("\"-nx\".as_ref\\(\\), ") (("\"-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 (add-after 'unpack 'disable-tests-requiring-git
(lambda _ (lambda _
(substitute* "src/tools/cargo/tests/testsuite/new.rs" (substitute* "src/tools/cargo/tests/testsuite/git.rs"
(("fn author_prefers_cargo") ,@(make-ignore-test-list
"#[ignore]\nfn author_prefers_cargo") '("fn fetch_downloads_with_git2_first_")))))
(("fn finds_author_git")
"#[ignore]\nfn finds_author_git")
(("fn finds_local_author_git")
"#[ignore]\nfn finds_local_author_git"))))
(add-after 'unpack 'disable-tests-requiring-mercurial (add-after 'unpack 'disable-tests-requiring-mercurial
(lambda _ (lambda _
(substitute* (with-directory-excursion "src/tools/cargo/tests/testsuite/init"
"src/tools/cargo/tests/testsuite/init/simple_hg_ignore_exists/mod.rs" (substitute* '("mercurial_autodetect/mod.rs"
(("fn simple_hg_ignore_exists") "simple_hg_ignore_exists/mod.rs")
"#[ignore]\nfn simple_hg_ignore_exists")) ,@(make-ignore-test-list
(substitute* '("fn case"))))))
"src/tools/cargo/tests/testsuite/init/mercurial_autodetect/mod.rs"
(("fn mercurial_autodetect")
"#[ignore]\nfn mercurial_autodetect"))))
(add-after 'unpack 'disable-tests-broken-on-aarch64 (add-after 'unpack 'disable-tests-broken-on-aarch64
(lambda _ (lambda _
(with-directory-excursion "src/tools/cargo/tests/testsuite/" (with-directory-excursion "src/tools/cargo/tests/testsuite/"
(substitute* "build_script_extra_link_arg.rs" (substitute* "build_script_extra_link_arg.rs"
(("^fn build_script_extra_link_arg_bin_single" m) ,@(make-ignore-test-list
(string-append "#[ignore]\n" m))) '("fn build_script_extra_link_arg_bin_single")))
(substitute* "build_script.rs" (substitute* "build_script.rs"
(("^fn env_test" m) ,@(make-ignore-test-list
(string-append "#[ignore]\n" m))) '("fn env_test")))
(substitute* "collisions.rs" (substitute* "collisions.rs"
(("^fn collision_doc_profile_split" m) ,@(make-ignore-test-list
(string-append "#[ignore]\n" m))) '("fn collision_doc_profile_split")))
(substitute* "concurrent.rs" (substitute* "concurrent.rs"
(("^fn no_deadlock_with_git_dependencies" m) ,@(make-ignore-test-list
(string-append "#[ignore]\n" m))) '("fn no_deadlock_with_git_dependencies")))
(substitute* "features2.rs" (substitute* "features2.rs"
(("^fn dep_with_optional_host_deps_activated" m) ,@(make-ignore-test-list
(string-append "#[ignore]\n" m)))))) '("fn dep_with_optional_host_deps_activated"))))))
(add-after 'unpack 'patch-command-exec-tests (add-after 'unpack 'patch-command-exec-tests
;; This test suite includes some tests that the stdlib's ;; This test suite includes some tests that the stdlib's
;; `Command` execution properly handles in situations where ;; `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 ;; since we don't have `echo` available at its usual FHS
;; location. ;; location.
(lambda _ (lambda _
(substitute* (match (find-files "." "^command-exec.rs$") (substitute* "tests/ui/command/command-exec.rs"
((file) file))
(("Command::new\\(\"echo\"\\)") (("Command::new\\(\"echo\"\\)")
(format #f "Command::new(~s)" (which "echo")))))) (format #f "Command::new(~s)" (which "echo"))))))
(add-after 'unpack 'patch-command-uid-gid-test (add-after 'unpack 'patch-command-uid-gid-test
(lambda _ (lambda _
(substitute* (match (find-files "." "^command-uid-gid.rs$") (substitute* "tests/ui/command/command-uid-gid.rs"
((file) file)) (("/bin/sh") (which "sh"))
(("/bin/sh") (("/bin/ls") (which "ls")))))
(which "sh")))))
(add-after 'unpack 'skip-shebang-tests (add-after 'unpack 'skip-shebang-tests
;; This test make sure that the parser behaves properly when a ;; This test make sure that the parser behaves properly when a
;; source file starts with a shebang. Unfortunately, the ;; source file starts with a shebang. Unfortunately, the
@ -812,26 +881,29 @@ safety and thread safety guarantees.")
(add-after 'unpack 'patch-process-tests (add-after 'unpack 'patch-process-tests
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((bash (assoc-ref inputs "bash"))) (let ((bash (assoc-ref inputs "bash")))
(substitute* "library/std/src/process/tests.rs" (with-directory-excursion "library/std/src"
(("\"/bin/sh\"") (substitute* "process/tests.rs"
(string-append "\"" bash "/bin/sh\""))) (("\"/bin/sh\"")
;; The three tests which are known to fail upstream on QEMU (string-append "\"" bash "/bin/sh\"")))
;; emulation on aarch64 and riscv64 also fail on x86_64 in Guix's ;; The three tests which are known to fail upstream on QEMU
;; build system. Skip them on all builds. ;; emulation on aarch64 and riscv64 also fail on x86_64 in
(substitute* "library/std/src/sys/unix/process/process_common/tests.rs" ;; Guix's build system. Skip them on all builds.
(("target_arch = \"arm\",") "target_os = \"linux\","))))) (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 (add-after 'unpack 'disable-interrupt-tests
(lambda _ (lambda _
;; This test hangs in the build container; disable it. ;; This test hangs in the build container; disable it.
(substitute* (match (find-files "." "^freshness.rs$") (substitute* "src/tools/cargo/tests/testsuite/freshness.rs"
((file) file)) ,@(make-ignore-test-list
(("fn linking_interrupted") '("fn linking_interrupted")))
"#[ignore]\nfn linking_interrupted"))
;; Likewise for the ctrl_c_kills_everyone test. ;; Likewise for the ctrl_c_kills_everyone test.
(substitute* (match (find-files "." "^death.rs$") (substitute* "src/tools/cargo/tests/testsuite/death.rs"
((file) file)) ,@(make-ignore-test-list
(("fn ctrl_c_kills_everyone") '("fn ctrl_c_kills_everyone")))))
"#[ignore]\nfn ctrl_c_kills_everyone"))))
(add-after 'unpack 'adjust-rpath-values (add-after 'unpack 'adjust-rpath-values
;; This adds %output:out to rpath, allowing us to install utilities in ;; This adds %output:out to rpath, allowing us to install utilities in
;; different outputs while reusing the shared libraries. ;; different outputs while reusing the shared libraries.
@ -851,18 +923,20 @@ safety and thread safety guarantees.")
(string-append all (string-append all
"gdb = \"" gdb "/bin/gdb\"\n")))))) "gdb = \"" gdb "/bin/gdb\"\n"))))))
(replace 'build (replace 'build
;; Phase overridden to also build rustfmt. ;; Phase overridden to also build more tools.
(lambda* (#:key parallel-build? #:allow-other-keys) (lambda* (#:key parallel-build? #:allow-other-keys)
(let ((job-spec (string-append (let ((job-spec (string-append
"-j" (if parallel-build? "-j" (if parallel-build?
(number->string (parallel-job-count)) (number->string (parallel-job-count))
"1")))) "1"))))
(invoke "./x.py" job-spec "build" (invoke "./x.py" job-spec "build"
"library/std" ;rustc "library/std" ;rustc
"src/tools/cargo" "src/tools/cargo"
"src/tools/clippy"
"src/tools/rust-analyzer"
"src/tools/rustfmt")))) "src/tools/rustfmt"))))
(replace 'check (replace 'check
;; Phase overridden to also test rustfmt. ;; Phase overridden to also test more tools.
(lambda* (#:key tests? parallel-build? #:allow-other-keys) (lambda* (#:key tests? parallel-build? #:allow-other-keys)
(when tests? (when tests?
(let ((job-spec (string-append (let ((job-spec (string-append
@ -872,9 +946,11 @@ safety and thread safety guarantees.")
(invoke "./x.py" job-spec "test" "-vv" (invoke "./x.py" job-spec "test" "-vv"
"library/std" "library/std"
"src/tools/cargo" "src/tools/cargo"
"src/tools/clippy"
"src/tools/rust-analyzer"
"src/tools/rustfmt"))))) "src/tools/rustfmt")))))
(replace 'install (replace 'install
;; Phase overridden to also install rustfmt. ;; Phase overridden to also install more tools.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(invoke "./x.py" "install") (invoke "./x.py" "install")
(substitute* "config.toml" (substitute* "config.toml"
@ -883,10 +959,26 @@ safety and thread safety guarantees.")
(format #f "prefix = ~s" (assoc-ref outputs "cargo")))) (format #f "prefix = ~s" (assoc-ref outputs "cargo"))))
(invoke "./x.py" "install" "cargo") (invoke "./x.py" "install" "cargo")
(substitute* "config.toml" (substitute* "config.toml"
;; Adjust the prefix to the 'rustfmt' output. ;; Adjust the prefix to the 'tools' output.
(("prefix = \"[^\"]*\"") (("prefix = \"[^\"]*\"")
(format #f "prefix = ~s" (assoc-ref outputs "rustfmt")))) (format #f "prefix = ~s" (assoc-ref outputs "tools"))))
(invoke "./x.py" "install" "rustfmt"))))))) (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. ;; Add test inputs.
(native-inputs (cons* `("gdb" ,gdb/pinned) (native-inputs (cons* `("gdb" ,gdb/pinned)
`("procps" ,procps) `("procps" ,procps)

View File

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

View File

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

View File

@ -111,6 +111,13 @@ Cargo.toml file present at its root."
(define (rust-package? name) (define (rust-package? name)
(string-prefix? "rust-" 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 (define* (configure #:key inputs
(vendor-dir "guix-vendor") (vendor-dir "guix-vendor")
#:allow-other-keys) #:allow-other-keys)
@ -224,10 +231,10 @@ directory = '" port)
(for-each (for-each
(lambda (file) (lambda (file)
(make-file-writable 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 (rename-file file
(string-append (string-drop-right (string-append (string-drop-right
(string-drop file 35) (string-drop file 40)
(string-length ".tar.gz")) (string-length ".tar.gz"))
".crate"))) ".crate")))
(find-files "." "\\.tar\\.gz$")))) (find-files "." "\\.tar\\.gz$"))))
@ -235,7 +242,32 @@ directory = '" port)
;;error: invalid inclusion of reserved file name Cargo.toml.orig in package source ;;error: invalid inclusion of reserved file name Cargo.toml.orig in package source
(when (file-exists? "Cargo.toml.orig") (when (file-exists? "Cargo.toml.orig")
(delete-file "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`.~%")) (format #t "Not installing cargo sources, skipping `cargo package`.~%"))
#t) #t)
@ -285,7 +317,8 @@ directory = '" port)
(replace 'check check) (replace 'check check)
(replace 'install install) (replace 'install install)
(add-after 'build 'package package) (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))) (add-after 'patch-generated-file-shebangs 'patch-cargo-checksums patch-cargo-checksums)))
(define* (cargo-build #:key inputs (phases %standard-phases) (define* (cargo-build #:key inputs (phases %standard-phases)