gnu: python-safetensors: Remove #:cargo-inputs.

* gnu/packages/machine-learning.scm (python-safetensors)
[inputs]: Use ‘cargo-inputs’.
[arguments]: Remove #:cargo-inputs.
<#:install-source?>: Disable.
<#:modules>: Unset.
<#:phases>: Simplify 'inject-safetensors and move it to...
[source]: ...here as a snippet.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[python-safetensors]: New
entry.

Change-Id: I806770a776e02deba1e4a1dddccd608897121605
This commit is contained in:
Hilton Chain 2025-04-20 10:43:53 +08:00
parent 49d3951dae
commit f6adf70058
No known key found for this signature in database
GPG key ID: ACC66D09CA528292
2 changed files with 74 additions and 27 deletions

View file

@ -1430,31 +1430,15 @@ storing tensors safely, named safetensors. They aim to be safer than their
(unless (member file '("." ".."))
(rename-file (string-append "bindings/python/" file)
file)))
(scandir "bindings/python"))))))
(scandir "bindings/python"))
(substitute* "Cargo.toml"
(("^path = .*") ""))))))
(build-system cargo-build-system)
(arguments
(list
#:modules '((guix build cargo-build-system)
(guix build utils)
(ice-9 regex)
(ice-9 textual-ports)
(srfi srfi-26))
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack-rust-crates 'inject-safetensors
(lambda _
(substitute* "Cargo.toml"
(("\\[dependencies\\]")
(format #f "[dependencies]~%safetensors = ~s"
#$(package-version rust-safetensors))))
(call-with-input-file "Cargo.toml"
(lambda (port)
(let* ((content (get-string-all port))
(top-match (string-match
"\\[dependencies.safetensors"
content)))
(call-with-output-file "Cargo.toml"
(cut display (match:prefix top-match) <>)))))))
(add-before 'check 'install-rust-library
(lambda _
(copy-file "target/release/libsafetensors_rust.so"
@ -1484,14 +1468,9 @@ storing tensors safely, named safetensors. They aim to be safer than their
(copy-file "PKG-INFO" (string-append info "/METADATA"))
(copy-recursively
"py_src/safetensors"
(string-append lib "safetensors"))))))
#:cargo-inputs
`(("rust-pyo3" ,rust-pyo3-0.21)
("rust-memmap2" ,rust-memmap2-0.9)
("rust-safetensors" ,rust-safetensors)
("rust-serde-json" ,rust-serde-json-1))))
(string-append lib "safetensors"))))))))
(inputs
(list rust-safetensors))
(cargo-inputs 'python-safetensors))
(native-inputs
(list python-h5py
python-minimal

View file

@ -7512,6 +7512,10 @@
(crate-source "pyo3" "0.19.2"
"0f1aqx947mzsrk05zdm9w2702lj5k9s97y9w9lxwkp2avk7sd0g6"))
(define rust-pyo3-0.21.2
(crate-source "pyo3" "0.21.2"
"1n39y183jfqbyvimscqr0ysxxa6804pn46ivw048ww91lnb0pq55"))
(define rust-pyo3-0.22.6
(crate-source "pyo3" "0.22.6"
"110qrq9yibfv40zzind9p2i87617lhzs379ix0m2065b2qk0c0pl"))
@ -7529,6 +7533,10 @@
(crate-source "pyo3-build-config" "0.19.2"
"19bb7aqyvr4kmh8b2lnrmcv9251j8yxw7l7xyr77m3s3pk876v07"))
(define rust-pyo3-build-config-0.21.2
(crate-source "pyo3-build-config" "0.21.2"
"0l0vxvnqsbjrpdmysnwaljf4q3zcr1kb526qq23svzgs6mcdz0vq"))
(define rust-pyo3-build-config-0.22.6
(crate-source "pyo3-build-config" "0.22.6"
"0f4w8waba9cyzllq0dpxpw7qmgic05wdf4k20p8nsi7znmsmfjxi"))
@ -7545,6 +7553,10 @@
(crate-source "pyo3-ffi" "0.19.2"
"1nc4696k03ydyiy1f69l3ywknavjzxzag2mscrh2bgkywx1fwg75"))
(define rust-pyo3-ffi-0.21.2
(crate-source "pyo3-ffi" "0.21.2"
"00vlp4gmzn76gz250pz1r3fydd5r41nwl7dd9nmidfb0vi1migh1"))
(define rust-pyo3-ffi-0.22.6
(crate-source "pyo3-ffi" "0.22.6"
"0dl6zj806rkvs67q2mdgjbnzjhzm8glms46nqx8bpp1c9bqbrdcs"))
@ -7561,6 +7573,10 @@
(crate-source "pyo3-macros" "0.19.2"
"1lggr5pnpmdj0cznlhw7ykm1qka3wlymwzfxqql6a4vyb6clrsyz"))
(define rust-pyo3-macros-0.21.2
(crate-source "pyo3-macros" "0.21.2"
"0g65z9yj2iffjrkrkzan9hwhhj7rrchh7lfv64dy30h6zill1cvp"))
(define rust-pyo3-macros-0.22.6
(crate-source "pyo3-macros" "0.22.6"
"0lylczfabgylnfldns6m36vsw98m9sini0wn1gcfda83g64lvlhg"))
@ -7577,6 +7593,10 @@
(crate-source "pyo3-macros-backend" "0.19.2"
"0dlm4pg29hjmlqx15gcy9cmnabvc8ycy60hcvjg8hm62flhw2zcl"))
(define rust-pyo3-macros-backend-0.21.2
(crate-source "pyo3-macros-backend" "0.21.2"
"0p58yp8ajlc8bq56wghw1syrjszmadasasdfpsjy3d9dychhf9h8"))
(define rust-pyo3-macros-backend-0.22.6
(crate-source "pyo3-macros-backend" "0.22.6"
"1gmz3i0sr4fdg7qjvd8ylbkrgbbch9wv955kni903rd17fh13h1n"))
@ -8411,6 +8431,10 @@
(crate-source "safe_arch" "0.7.4"
"08sk47n1kcm5w2di6bpgi2hsw8r2caz2230pwqvbdqfv5pl2vc4n"))
(define rust-safetensors-0.4.5
(crate-source "safetensors" "0.4.5"
"1djm1sz72da28xws6dlcpwgchvckc9m86v73djj30qba4c8hqmj4"))
(define rust-salsa20-0.10.2
(crate-source "salsa20" "0.10.2"
"04w211x17xzny53f83p8f7cj7k2hi8zck282q5aajwqzydd2z8lp"))
@ -23368,6 +23392,50 @@
rust-windows-x86-64-gnu-0.52.6
rust-windows-x86-64-gnullvm-0.52.6
rust-windows-x86-64-msvc-0.52.6))
(python-safetensors =>
(list rust-autocfg-1.4.0
rust-bitflags-2.9.0
rust-cfg-if-1.0.0
rust-heck-0.4.1
rust-indoc-2.0.6
rust-itoa-1.0.15
rust-libc-0.2.172
rust-lock-api-0.4.12
rust-memchr-2.7.4
rust-memmap2-0.9.5
rust-memoffset-0.9.1
rust-once-cell-1.21.3
rust-parking-lot-0.12.3
rust-parking-lot-core-0.9.10
rust-portable-atomic-1.11.0
rust-proc-macro2-1.0.95
rust-pyo3-0.21.2
rust-pyo3-build-config-0.21.2
rust-pyo3-ffi-0.21.2
rust-pyo3-macros-0.21.2
rust-pyo3-macros-backend-0.21.2
rust-quote-1.0.40
rust-redox-syscall-0.5.11
rust-ryu-1.0.20
rust-safetensors-0.4.5
rust-scopeguard-1.2.0
rust-serde-1.0.219
rust-serde-derive-1.0.219
rust-serde-json-1.0.140
rust-smallvec-1.15.0
rust-syn-2.0.100
rust-target-lexicon-0.12.16
rust-unicode-ident-1.0.18
rust-unindent-0.2.4
rust-windows-targets-0.52.6
rust-windows-aarch64-gnullvm-0.52.6
rust-windows-aarch64-msvc-0.52.6
rust-windows-i686-gnu-0.52.6
rust-windows-i686-gnullvm-0.52.6
rust-windows-i686-msvc-0.52.6
rust-windows-x86-64-gnu-0.52.6
rust-windows-x86-64-gnullvm-0.52.6
rust-windows-x86-64-msvc-0.52.6))
(rav1e =>
(list rust-addr2line-0.24.2
rust-adler2-2.0.0