From 7f31805374e8d7cda08238e183753f545ce82b70 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Thu, 4 Jun 2026 22:10:19 +0800 Subject: [PATCH 01/45] SPECS: Add asciinema. Signed-off-by: misaka00251 --- SPECS/asciinema/Cargo.toml | 69 +++++++++++++++++++++ SPECS/asciinema/asciinema.spec | 110 +++++++++++++++++++++++++++++++++ 2 files changed, 179 insertions(+) create mode 100644 SPECS/asciinema/Cargo.toml create mode 100644 SPECS/asciinema/asciinema.spec diff --git a/SPECS/asciinema/Cargo.toml b/SPECS/asciinema/Cargo.toml new file mode 100644 index 0000000000..867233c74b --- /dev/null +++ b/SPECS/asciinema/Cargo.toml @@ -0,0 +1,69 @@ +[package] +name = "asciinema" +version = "3.2.1" +edition = "2021" +authors = ["Marcin Kulik "] +homepage = "https://asciinema.org" +repository = "https://github.com/asciinema/asciinema" +description = "Terminal session recorder, streamer, and player" +license = "GPL-3.0-or-later" + +# MSRV +rust-version = "1.82.0" + +[dependencies] +anyhow = "1.0" +nix = { version = "0.30", features = ["fs", "term", "process", "signal", "poll"] } +serde = { version = "1.0", features = ["derive"] } +serde_json = "1.0" +clap = { version = "4.0", features = ["derive", "wrap_help"] } +signal-hook = { version = "0.3", default-features = false } +uuid = { version = "1.6", features = ["v4"] } +reqwest = { version = "0.12", default-features = false, features = ["blocking", "rustls-tls-native-roots", "multipart", "gzip", "json", "stream"] } +rustyline = { version = "17.0", default-features = false } +config = { version = "0.15", default-features = false, features = ["toml"] } +which = "8.0" +tempfile = "3.23" +avt = "0.18" +axum = { version = "0.8", default-features = false, features = ["http1", "ws"] } +tokio = { version = "1.40", features = ["rt-multi-thread", "net", "sync", "time", "fs", "process"] } +futures-util = { version = "0.3", default-features = false, features = ["sink"] } +tokio-stream = { version = "0.1", default-features = false, features = ["sync", "time"] } +rust-embed = "8.8" +tower-http = { version = "0.6", features = ["trace", "compression-gzip"] } +tracing = { version = "0.1", default-features = false } +tracing-subscriber = { version = "0.3.20", default-features = false, features = ["fmt", "env-filter"] } +rgb = { version = "0.8", default-features = false } +url = "2.5" +tokio-tungstenite = { version = "0.28", default-features = false, features = ["connect", "rustls-tls-native-roots"] } +rustls = { version = "0.23", default-features = false, features = ["ring"] } +tokio-util = { version = "0.7", features = ["rt"] } +rand = "0.9" +async-trait = "0.1" +signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"] } +bytes = "1.11" +zstd = "0.13.3" + +[build-dependencies] +clap = { version = "4.0", features = ["derive", "wrap_help"] } +clap_complete = "4.0" +clap_mangen = "0.2" +url = "2.5" + +[profile.release] +strip = true +lto = true +codegen-units = 1 + +[profile.integration-test] +inherits = "release" +opt-level = 0 +lto = false +codegen-units = 256 +strip = "none" +incremental = true +debug-assertions = false +overflow-checks = false + +[features] +macos-tty = [] diff --git a/SPECS/asciinema/asciinema.spec b/SPECS/asciinema/asciinema.spec new file mode 100644 index 0000000000..8b30dcf8fd --- /dev/null +++ b/SPECS/asciinema/asciinema.spec @@ -0,0 +1,110 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: misaka00251 +# +# SPDX-License-Identifier: MulanPSL-2.0 + +Name: asciinema +Version: 3.2.1 +Release: %autorelease +Summary: Terminal session recorder, streamer and player +License: GPL-3.0-or-later +URL: https://asciinema.org +VCS: git:https://github.com/asciinema/asciinema.git +#!RemoteAsset: sha256:e7e49a09c664a76afc5bc25ca09871eb090bfbe68a2ddbc72750d3cb215d36f1 +Source: https://github.com/asciinema/asciinema/archive/refs/tags/v%{version}.tar.gz +BuildSystem: rust + +BuildRequires: rust-rpm-macros +BuildRequires: rust +BuildRequires: cargo +BuildRequires: crate(anyhow-1/default) >= 1.0.0 +BuildRequires: crate(async-trait-0.1/default) >= 0.1.0 +BuildRequires: crate(avt-0.18/default) >= 0.18.0 +BuildRequires: crate(axum-0.8/http1) >= 0.8.0 +BuildRequires: crate(axum-0.8/ws) >= 0.8.0 +BuildRequires: crate(bytes-1/default) >= 1.11.0 +BuildRequires: crate(clap-4) >= 4.0.0 +BuildRequires: crate(clap-4/default) >= 4.0.0 +BuildRequires: crate(clap-4/derive) >= 4.0.0 +BuildRequires: crate(clap-4/wrap-help) >= 4.0.0 +BuildRequires: crate(clap-complete-4) >= 4.0.0 +BuildRequires: crate(clap-mangen-0.2) >= 0.2.0 +BuildRequires: crate(config-0.15/toml) >= 0.15.0 +BuildRequires: crate(futures-util-0.3/sink) >= 0.3.0 +BuildRequires: crate(nix-0.30/default) >= 0.30.0 +BuildRequires: crate(nix-0.30/fs) >= 0.30.0 +BuildRequires: crate(nix-0.30/poll) >= 0.30.0 +BuildRequires: crate(nix-0.30/process) >= 0.30.0 +BuildRequires: crate(nix-0.30/signal) >= 0.30.0 +BuildRequires: crate(nix-0.30/term) >= 0.30.0 +BuildRequires: crate(rand-0.9/default) >= 0.9.0 +BuildRequires: crate(reqwest-0.12/blocking) >= 0.12.0 +BuildRequires: crate(reqwest-0.12/gzip) >= 0.12.0 +BuildRequires: crate(reqwest-0.12/json) >= 0.12.0 +BuildRequires: crate(reqwest-0.12/multipart) >= 0.12.0 +BuildRequires: crate(reqwest-0.12/rustls-tls-native-roots) >= 0.12.0 +BuildRequires: crate(reqwest-0.12/stream) >= 0.12.0 +BuildRequires: crate(rgb-0.8) >= 0.8.0 +BuildRequires: crate(rust-embed-8/default) >= 8.8.0 +BuildRequires: crate(rustls-0.23/ring) >= 0.23.0 +BuildRequires: crate(rustyline-17) >= 17.0.0 +BuildRequires: crate(serde-1/default) >= 1.0.0 +BuildRequires: crate(serde-1/derive) >= 1.0.0 +BuildRequires: crate(serde-json-1/default) >= 1.0.0 +BuildRequires: crate(signal-hook-0.3) >= 0.3.0 +BuildRequires: crate(signal-hook-tokio-0.3/default) >= 0.3.0 +BuildRequires: crate(signal-hook-tokio-0.3/futures-v0-3) >= 0.3.0 +BuildRequires: crate(tempfile-3/default) >= 3.23.0 +BuildRequires: crate(tokio-1/default) >= 1.40.0 +BuildRequires: crate(tokio-1/fs) >= 1.40.0 +BuildRequires: crate(tokio-1/net) >= 1.40.0 +BuildRequires: crate(tokio-1/process) >= 1.40.0 +BuildRequires: crate(tokio-1/rt-multi-thread) >= 1.40.0 +BuildRequires: crate(tokio-1/sync) >= 1.40.0 +BuildRequires: crate(tokio-1/time) >= 1.40.0 +BuildRequires: crate(tokio-stream-0.1/sync) >= 0.1.0 +BuildRequires: crate(tokio-stream-0.1/time) >= 0.1.0 +BuildRequires: crate(tokio-tungstenite-0.28/connect) >= 0.28.0 +BuildRequires: crate(tokio-tungstenite-0.28/rustls-tls-native-roots) >= 0.28.0 +BuildRequires: crate(tokio-util-0.7/default) >= 0.7.0 +BuildRequires: crate(tokio-util-0.7/rt) >= 0.7.0 +BuildRequires: crate(tower-http-0.6/compression-gzip) >= 0.6.0 +BuildRequires: crate(tower-http-0.6/default) >= 0.6.0 +BuildRequires: crate(tower-http-0.6/trace) >= 0.6.0 +BuildRequires: crate(tracing-0.1) >= 0.1.0 +BuildRequires: crate(tracing-subscriber-0.3/env-filter) >= 0.3.20 +BuildRequires: crate(tracing-subscriber-0.3/fmt) >= 0.3.20 +BuildRequires: crate(url-2) >= 2.5.0 +BuildRequires: crate(url-2/default) >= 2.5.0 +BuildRequires: crate(uuid-1/default) >= 1.6.0 +BuildRequires: crate(uuid-1/v4) >= 1.6.0 +BuildRequires: crate(which-8/default) >= 8.0.0 +BuildRequires: bash-completion +# For Tests +BuildRequires: pkgconfig(python3) + +Recommends: agg + +%description +asciinema (aka asciinema CLI or asciinema recorder) is a command-line tool +for recording and live streaming terminal sessions. + +%build -p +# Generate man pages and shell completion files +export ASCIINEMA_GEN_DIR=assets + +%install +install -Dpm 0755 target/release/asciinema %{buildroot}%{_bindir}/asciinema +install -Dpm 0644 assets/man/*.1 -t %{buildroot}/%{_mandir}/man1/ +install -Dpm 0644 assets/completion/asciinema.bash -t %{buildroot}/%{bash_completions_dir} + +%files +%doc README.md CHANGELOG.md +%license LICENSE +%{_bindir}/asciinema +%{_mandir}/man1/asciinema*.1* +%{bash_completions_dir}/asciinema.bash + +%changelog +%autochangelog From 549417f0ffde81fd9b275c6506faa104232e95b0 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:23:33 +0800 Subject: [PATCH 02/45] SPECS: Add rust-avt-0.18. Signed-off-by: misaka00251 --- SPECS/rust-avt-0.18/Cargo.toml | 75 ++++++++++++++++++++++++++ SPECS/rust-avt-0.18/rust-avt-0.18.spec | 36 +++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 SPECS/rust-avt-0.18/Cargo.toml create mode 100644 SPECS/rust-avt-0.18/rust-avt-0.18.spec diff --git a/SPECS/rust-avt-0.18/Cargo.toml b/SPECS/rust-avt-0.18/Cargo.toml new file mode 100644 index 0000000000..671992da28 --- /dev/null +++ b/SPECS/rust-avt-0.18/Cargo.toml @@ -0,0 +1,75 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.82.0" +name = "avt" +version = "0.18.0" +authors = ["Marcin Kulik "] +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "asciinema virtual terminal" +readme = "README.md" +license = "Apache-2.0" +repository = "https://github.com/asciinema/avt" + +[lib] +name = "avt" +path = "src/lib.rs" + +[[example]] +name = "text" +path = "examples/text.rs" + +[[test]] +name = "integration_test" +path = "tests/integration_test.rs" + +[[bench]] +name = "charset" +path = "benches/charset.rs" +harness = false + +[[bench]] +name = "parser" +path = "benches/parser.rs" +harness = false + +[[bench]] +name = "vt" +path = "benches/vt.rs" +harness = false + +[dependencies.rgb] +version = "0.8.33" + +[dependencies.unicode-width] +version = "0.1.13" + +[dev-dependencies.criterion] +version = "0.3" + +[dev-dependencies.pretty_assertions] +version = "1.0" + +[dev-dependencies.proptest] +version = "=1.9.0" + +[dev-dependencies.rand] +version = "0.7" + +[dev-dependencies.tempfile] +version = "=3.24.0" diff --git a/SPECS/rust-avt-0.18/rust-avt-0.18.spec b/SPECS/rust-avt-0.18/rust-avt-0.18.spec new file mode 100644 index 0000000000..b41f93a488 --- /dev/null +++ b/SPECS/rust-avt-0.18/rust-avt-0.18.spec @@ -0,0 +1,36 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name avt +%global full_version 0.18.0 +%global pkgname avt-0.18 + +Name: rust-avt-0.18 +Version: 0.18.0 +Release: %autorelease +Summary: Rust crate "avt" +License: Apache-2.0 +URL: https://github.com/asciinema/avt +#!RemoteAsset: sha256:7179c44abe2ac36173d4713bfed24136e5988f005c7fe2c4fcde621d3d4d29b9 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(rgb-0.8/default) >= 0.8.33 +Requires: crate(unicode-width-0.1/default) >= 0.1.13 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "avt" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From cd440a8b65190bd766f614ba6aadd7afa6e5c019 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:37:09 +0800 Subject: [PATCH 03/45] SPECS: Add agg. Signed-off-by: misaka00251 --- SPECS/agg/Cargo.toml | 48 +++++++++++++++++++++++++++++++++ SPECS/agg/agg.spec | 63 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+) create mode 100644 SPECS/agg/Cargo.toml create mode 100644 SPECS/agg/agg.spec diff --git a/SPECS/agg/Cargo.toml b/SPECS/agg/Cargo.toml new file mode 100644 index 0000000000..9df7ad7493 --- /dev/null +++ b/SPECS/agg/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "agg" +version = "1.9.0" +authors = ["Marcin Kulik "] +edition = "2021" +homepage = "https://docs.asciinema.org/manual/agg/" +repository = "https://github.com/asciinema/agg" +description = "asciinema gif generator" +license = "GPL-3.0-or-later" + +include = [ + "/Cargo.lock", + "/Cargo.toml", + "/LICENSE", + "/README.md", + "/fonts/NotoEmoji-OFL.txt", + "/fonts/NotoEmoji-Regular.ttf", + "/fonts/SymbolsNerdFont-LICENSE.txt", + "/fonts/SymbolsNerdFont-Regular.ttf", + "/src/**", +] + +# MSRV +rust-version = "1.85.0" + +[dependencies] +anyhow = "1.0.102" +avt = "0.18.0" +clap = { version = "4.6.1", features = ["derive"] } +env_logger = "0.11.10" +fontdb = "0.23.0" +gifski = "1.34.0" +imgref = "1.12.1" +log = "0.4.29" +reqwest = { version = "0.13.3", default-features = false, features = ["blocking", "rustls", "gzip"] } +resvg = { version = "0.45.1", features = ["text"] } +rgb = "0.8.53" +serde = { version = "1.0.228", features = ["derive"] } +serde_json = "1.0.149" +shellexpand = "3.1.2" +swash = "0.2.7" +tiny-skia = "0.11.4" +ttf-parser = "0.25.1" +usvg = "0.45.1" + +[profile.release] +strip = true +codegen-units = 1 diff --git a/SPECS/agg/agg.spec b/SPECS/agg/agg.spec new file mode 100644 index 0000000000..b52976095b --- /dev/null +++ b/SPECS/agg/agg.spec @@ -0,0 +1,63 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# SPDX-FileContributor: misaka00251 +# +# SPDX-License-Identifier: MulanPSL-2.0 + +Name: agg +Version: 1.9.0 +Release: %autorelease +Summary: asciinema gif generator +License: GPL-3.0-only +URL: https://docs.asciinema.org/manual/agg/ +VCS: git:https://github.com/asciinema/agg.git +#!RemoteAsset: sha256:8170119502ad2c1c697e5cd4d050d87c425ecee726c5f6c3c2140703bcb31bb3 +Source: https://github.com/asciinema/agg/archive/refs/tags/v%{version}.tar.gz +BuildSystem: rust + +BuildRequires: rust-rpm-macros +BuildRequires: rust +BuildRequires: cargo +BuildRequires: crate(anyhow-1/default) >= 1.0.102 +BuildRequires: crate(avt-0.18/default) >= 0.18.0 +BuildRequires: crate(clap-4/default) >= 4.6.1 +BuildRequires: crate(clap-4/derive) >= 4.6.1 +BuildRequires: crate(env-logger-0.11/default) >= 0.11.10 +BuildRequires: crate(fontdb-0.23/default) >= 0.23.0 +BuildRequires: crate(gifski-1/default) >= 1.34.0 +BuildRequires: crate(imgref-1/default) >= 1.12.1 +BuildRequires: crate(jni-sys-0.4/default) >= 0.4.1 +BuildRequires: crate(log-0.4/default) >= 0.4.29 +BuildRequires: crate(reqwest-0.13/blocking) >= 0.13.3 +BuildRequires: crate(reqwest-0.13/gzip) >= 0.13.3 +BuildRequires: crate(reqwest-0.13/rustls) >= 0.13.3 +BuildRequires: crate(resvg-0.45/default) >= 0.45.1 +BuildRequires: crate(resvg-0.45/text) >= 0.45.1 +BuildRequires: crate(rgb-0.8/default) >= 0.8.53 +BuildRequires: crate(serde-1/default) >= 1.0.228 +BuildRequires: crate(serde-1/derive) >= 1.0.228 +BuildRequires: crate(serde-json-1/default) >= 1.0.149 +BuildRequires: crate(shellexpand-3/default) >= 3.1.2 +BuildRequires: crate(swash-0.2/default) >= 0.2.7 +BuildRequires: crate(tiny-skia-0.11/default) >= 0.11.4 +BuildRequires: crate(ttf-parser-0.25/default) >= 0.25.1 +BuildRequires: crate(usvg-0.45/default) >= 0.45.1 + +%description +agg is a command-line tool for generating animated GIF files from +terminal session recordings. + +It supports conversion from asciicast files produced by asciinema +recorder. It uses Kornel Lesiński's excellent gifski library to +produce optimized, high quality GIF output with accurate frame timing. + +%install +install -Dpm 0755 target/release/agg %{buildroot}%{_bindir}/agg + +%files +%doc README.md +%license LICENSE +%{_bindir}/agg + +%changelog +%autochangelog From 344de9b19e743cfc4b41cdc006936035c252e1b0 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:41:31 +0800 Subject: [PATCH 04/45] SPECS: Add rust-fontdb-0.23. Signed-off-by: misaka00251 --- SPECS/rust-fontdb-0.23/Cargo.toml | 83 ++++++++++++++ SPECS/rust-fontdb-0.23/rust-fontdb-0.23.spec | 109 +++++++++++++++++++ 2 files changed, 192 insertions(+) create mode 100644 SPECS/rust-fontdb-0.23/Cargo.toml create mode 100644 SPECS/rust-fontdb-0.23/rust-fontdb-0.23.spec diff --git a/SPECS/rust-fontdb-0.23/Cargo.toml b/SPECS/rust-fontdb-0.23/Cargo.toml new file mode 100644 index 0000000000..cc58787699 --- /dev/null +++ b/SPECS/rust-fontdb-0.23/Cargo.toml @@ -0,0 +1,83 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +rust-version = "1.60" +name = "fontdb" +version = "0.23.0" +authors = ["Yevhenii Reizner "] +description = "A simple, in-memory font database with CSS-like queries." +documentation = "https://docs.rs/fontdb/" +readme = "README.md" +keywords = [ + "font", + "db", + "css", + "truetype", + "ttf", +] +categories = ["text-processing"] +license = "MIT" +repository = "https://github.com/RazrFalcon/fontdb" + +[dependencies.log] +version = "0.4" + +[dependencies.memmap2] +version = "0.9" +optional = true + +[dependencies.slotmap] +version = "1.0.6" +default-features = false + +[dependencies.tinyvec] +version = "1.6.0" +features = ["alloc"] + +[dependencies.ttf-parser] +version = "0.25" +features = [ + "opentype-layout", + "apple-layout", + "variable-fonts", + "glyph-names", + "no-std-float", +] +default-features = false + +[dev-dependencies.env_logger] +version = "0.10" +default-features = false + +[features] +default = [ + "std", + "fs", + "memmap", + "fontconfig", +] +fontconfig = [ + "fontconfig-parser", + "fs", +] +fs = ["std"] +memmap = [ + "fs", + "memmap2", +] +std = ["ttf-parser/std"] + +[target."cfg(all(unix, not(any(target_os = \"macos\", target_os = \"android\"))))".dependencies.fontconfig-parser] +version = "0.5" +optional = true +default-features = false diff --git a/SPECS/rust-fontdb-0.23/rust-fontdb-0.23.spec b/SPECS/rust-fontdb-0.23/rust-fontdb-0.23.spec new file mode 100644 index 0000000000..3ea5fde9f7 --- /dev/null +++ b/SPECS/rust-fontdb-0.23/rust-fontdb-0.23.spec @@ -0,0 +1,109 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name fontdb +%global full_version 0.23.0 +%global pkgname fontdb-0.23 + +Name: rust-fontdb-0.23 +Version: 0.23.0 +Release: %autorelease +Summary: Rust crate "fontdb" +License: MIT +URL: https://github.com/RazrFalcon/fontdb +#!RemoteAsset: sha256:457e789b3d1202543297a350643cf459f836cade38934e7a4cf6a39e7cde2905 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(log-0.4/default) >= 0.4.0 +Requires: crate(slotmap-1) >= 1.0.6 +Requires: crate(tinyvec-1/alloc) >= 1.6.0 +Requires: crate(tinyvec-1/default) >= 1.6.0 +Requires: crate(ttf-parser-0.25/apple-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/glyph-names) >= 0.25.0 +Requires: crate(ttf-parser-0.25/no-std-float) >= 0.25.0 +Requires: crate(ttf-parser-0.25/opentype-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/variable-fonts) >= 0.25.0 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "fontdb" + +%package -n %{name}+default +Summary: Simple, in-memory font database with CSS-like queries - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/fontconfig) = %{version} +Requires: crate(%{pkgname}/fs) = %{version} +Requires: crate(%{pkgname}/memmap) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+fontconfig +Summary: Simple, in-memory font database with CSS-like queries - feature "fontconfig" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/fontconfig-parser) = %{version} +Requires: crate(%{pkgname}/fs) = %{version} +Provides: crate(%{pkgname}/fontconfig) = %{version} + +%description -n %{name}+fontconfig +This metapackage enables feature "fontconfig" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+fontconfig-parser +Summary: Simple, in-memory font database with CSS-like queries - feature "fontconfig-parser" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(fontconfig-parser-0.5) >= 0.5.0 +Provides: crate(%{pkgname}/fontconfig-parser) = %{version} + +%description -n %{name}+fontconfig-parser +This metapackage enables feature "fontconfig-parser" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+memmap +Summary: Simple, in-memory font database with CSS-like queries - feature "memmap" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/fs) = %{version} +Requires: crate(%{pkgname}/memmap2) = %{version} +Provides: crate(%{pkgname}/memmap) = %{version} + +%description -n %{name}+memmap +This metapackage enables feature "memmap" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+memmap2 +Summary: Simple, in-memory font database with CSS-like queries - feature "memmap2" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(memmap2-0.9/default) >= 0.9.0 +Provides: crate(%{pkgname}/memmap2) = %{version} + +%description -n %{name}+memmap2 +This metapackage enables feature "memmap2" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Simple, in-memory font database with CSS-like queries - feature "std" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(ttf-parser-0.25/apple-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/glyph-names) >= 0.25.0 +Requires: crate(ttf-parser-0.25/no-std-float) >= 0.25.0 +Requires: crate(ttf-parser-0.25/opentype-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/std) >= 0.25.0 +Requires: crate(ttf-parser-0.25/variable-fonts) >= 0.25.0 +Provides: crate(%{pkgname}/fs) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust fontdb crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "fs" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From df695ba15c8c8948af511e1c4d7d7b5421101887 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:42:56 +0800 Subject: [PATCH 05/45] SPECS: Add rust-gifski-1. Signed-off-by: misaka00251 --- SPECS/rust-gifski-1/Cargo.toml | 213 +++++++++++++++++++++++++ SPECS/rust-gifski-1/rust-gifski-1.spec | 141 ++++++++++++++++ 2 files changed, 354 insertions(+) create mode 100644 SPECS/rust-gifski-1/Cargo.toml create mode 100644 SPECS/rust-gifski-1/rust-gifski-1.spec diff --git a/SPECS/rust-gifski-1/Cargo.toml b/SPECS/rust-gifski-1/Cargo.toml new file mode 100644 index 0000000000..58ac608699 --- /dev/null +++ b/SPECS/rust-gifski-1/Cargo.toml @@ -0,0 +1,213 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.74" +name = "gifski" +version = "1.34.0" +authors = ["Kornel "] +build = false +include = [ + "/README.md", + "/Cargo.toml", + "/src/**/*.rs", + "/src/bin/*.rs", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "pngquant-based GIF maker for nice-looking animGIFs" +homepage = "https://gif.ski" +documentation = "https://docs.rs/gifski" +readme = "README.md" +keywords = [ + "gif", + "encoder", + "converter", + "maker", + "gifquant", +] +categories = [ + "multimedia::video", + "command-line-utilities", +] +license = "AGPL-3.0-or-later" +repository = "https://github.com/ImageOptim/gifski" + +[package.metadata.docs.rs] +targets = ["x86_64-unknown-linux-gnu"] + +[package.metadata.capi.header] +subdirectory = false +generation = false + +[[package.metadata.capi.install.include.asset]] +from = "gifski.h" + +[features] +binary = [ + "dep:clap", + "dep:yuv", + "dep:y4m", + "png", + "pbr", + "dep:wild", + "dep:natord", + "dep:dunce", +] +capi = [] +default = [ + "gifsicle", + "binary", +] +gifsicle = [] +png = ["dep:lodepng"] +video = ["dep:ffmpeg"] +video-prebuilt-static = [ + "video", + "ffmpeg/static", +] +video-static = [ + "video", + "ffmpeg/build", +] + +[lib] +name = "gifski" +crate-type = [ + "lib", + "staticlib", + "cdylib", +] +path = "src/lib.rs" + +[[bin]] +name = "gifski" +path = "src/bin/gifski.rs" +doctest = false +required-features = ["binary"] + +[dependencies.clap] +version = "4.5.32" +features = ["cargo"] +optional = true + +[dependencies.crossbeam-channel] +version = "0.5.14" + +[dependencies.crossbeam-utils] +version = "0.8.21" + +[dependencies.dunce] +version = "1.0.5" +optional = true + +[dependencies.ffmpeg] +version = "6" +features = [ + "codec", + "format", + "filter", + "software-resampling", + "software-scaling", +] +optional = true +default-features = false +package = "ffmpeg-next" + +[dependencies.gif] +version = "0.13.1" +features = [ + "std", + "raii_no_panic", +] +default-features = false + +[dependencies.gif-dispose] +version = "5.0.1" + +[dependencies.imagequant] +version = "4.3.4" + +[dependencies.imgref] +version = "1.11.0" + +[dependencies.lodepng] +version = "3.11.0" +optional = true + +[dependencies.loop9] +version = "0.1.5" + +[dependencies.natord] +version = "1.0.9" +optional = true + +[dependencies.num-traits] +version = "0.2.19" +features = [ + "i128", + "std", +] + +[dependencies.ordered-channel] +version = "1.2.0" +features = ["crossbeam-channel"] + +[dependencies.pbr] +version = "1.1.1" +optional = true + +[dependencies.quick-error] +version = "2.0.1" + +[dependencies.resize] +version = "0.8.8" +features = ["rayon"] + +[dependencies.rgb] +version = "0.8.50" +features = ["bytemuck"] +default-features = false + +[dependencies.wild] +version = "2.2.1" +features = ["glob-quoted-on-windows"] +optional = true + +[dependencies.y4m] +version = "0.8.0" +optional = true + +[dependencies.yuv] +version = "0.1.9" +optional = true + +[dev-dependencies.lodepng] +version = "3.11.0" + +[profile.dev] +opt-level = 1 +debug = 1 + +[profile.dev.package."*"] +opt-level = 2 +debug = 0 + +[profile.release] +opt-level = 3 +lto = true +debug = 0 +panic = "abort" +strip = true diff --git a/SPECS/rust-gifski-1/rust-gifski-1.spec b/SPECS/rust-gifski-1/rust-gifski-1.spec new file mode 100644 index 0000000000..dec334f559 --- /dev/null +++ b/SPECS/rust-gifski-1/rust-gifski-1.spec @@ -0,0 +1,141 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name gifski +%global full_version 1.34.0 +%global pkgname gifski-1 + +Name: rust-gifski-1 +Version: 1.34.0 +Release: %autorelease +Summary: Rust crate "gifski" +License: AGPL-3.0-or-later +URL: https://gif.ski +#!RemoteAsset: sha256:c246c795a61d4a2476fb1c8ab70bedfaa825c734882adc40e117fc837df81190 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(crossbeam-channel-0.5/default) >= 0.5.14 +Requires: crate(crossbeam-utils-0.8/default) >= 0.8.21 +Requires: crate(gif-0.13/raii-no-panic) >= 0.13.1 +Requires: crate(gif-0.13/std) >= 0.13.1 +Requires: crate(gif-dispose-5/default) >= 5.0.1 +Requires: crate(imagequant-4/default) >= 4.3.4 +Requires: crate(imgref-1/default) >= 1.11.0 +Requires: crate(loop9-0.1/default) >= 0.1.5 +Requires: crate(num-traits-0.2/default) >= 0.2.19 +Requires: crate(num-traits-0.2/i128) >= 0.2.19 +Requires: crate(num-traits-0.2/std) >= 0.2.19 +Requires: crate(ordered-channel-1/crossbeam-channel) >= 1.2.0 +Requires: crate(ordered-channel-1/default) >= 1.2.0 +Requires: crate(quick-error-2/default) >= 2.0.1 +Requires: crate(resize-0.8/default) >= 0.8.8 +Requires: crate(resize-0.8/rayon) >= 0.8.8 +Requires: crate(rgb-0.8/bytemuck) >= 0.8.50 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/capi) = %{version} +Provides: crate(%{pkgname}/gifsicle) = %{version} + +%description +Source code for takopackized Rust crate "gifski" + +%package -n %{name}+binary +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "binary" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/pbr) = %{version} +Requires: crate(%{pkgname}/png) = %{version} +Requires: crate(clap-4/cargo) >= 4.5.32 +Requires: crate(clap-4/default) >= 4.5.32 +Requires: crate(dunce-1/default) >= 1.0.5 +Requires: crate(natord-1/default) >= 1.0.9 +Requires: crate(wild-2/default) >= 2.2.1 +Requires: crate(wild-2/glob-quoted-on-windows) >= 2.2.1 +Requires: crate(y4m-0.8/default) >= 0.8.0 +Requires: crate(yuv-0.1/default) >= 0.1.9 +Provides: crate(%{pkgname}/binary) = %{version} + +%description -n %{name}+binary +This metapackage enables feature "binary" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+default +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/binary) = %{version} +Requires: crate(%{pkgname}/gifsicle) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+pbr +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "pbr" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(pbr-1/default) >= 1.1.1 +Provides: crate(%{pkgname}/pbr) = %{version} + +%description -n %{name}+pbr +This metapackage enables feature "pbr" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+png +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "png" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(lodepng-3/default) >= 3.11.0 +Provides: crate(%{pkgname}/png) = %{version} + +%description -n %{name}+png +This metapackage enables feature "png" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+video +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "video" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(ffmpeg-next-6/codec) >= 6.0.0 +Requires: crate(ffmpeg-next-6/filter) >= 6.0.0 +Requires: crate(ffmpeg-next-6/format) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-resampling) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-scaling) >= 6.0.0 +Provides: crate(%{pkgname}/video) = %{version} + +%description -n %{name}+video +This metapackage enables feature "video" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+video-prebuilt-static +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "video-prebuilt-static" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/video) = %{version} +Requires: crate(ffmpeg-next-6/codec) >= 6.0.0 +Requires: crate(ffmpeg-next-6/filter) >= 6.0.0 +Requires: crate(ffmpeg-next-6/format) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-resampling) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-scaling) >= 6.0.0 +Requires: crate(ffmpeg-next-6/static) >= 6.0.0 +Provides: crate(%{pkgname}/video-prebuilt-static) = %{version} + +%description -n %{name}+video-prebuilt-static +This metapackage enables feature "video-prebuilt-static" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+video-static +Summary: Pngquant-based GIF maker for nice-looking animGIFs - feature "video-static" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/video) = %{version} +Requires: crate(ffmpeg-next-6/build) >= 6.0.0 +Requires: crate(ffmpeg-next-6/codec) >= 6.0.0 +Requires: crate(ffmpeg-next-6/filter) >= 6.0.0 +Requires: crate(ffmpeg-next-6/format) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-resampling) >= 6.0.0 +Requires: crate(ffmpeg-next-6/software-scaling) >= 6.0.0 +Provides: crate(%{pkgname}/video-static) = %{version} + +%description -n %{name}+video-static +This metapackage enables feature "video-static" for the Rust gifski crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From d9aa2c6d07d103b15a13223eea4ff53564e3c3e3 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:47:24 +0800 Subject: [PATCH 06/45] SPECS: rust-reqwest-0.13: Update to 0.13.4. Signed-off-by: misaka00251 --- SPECS/rust-reqwest-0.13/Cargo.toml | 174 +++++++++--------- .../rust-reqwest-0.13/rust-reqwest-0.13.spec | 62 +++---- 2 files changed, 108 insertions(+), 128 deletions(-) diff --git a/SPECS/rust-reqwest-0.13/Cargo.toml b/SPECS/rust-reqwest-0.13/Cargo.toml index 6d6eb369e5..d4f978c08b 100644 --- a/SPECS/rust-reqwest-0.13/Cargo.toml +++ b/SPECS/rust-reqwest-0.13/Cargo.toml @@ -11,9 +11,9 @@ [package] edition = "2021" -rust-version = "1.64.0" +rust-version = "1.85.0" name = "reqwest" -version = "0.13.2" +version = "0.13.4" authors = ["Sean McArthur "] build = false include = [ @@ -242,54 +242,95 @@ version = "0.5.2" features = ["limit"] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cookie_crate] +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dependencies.js-sys] +version = "0.3.77" + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dependencies.wasm-bindgen] +version = "0.2.89" + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dependencies.wasm-bindgen-futures] +version = "0.4.18" + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dependencies.wasm-streams] +version = "0.5" +optional = true + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dependencies.web-sys] +version = "0.3.28" +features = [ + "AbortController", + "AbortSignal", + "Headers", + "Request", + "RequestInit", + "RequestMode", + "Response", + "Window", + "FormData", + "Blob", + "BlobPropertyBag", + "ServiceWorkerGlobalScope", + "RequestCredentials", + "File", + "ReadableStream", + "RequestCache", +] + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dev-dependencies.wasm-bindgen] +version = "0.2.89" +features = ["serde-serialize"] + +[target.'cfg(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none")))'.dev-dependencies.wasm-bindgen-test] +version = "0.3" + +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.cookie_crate] version = "0.18.0" optional = true package = "cookie" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.cookie_store] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.cookie_store] version = "0.22.0" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.encoding_rs] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.encoding_rs] version = "0.8" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.futures-channel] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.futures-channel] version = "0.3" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.h2] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.h2] version = "0.4" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.h3] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.h3] version = "0.0.8" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.h3-quinn] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.h3-quinn] version = "0.0.10" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hickory-resolver] -version = "0.25" +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.hickory-resolver] +version = "0.26" features = ["tokio"] optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.http-body] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.http-body] version = "1" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.http-body-util] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.http-body-util] version = "0.1.2" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.hyper] version = "1.1" features = [ "http1", "client", ] -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper-rustls] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.hyper-rustls] version = "0.27.0" features = [ "http1", @@ -298,11 +339,11 @@ features = [ optional = true default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper-tls] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.hyper-tls] version = "0.6" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper-util] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.hyper-util] version = "0.1.12" features = [ "http1", @@ -312,35 +353,35 @@ features = [ "tokio", ] -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.log] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.log] version = "0.4.17" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.mime] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.mime] version = "0.3.16" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.native-tls-crate] -version = "0.2.10" +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.native-tls-crate] +version = "0.2.16" optional = true package = "native-tls" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.once_cell] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.once_cell] version = "1.18" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.percent-encoding] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.percent-encoding] version = "2.3" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.pin-project-lite] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.pin-project-lite] version = "0.2.11" -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.quinn] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.quinn] version = "0.11.1" features = ["runtime-tokio"] optional = true default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustls] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.rustls] version = "0.23.4" features = [ "std", @@ -349,16 +390,16 @@ features = [ optional = true default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustls-pki-types] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.rustls-pki-types] version = "1.9.0" features = ["std"] optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.rustls-platform-verifier] -version = "0.6" +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.rustls-platform-verifier] +version = ">=0.6.0, <0.8.0" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tokio] version = "1.0" features = [ "net", @@ -366,23 +407,23 @@ features = [ ] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-native-tls] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tokio-native-tls] version = "0.3.0" optional = true -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-rustls] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tokio-rustls] version = "0.26" features = ["tls12"] optional = true default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-util] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tokio-util] version = "0.7.9" features = ["io"] optional = true default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tower] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tower] version = "0.5.2" features = [ "retry", @@ -391,28 +432,28 @@ features = [ ] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tower-http] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tower-http] version = "0.6.8" features = ["follow-redirect"] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tower-service] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dependencies.tower-service] version = "0.3" -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.brotli_crate] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.brotli_crate] version = "8" package = "brotli" -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.doc-comment] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.doc-comment] version = "0.3" -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.env_logger] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.env_logger] version = "0.10" -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.flate2] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.flate2] version = "1.0.13" -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.futures-util] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.futures-util] version = "0.3.28" features = [ "std", @@ -420,7 +461,7 @@ features = [ ] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.hyper] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.hyper] version = "1.1.0" features = [ "http1", @@ -430,7 +471,7 @@ features = [ ] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.hyper-util] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.hyper-util] version = "0.1.12" features = [ "http1", @@ -442,11 +483,11 @@ features = [ "tokio", ] -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.serde] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.serde] version = "1.0" features = ["derive"] -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.tokio] version = "1.0" features = [ "macros", @@ -454,51 +495,10 @@ features = [ ] default-features = false -[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.zstd_crate] +[target.'cfg(not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "none"))))'.dev-dependencies.zstd_crate] version = "0.13" package = "zstd" -[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys] -version = "0.3.77" - -[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen] -version = "0.2.89" - -[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures] -version = "0.4.18" - -[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-streams] -version = "0.5" -optional = true - -[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys] -version = "0.3.28" -features = [ - "AbortController", - "AbortSignal", - "Headers", - "Request", - "RequestInit", - "RequestMode", - "Response", - "Window", - "FormData", - "Blob", - "BlobPropertyBag", - "ServiceWorkerGlobalScope", - "RequestCredentials", - "File", - "ReadableStream", - "RequestCache", -] - -[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen] -version = "0.2.89" -features = ["serde-serialize"] - -[target.'cfg(target_arch = "wasm32")'.dev-dependencies.wasm-bindgen-test] -version = "0.3" - [lints.rust.unexpected_cfgs] level = "warn" priority = 0 diff --git a/SPECS/rust-reqwest-0.13/rust-reqwest-0.13.spec b/SPECS/rust-reqwest-0.13/rust-reqwest-0.13.spec index 180fd2a9a9..0211a3c180 100644 --- a/SPECS/rust-reqwest-0.13/rust-reqwest-0.13.spec +++ b/SPECS/rust-reqwest-0.13/rust-reqwest-0.13.spec @@ -4,16 +4,16 @@ # SPDX-License-Identifier: MulanPSL-2.0 %global crate_name reqwest -%global full_version 0.13.2 +%global full_version 0.13.4 %global pkgname reqwest-0.13 Name: rust-reqwest-0.13 -Version: 0.13.2 +Version: 0.13.4 Release: %autorelease Summary: Rust crate "reqwest" License: MIT OR Apache-2.0 URL: https://github.com/seanmonstar/reqwest -#!RemoteAsset: sha256:ab3f43e3283ab1488b624b44b0e988d0acea0b3214e694730a055cb6b2efa801 +#!RemoteAsset: sha256:219c5811de6525e5416c7d5d53bb656d3afdbc6c5af816e0802bcfa42dbdc1c3 Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz BuildArch: noarch BuildSystem: rustcrates @@ -68,53 +68,23 @@ Requires: crate(web-sys-0.3/requestmode) >= 0.3.28 Requires: crate(web-sys-0.3/response) >= 0.3.28 Requires: crate(web-sys-0.3/serviceworkerglobalscope) >= 0.3.28 Requires: crate(web-sys-0.3/window) >= 0.3.28 + Provides: crate(%{pkgname}) = %{version} Provides: crate(%{pkgname}/socks) = %{version} %description Source code for takopackized Rust crate "reqwest" -%package -n %{name}+native-tls-no-alpn -Summary: Higher level HTTP client library - feature "__native-tls" and 1 more -Requires: crate(%{pkgname}) = %{version} -Requires: crate(%{pkgname}/tls) = %{version} -Requires: crate(hyper-tls-0.6/default) >= 0.6.0 -Requires: crate(native-tls-0.2/default) >= 0.2.10 -Requires: crate(tokio-native-tls-0.3/default) >= 0.3.0 -Provides: crate(%{pkgname}/native-tls-no-alpn) = %{version} - -%description -n %{name}+native-tls-no-alpn -This metapackage enables feature "__native-tls" for the Rust reqwest crate, by pulling in any additional dependencies needed by that feature. - -Additionally, this package also provides the "native-tls-no-alpn" feature. - %package -n %{name}+native-tls-alpn Summary: Higher level HTTP client library - feature "__native-tls-alpn" Requires: crate(%{pkgname}) = %{version} Requires: crate(hyper-tls-0.6/alpn) >= 0.6.0 -Requires: crate(native-tls-0.2/alpn) >= 0.2.10 +Requires: crate(native-tls-0.2/alpn) >= 0.2.16 Provides: crate(%{pkgname}/native-tls-alpn) = %{version} %description -n %{name}+native-tls-alpn This metapackage enables feature "__native-tls-alpn" for the Rust reqwest crate, by pulling in any additional dependencies needed by that feature. -%package -n %{name}+rustls-no-provider -Summary: Higher level HTTP client library - feature "__rustls" and 1 more -Requires: crate(%{pkgname}) = %{version} -Requires: crate(%{pkgname}/tls) = %{version} -Requires: crate(hyper-rustls-0.27/http1) >= 0.27.0 -Requires: crate(hyper-rustls-0.27/tls12) >= 0.27.0 -Requires: crate(rustls-0.23/std) >= 0.23.4 -Requires: crate(rustls-0.23/tls12) >= 0.23.4 -Requires: crate(rustls-platform-verifier-0.6/default) >= 0.6.0 -Requires: crate(tokio-rustls-0.26/tls12) >= 0.26.0 -Provides: crate(%{pkgname}/rustls-no-provider) = %{version} - -%description -n %{name}+rustls-no-provider -This metapackage enables feature "__rustls" for the Rust reqwest crate, by pulling in any additional dependencies needed by that feature. - -Additionally, this package also provides the "rustls-no-provider" feature. - %package -n %{name}+rustls-aws-lc-rs Summary: Higher level HTTP client library - feature "__rustls-aws-lc-rs" Requires: crate(%{pkgname}) = %{version} @@ -240,8 +210,8 @@ This metapackage enables feature "gzip" for the Rust reqwest crate, by pulling i %package -n %{name}+hickory-dns Summary: Higher level HTTP client library - feature "hickory-dns" Requires: crate(%{pkgname}) = %{version} -Requires: crate(hickory-resolver-0.25/default) >= 0.25.0 -Requires: crate(hickory-resolver-0.25/tokio) >= 0.25.0 +Requires: crate(hickory-resolver-0.26/default) >= 0.26.0 +Requires: crate(hickory-resolver-0.26/tokio) >= 0.26.0 Requires: crate(once-cell-1/default) >= 1.18.0 Provides: crate(%{pkgname}/hickory-dns) = %{version} @@ -307,8 +277,8 @@ This metapackage enables feature "multipart" for the Rust reqwest crate, by pull %package -n %{name}+native-tls Summary: Higher level HTTP client library - feature "native-tls" Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/native-tls) = %{version} Requires: crate(%{pkgname}/native-tls-alpn) = %{version} -Requires: crate(%{pkgname}/native-tls-no-alpn) = %{version} Provides: crate(%{pkgname}/native-tls) = %{version} %description -n %{name}+native-tls @@ -319,7 +289,7 @@ Summary: Higher level HTTP client library - feature "native-tls-vendored" Requires: crate(%{pkgname}) = %{version} Requires: crate(%{pkgname}/native-tls) = %{version} Requires: crate(%{pkgname}/native-tls-alpn) = %{version} -Requires: crate(native-tls-0.2/vendored) >= 0.2.10 +Requires: crate(native-tls-0.2/vendored) >= 0.2.16 Provides: crate(%{pkgname}/native-tls-vendored) = %{version} %description -n %{name}+native-tls-vendored @@ -329,7 +299,7 @@ This metapackage enables feature "native-tls-vendored" for the Rust reqwest crat Summary: Higher level HTTP client library - feature "native-tls-vendored-no-alpn" Requires: crate(%{pkgname}) = %{version} Requires: crate(%{pkgname}/native-tls) = %{version} -Requires: crate(native-tls-0.2/vendored) >= 0.2.10 +Requires: crate(native-tls-0.2/vendored) >= 0.2.16 Provides: crate(%{pkgname}/native-tls-vendored-no-alpn) = %{version} %description -n %{name}+native-tls-vendored-no-alpn @@ -338,8 +308,8 @@ This metapackage enables feature "native-tls-vendored-no-alpn" for the Rust reqw %package -n %{name}+rustls Summary: Higher level HTTP client library - feature "rustls" and 1 more Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/rustls) = %{version} Requires: crate(%{pkgname}/rustls-aws-lc-rs) = %{version} -Requires: crate(%{pkgname}/rustls-no-provider) = %{version} Requires: crate(rustls-platform-verifier-0.6/default) >= 0.6.0 Provides: crate(%{pkgname}/default-tls) = %{version} Provides: crate(%{pkgname}/rustls) = %{version} @@ -349,6 +319,16 @@ This metapackage enables feature "rustls" for the Rust reqwest crate, by pulling Additionally, this package also provides the "default-tls" feature. +%package -n %{name}+rustls-no-provider +Summary: Higher level HTTP client library - feature "rustls-no-provider" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/rustls) = %{version} +Requires: crate(rustls-platform-verifier-0.6/default) >= 0.6.0 +Provides: crate(%{pkgname}/rustls-no-provider) = %{version} + +%description -n %{name}+rustls-no-provider +This metapackage enables feature "rustls-no-provider" for the Rust reqwest crate, by pulling in any additional dependencies needed by that feature. + %package -n %{name}+stream Summary: Higher level HTTP client library - feature "stream" Requires: crate(%{pkgname}) = %{version} From 72f5d85196a1e67f2327ca9fd78bf91b87998c5b Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:48:58 +0800 Subject: [PATCH 07/45] SPECS: Add rust-resvg-0.45. Signed-off-by: misaka00251 --- SPECS/rust-resvg-0.45/Cargo.toml | 111 +++++++++++++++++++++ SPECS/rust-resvg-0.45/rust-resvg-0.45.spec | 108 ++++++++++++++++++++ 2 files changed, 219 insertions(+) create mode 100644 SPECS/rust-resvg-0.45/Cargo.toml create mode 100644 SPECS/rust-resvg-0.45/rust-resvg-0.45.spec diff --git a/SPECS/rust-resvg-0.45/Cargo.toml b/SPECS/rust-resvg-0.45/Cargo.toml new file mode 100644 index 0000000000..db5e8aaca1 --- /dev/null +++ b/SPECS/rust-resvg-0.45/Cargo.toml @@ -0,0 +1,111 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.67.1" +name = "resvg" +version = "0.45.1" +build = false +exclude = ["tests"] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "An SVG rendering library." +readme = "README.md" +keywords = [ + "svg", + "render", + "raster", +] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/linebender/resvg" + +[features] +default = [ + "text", + "system-fonts", + "memmap-fonts", + "raster-images", +] +memmap-fonts = ["usvg/memmap-fonts"] +raster-images = [ + "gif", + "image-webp", + "dep:zune-jpeg", +] +system-fonts = ["usvg/system-fonts"] +text = ["usvg/text"] + +[lib] +name = "resvg" +path = "src/lib.rs" + +[[bin]] +name = "resvg" +path = "src/main.rs" +required-features = [ + "text", + "system-fonts", + "memmap-fonts", +] + +[[example]] +name = "custom_href_resolver" +path = "examples/custom_href_resolver.rs" + +[[example]] +name = "draw_bboxes" +path = "examples/draw_bboxes.rs" + +[[example]] +name = "minimal" +path = "examples/minimal.rs" + +[dependencies.gif] +version = "0.13" +optional = true + +[dependencies.image-webp] +version = "0.2.0" +optional = true + +[dependencies.log] +version = "0.4" + +[dependencies.pico-args] +version = "0.5" +features = ["eq-separator"] + +[dependencies.rgb] +version = "0.8" + +[dependencies.svgtypes] +version = "0.15.3" + +[dependencies.tiny-skia] +version = "0.11.4" + +[dependencies.usvg] +version = "0.45.1" +default-features = false + +[dependencies.zune-jpeg] +version = "0.4" +optional = true + +[dev-dependencies.once_cell] +version = "1.5" + +[dev-dependencies.png] +version = "0.17" diff --git a/SPECS/rust-resvg-0.45/rust-resvg-0.45.spec b/SPECS/rust-resvg-0.45/rust-resvg-0.45.spec new file mode 100644 index 0000000000..e5e2d9d87c --- /dev/null +++ b/SPECS/rust-resvg-0.45/rust-resvg-0.45.spec @@ -0,0 +1,108 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name resvg +%global full_version 0.45.1 +%global pkgname resvg-0.45 + +Name: rust-resvg-0.45 +Version: 0.45.1 +Release: %autorelease +Summary: Rust crate "resvg" +License: Apache-2.0 OR MIT +URL: https://github.com/linebender/resvg +#!RemoteAsset: sha256:a8928798c0a55e03c9ca6c4c6846f76377427d2c1e1f7e6de3c06ae57942df43 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(log-0.4/default) >= 0.4.0 +Requires: crate(pico-args-0.5/default) >= 0.5.0 +Requires: crate(pico-args-0.5/eq-separator) >= 0.5.0 +Requires: crate(rgb-0.8/default) >= 0.8.0 +Requires: crate(svgtypes-0.15/default) >= 0.15.3 +Requires: crate(tiny-skia-0.11/default) >= 0.11.4 +Requires: crate(usvg-0.45) >= 0.45.1 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "resvg" + +%package -n %{name}+default +Summary: SVG rendering library - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/memmap-fonts) = %{version} +Requires: crate(%{pkgname}/raster-images) = %{version} +Requires: crate(%{pkgname}/system-fonts) = %{version} +Requires: crate(%{pkgname}/text) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+gif +Summary: SVG rendering library - feature "gif" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(gif-0.13/default) >= 0.13.0 +Provides: crate(%{pkgname}/gif) = %{version} + +%description -n %{name}+gif +This metapackage enables feature "gif" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+image-webp +Summary: SVG rendering library - feature "image-webp" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(image-webp-0.2/default) >= 0.2.0 +Provides: crate(%{pkgname}/image-webp) = %{version} + +%description -n %{name}+image-webp +This metapackage enables feature "image-webp" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+memmap-fonts +Summary: SVG rendering library - feature "memmap-fonts" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(usvg-0.45/memmap-fonts) >= 0.45.1 +Provides: crate(%{pkgname}/memmap-fonts) = %{version} + +%description -n %{name}+memmap-fonts +This metapackage enables feature "memmap-fonts" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+raster-images +Summary: SVG rendering library - feature "raster-images" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/gif) = %{version} +Requires: crate(%{pkgname}/image-webp) = %{version} +Requires: crate(zune-jpeg-0.4/default) >= 0.4.0 +Provides: crate(%{pkgname}/raster-images) = %{version} + +%description -n %{name}+raster-images +This metapackage enables feature "raster-images" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+system-fonts +Summary: SVG rendering library - feature "system-fonts" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(usvg-0.45/system-fonts) >= 0.45.1 +Provides: crate(%{pkgname}/system-fonts) = %{version} + +%description -n %{name}+system-fonts +This metapackage enables feature "system-fonts" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+text +Summary: SVG rendering library - feature "text" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(usvg-0.45/text) >= 0.45.1 +Provides: crate(%{pkgname}/text) = %{version} + +%description -n %{name}+text +This metapackage enables feature "text" for the Rust resvg crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 6536d19bfaf05772eea7cd501984e2c4c24c0d52 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:51:17 +0800 Subject: [PATCH 08/45] SPECS: Add rust-swash-0.2. Signed-off-by: misaka00251 --- SPECS/rust-swash-0.2/Cargo.toml | 93 ++++++++++++++++++++++++ SPECS/rust-swash-0.2/rust-swash-0.2.spec | 87 ++++++++++++++++++++++ 2 files changed, 180 insertions(+) create mode 100644 SPECS/rust-swash-0.2/Cargo.toml create mode 100644 SPECS/rust-swash-0.2/rust-swash-0.2.spec diff --git a/SPECS/rust-swash-0.2/Cargo.toml b/SPECS/rust-swash-0.2/Cargo.toml new file mode 100644 index 0000000000..174cd62bb1 --- /dev/null +++ b/SPECS/rust-swash-0.2/Cargo.toml @@ -0,0 +1,93 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "swash" +version = "0.2.9" +authors = ["Chad Brokaw "] +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Font introspection, complex text shaping and glyph rendering." +homepage = "https://github.com/dfrg/swash" +readme = "README.md" +keywords = [ + "font", + "shape", + "glyph", + "text", +] +categories = [ + "graphics", + "text-processing", +] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/dfrg/swash" + +[package.metadata.docs.rs] +all-features = true +default-target = "x86_64-unknown-linux-gnu" +targets = [] + +[features] +default = [ + "std", + "scale", + "render", +] +libm = [ + "dep:core_maths", + "skrifa/libm", + "zeno?/libm", +] +render = [ + "scale", + "zeno/eval", +] +scale = [ + "dep:yazi", + "dep:zeno", +] +std = [ + "skrifa/std", + "zeno?/std", + "yazi?/std", +] + +[lib] +name = "swash" +path = "src/lib.rs" + +[dependencies.core_maths] +version = "0.1.1" +optional = true + +[dependencies.skrifa] +version = ">= 0.31.1, <= 0.42" +default-features = false + +[dependencies.yazi] +version = "0.2.1" +optional = true +default-features = false + +[dependencies.zeno] +version = "0.3.3" +optional = true +default-features = false + +[lints.clippy] +doc_markdown = "warn" +semicolon_if_nothing_returned = "warn" diff --git a/SPECS/rust-swash-0.2/rust-swash-0.2.spec b/SPECS/rust-swash-0.2/rust-swash-0.2.spec new file mode 100644 index 0000000000..7817c7609c --- /dev/null +++ b/SPECS/rust-swash-0.2/rust-swash-0.2.spec @@ -0,0 +1,87 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name swash +%global full_version 0.2.9 +%global pkgname swash-0.2 + +Name: rust-swash-0.2 +Version: 0.2.9 +Release: %autorelease +Summary: Rust crate "swash" +License: Apache-2.0 OR MIT +URL: https://github.com/dfrg/swash +#!RemoteAsset: sha256:0811b01ca2c4e8718760713911feaf4675c24f94e50530a015ec646cfb622f7c +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(skrifa-0.31) >= 0.31.1 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "swash" + +%package -n %{name}+default +Summary: Font introspection, complex text shaping and glyph rendering - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/render) = %{version} +Requires: crate(%{pkgname}/scale) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust swash crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+libm +Summary: Font introspection, complex text shaping and glyph rendering - feature "libm" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(core-maths-0.1/default) >= 0.1.1 +Requires: crate(skrifa-0.31/libm) >= 0.31.1 +Requires: crate(zeno-0.3/libm) >= 0.3.3 +Provides: crate(%{pkgname}/libm) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust swash crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+render +Summary: Font introspection, complex text shaping and glyph rendering - feature "render" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/scale) = %{version} +Requires: crate(zeno-0.3/eval) >= 0.3.3 +Provides: crate(%{pkgname}/render) = %{version} + +%description -n %{name}+render +This metapackage enables feature "render" for the Rust swash crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+scale +Summary: Font introspection, complex text shaping and glyph rendering - feature "scale" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(yazi-0.2) >= 0.2.1 +Requires: crate(zeno-0.3) >= 0.3.3 +Provides: crate(%{pkgname}/scale) = %{version} + +%description -n %{name}+scale +This metapackage enables feature "scale" for the Rust swash crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Font introspection, complex text shaping and glyph rendering - feature "std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(skrifa-0.31/std) >= 0.31.1 +Requires: crate(yazi-0.2/std) >= 0.2.1 +Requires: crate(zeno-0.3/std) >= 0.3.3 +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust swash crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 40d933d8ada383a7b09a338d78bd89a9761d8bfd Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:51:54 +0800 Subject: [PATCH 09/45] SPECS: Add rust-tiny-skia-0.11. Signed-off-by: misaka00251 --- SPECS/rust-tiny-skia-0.11/Cargo.toml | 66 ++++++++++++++ .../rust-tiny-skia-0.11.spec | 89 +++++++++++++++++++ 2 files changed, 155 insertions(+) create mode 100644 SPECS/rust-tiny-skia-0.11/Cargo.toml create mode 100644 SPECS/rust-tiny-skia-0.11/rust-tiny-skia-0.11.spec diff --git a/SPECS/rust-tiny-skia-0.11/Cargo.toml b/SPECS/rust-tiny-skia-0.11/Cargo.toml new file mode 100644 index 0000000000..9da1698d96 --- /dev/null +++ b/SPECS/rust-tiny-skia-0.11/Cargo.toml @@ -0,0 +1,66 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "tiny-skia" +version = "0.11.4" +authors = ["Yevhenii Reizner "] +description = "A tiny Skia subset ported to Rust." +documentation = "https://docs.rs/tiny-skia/" +readme = "README.md" +keywords = [ + "2d", + "rendering", + "skia", +] +categories = ["rendering"] +license = "BSD-3-Clause" +repository = "https://github.com/RazrFalcon/tiny-skia" + +[dependencies.arrayref] +version = "0.3.6" + +[dependencies.arrayvec] +version = "0.7" +default-features = false + +[dependencies.bytemuck] +version = "1.12" +features = ["aarch64_simd"] + +[dependencies.cfg-if] +version = "1" + +[dependencies.log] +version = "0.4" + +[dependencies.png] +version = "0.17" +optional = true + +[dependencies.tiny-skia-path] +version = "0.11.4" +default-features = false + +[features] +default = [ + "std", + "simd", + "png-format", +] +no-std-float = ["tiny-skia-path/no-std-float"] +png-format = [ + "std", + "png", +] +simd = [] +std = ["tiny-skia-path/std"] diff --git a/SPECS/rust-tiny-skia-0.11/rust-tiny-skia-0.11.spec b/SPECS/rust-tiny-skia-0.11/rust-tiny-skia-0.11.spec new file mode 100644 index 0000000000..2c00b21aec --- /dev/null +++ b/SPECS/rust-tiny-skia-0.11/rust-tiny-skia-0.11.spec @@ -0,0 +1,89 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name tiny-skia +%global full_version 0.11.4 +%global pkgname tiny-skia-0.11 + +Name: rust-tiny-skia-0.11 +Version: 0.11.4 +Release: %autorelease +Summary: Rust crate "tiny-skia" +License: BSD-3-Clause +URL: https://github.com/RazrFalcon/tiny-skia +#!RemoteAsset: sha256:83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(arrayref-0.3/default) >= 0.3.6 +Requires: crate(arrayvec-0.7) >= 0.7.0 +Requires: crate(bytemuck-1/aarch64-simd) >= 1.12.0 +Requires: crate(bytemuck-1/default) >= 1.12.0 +Requires: crate(cfg-if-1/default) >= 1.0.0 +Requires: crate(log-0.4/default) >= 0.4.0 +Requires: crate(tiny-skia-path-0.11) >= 0.11.4 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/simd) = %{version} + +%description +Source code for takopackized Rust crate "tiny-skia" + +%package -n %{name}+default +Summary: Tiny Skia subset ported to Rust - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/png-format) = %{version} +Requires: crate(%{pkgname}/simd) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust tiny-skia crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+no-std-float +Summary: Tiny Skia subset ported to Rust - feature "no-std-float" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(tiny-skia-path-0.11/no-std-float) >= 0.11.4 +Provides: crate(%{pkgname}/no-std-float) = %{version} + +%description -n %{name}+no-std-float +This metapackage enables feature "no-std-float" for the Rust tiny-skia crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+png +Summary: Tiny Skia subset ported to Rust - feature "png" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(png-0.17/default) >= 0.17.0 +Provides: crate(%{pkgname}/png) = %{version} + +%description -n %{name}+png +This metapackage enables feature "png" for the Rust tiny-skia crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+png-format +Summary: Tiny Skia subset ported to Rust - feature "png-format" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/png) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/png-format) = %{version} + +%description -n %{name}+png-format +This metapackage enables feature "png-format" for the Rust tiny-skia crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Tiny Skia subset ported to Rust - feature "std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(tiny-skia-path-0.11/std) >= 0.11.4 +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust tiny-skia crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 1e9219bcd4993427d24a9775798c1246e04bcf0c Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 16:52:59 +0800 Subject: [PATCH 10/45] SPECS: Add rust-usvg-0.45. Signed-off-by: misaka00251 --- SPECS/rust-usvg-0.45/Cargo.toml | 131 ++++++++++++++++++++++ SPECS/rust-usvg-0.45/rust-usvg-0.45.spec | 136 +++++++++++++++++++++++ 2 files changed, 267 insertions(+) create mode 100644 SPECS/rust-usvg-0.45/Cargo.toml create mode 100644 SPECS/rust-usvg-0.45/rust-usvg-0.45.spec diff --git a/SPECS/rust-usvg-0.45/Cargo.toml b/SPECS/rust-usvg-0.45/Cargo.toml new file mode 100644 index 0000000000..b2b4d9158e --- /dev/null +++ b/SPECS/rust-usvg-0.45/Cargo.toml @@ -0,0 +1,131 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65.0" +name = "usvg" +version = "0.45.1" +build = false +exclude = ["tests"] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "An SVG simplification library." +documentation = "https://docs.rs/usvg/" +readme = "README.md" +keywords = ["svg"] +categories = ["multimedia::images"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/linebender/resvg" + +[features] +default = [ + "text", + "system-fonts", + "memmap-fonts", +] +memmap-fonts = ["fontdb/memmap"] +system-fonts = [ + "fontdb/fs", + "fontdb/fontconfig", +] +text = [ + "fontdb", + "rustybuzz", + "unicode-bidi", + "unicode-script", + "unicode-vo", +] + +[lib] +name = "usvg" +path = "src/lib.rs" + +[[bin]] +name = "usvg" +path = "src/main.rs" +required-features = [ + "text", + "system-fonts", + "memmap-fonts", +] + +[dependencies.base64] +version = "0.22" + +[dependencies.data-url] +version = "0.3" + +[dependencies.flate2] +version = "1.0" +features = ["rust_backend"] +default-features = false + +[dependencies.fontdb] +version = "0.23.0" +optional = true +default-features = false + +[dependencies.imagesize] +version = "0.13" + +[dependencies.kurbo] +version = "0.11" + +[dependencies.log] +version = "0.4" + +[dependencies.pico-args] +version = "0.5" +features = ["eq-separator"] + +[dependencies.roxmltree] +version = "0.20" + +[dependencies.rustybuzz] +version = "0.20.1" +optional = true + +[dependencies.simplecss] +version = "0.2" + +[dependencies.siphasher] +version = "1.0" + +[dependencies.strict-num] +version = "0.1.1" + +[dependencies.svgtypes] +version = "0.15.3" + +[dependencies.tiny-skia-path] +version = "0.11.4" + +[dependencies.unicode-bidi] +version = "0.3" +optional = true + +[dependencies.unicode-script] +version = "0.5" +optional = true + +[dependencies.unicode-vo] +version = "0.1" +optional = true + +[dependencies.xmlwriter] +version = "0.1" + +[dev-dependencies.once_cell] +version = "1.5" diff --git a/SPECS/rust-usvg-0.45/rust-usvg-0.45.spec b/SPECS/rust-usvg-0.45/rust-usvg-0.45.spec new file mode 100644 index 0000000000..daae335ef3 --- /dev/null +++ b/SPECS/rust-usvg-0.45/rust-usvg-0.45.spec @@ -0,0 +1,136 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name usvg +%global full_version 0.45.1 +%global pkgname usvg-0.45 + +Name: rust-usvg-0.45 +Version: 0.45.1 +Release: %autorelease +Summary: Rust crate "usvg" +License: Apache-2.0 OR MIT +URL: https://github.com/linebender/resvg +#!RemoteAsset: sha256:80be9b06fbae3b8b303400ab20778c80bbaf338f563afe567cf3c9eea17b47ef +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(base64-0.22/default) >= 0.22.0 +Requires: crate(data-url-0.3/default) >= 0.3.0 +Requires: crate(flate2-1/rust-backend) >= 1.0.0 +Requires: crate(imagesize-0.13/default) >= 0.13.0 +Requires: crate(kurbo-0.11/default) >= 0.11.0 +Requires: crate(log-0.4/default) >= 0.4.0 +Requires: crate(pico-args-0.5/default) >= 0.5.0 +Requires: crate(pico-args-0.5/eq-separator) >= 0.5.0 +Requires: crate(roxmltree-0.20/default) >= 0.20.0 +Requires: crate(simplecss-0.2/default) >= 0.2.0 +Requires: crate(siphasher-1/default) >= 1.0.0 +Requires: crate(strict-num-0.1/default) >= 0.1.1 +Requires: crate(svgtypes-0.15/default) >= 0.15.3 +Requires: crate(tiny-skia-path-0.11/default) >= 0.11.4 +Requires: crate(xmlwriter-0.1/default) >= 0.1.0 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "usvg" + +%package -n %{name}+default +Summary: SVG simplification library - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/memmap-fonts) = %{version} +Requires: crate(%{pkgname}/system-fonts) = %{version} +Requires: crate(%{pkgname}/text) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+fontdb +Summary: SVG simplification library - feature "fontdb" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(fontdb-0.23) >= 0.23.0 +Provides: crate(%{pkgname}/fontdb) = %{version} + +%description -n %{name}+fontdb +This metapackage enables feature "fontdb" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+memmap-fonts +Summary: SVG simplification library - feature "memmap-fonts" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(fontdb-0.23/memmap) >= 0.23.0 +Provides: crate(%{pkgname}/memmap-fonts) = %{version} + +%description -n %{name}+memmap-fonts +This metapackage enables feature "memmap-fonts" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+rustybuzz +Summary: SVG simplification library - feature "rustybuzz" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(rustybuzz-0.20/default) >= 0.20.1 +Provides: crate(%{pkgname}/rustybuzz) = %{version} + +%description -n %{name}+rustybuzz +This metapackage enables feature "rustybuzz" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+system-fonts +Summary: SVG simplification library - feature "system-fonts" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(fontdb-0.23/fontconfig) >= 0.23.0 +Requires: crate(fontdb-0.23/fs) >= 0.23.0 +Provides: crate(%{pkgname}/system-fonts) = %{version} + +%description -n %{name}+system-fonts +This metapackage enables feature "system-fonts" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+text +Summary: SVG simplification library - feature "text" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/fontdb) = %{version} +Requires: crate(%{pkgname}/rustybuzz) = %{version} +Requires: crate(%{pkgname}/unicode-bidi) = %{version} +Requires: crate(%{pkgname}/unicode-script) = %{version} +Requires: crate(%{pkgname}/unicode-vo) = %{version} +Provides: crate(%{pkgname}/text) = %{version} + +%description -n %{name}+text +This metapackage enables feature "text" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+unicode-bidi +Summary: SVG simplification library - feature "unicode-bidi" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(unicode-bidi-0.3/default) >= 0.3.0 +Provides: crate(%{pkgname}/unicode-bidi) = %{version} + +%description -n %{name}+unicode-bidi +This metapackage enables feature "unicode-bidi" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+unicode-script +Summary: SVG simplification library - feature "unicode-script" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(unicode-script-0.5/default) >= 0.5.0 +Provides: crate(%{pkgname}/unicode-script) = %{version} + +%description -n %{name}+unicode-script +This metapackage enables feature "unicode-script" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+unicode-vo +Summary: SVG simplification library - feature "unicode-vo" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(unicode-vo-0.1/default) >= 0.1.0 +Provides: crate(%{pkgname}/unicode-vo) = %{version} + +%description -n %{name}+unicode-vo +This metapackage enables feature "unicode-vo" for the Rust usvg crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From dd70ec2f752397b536daac81b35fb285dbd3ff02 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:04:03 +0800 Subject: [PATCH 11/45] SPECS: Add rust-gif-0.13. Signed-off-by: misaka00251 --- SPECS/rust-gif-0.13/Cargo.toml | 84 ++++++++++++++++++++++++++ SPECS/rust-gif-0.13/rust-gif-0.13.spec | 56 +++++++++++++++++ 2 files changed, 140 insertions(+) create mode 100644 SPECS/rust-gif-0.13/Cargo.toml create mode 100644 SPECS/rust-gif-0.13/rust-gif-0.13.spec diff --git a/SPECS/rust-gif-0.13/Cargo.toml b/SPECS/rust-gif-0.13/Cargo.toml new file mode 100644 index 0000000000..4954726781 --- /dev/null +++ b/SPECS/rust-gif-0.13/Cargo.toml @@ -0,0 +1,84 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.62" +name = "gif" +version = "0.13.3" +authors = ["The image-rs Developers"] +build = false +include = [ + "src/**", + "LICENSE-*", + "README.md", + "benches/*.rs", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "GIF de- and encoder" +homepage = "https://github.com/image-rs/image-gif" +documentation = "https://docs.rs/gif" +readme = "README.md" +license = "MIT OR Apache-2.0" +repository = "https://github.com/image-rs/image-gif" + +[features] +color_quant = ["dep:color_quant"] +default = [ + "raii_no_panic", + "std", + "color_quant", +] +raii_no_panic = [] +std = [] + +[lib] +name = "gif" +path = "src/lib.rs" +bench = false + +[[bench]] +name = "decode" +path = "benches/decode.rs" +harness = false +required-features = ["std"] + +[[bench]] +name = "rgb_frame" +path = "benches/rgb_frame.rs" +harness = false +required-features = [ + "std", + "color_quant", +] + +[dependencies.color_quant] +version = "1.1" +optional = true + +[dependencies.weezl] +version = "0.1.10" + +[dev-dependencies.criterion] +version = "0.5.1" + +[dev-dependencies.glob] +version = "0.3" + +[dev-dependencies.png] +version = "0.17.16" + +[dev-dependencies.rayon] +version = "1.10.0" diff --git a/SPECS/rust-gif-0.13/rust-gif-0.13.spec b/SPECS/rust-gif-0.13/rust-gif-0.13.spec new file mode 100644 index 0000000000..900e69123b --- /dev/null +++ b/SPECS/rust-gif-0.13/rust-gif-0.13.spec @@ -0,0 +1,56 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name gif +%global full_version 0.13.3 +%global pkgname gif-0.13 + +Name: rust-gif-0.13 +Version: 0.13.3 +Release: %autorelease +Summary: Rust crate "gif" +License: MIT OR Apache-2.0 +URL: https://github.com/image-rs/image-gif +#!RemoteAsset: sha256:4ae047235e33e2829703574b54fdec96bfbad892062d97fed2f76022287de61b +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(weezl-0.1/default) >= 0.1.10 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/raii-no-panic) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "gif" + +%package -n %{name}+color-quant +Summary: GIF de- and encoder - feature "color_quant" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(color-quant-1/default) >= 1.1.0 +Provides: crate(%{pkgname}/color-quant) = %{version} + +%description -n %{name}+color-quant +This metapackage enables feature "color_quant" for the Rust gif crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+default +Summary: GIF de- and encoder - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/color-quant) = %{version} +Requires: crate(%{pkgname}/raii-no-panic) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust gif crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 46d48da4692c6a69c77332d50272a86bc12d1c3a Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:06:00 +0800 Subject: [PATCH 12/45] SPECS: Add rust-gif-dispose-5. Signed-off-by: misaka00251 --- SPECS/rust-gif-dispose-5/Cargo.toml | 55 +++++++++++++++++++ .../rust-gif-dispose-5.spec | 38 +++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 SPECS/rust-gif-dispose-5/Cargo.toml create mode 100644 SPECS/rust-gif-dispose-5/rust-gif-dispose-5.spec diff --git a/SPECS/rust-gif-dispose-5/Cargo.toml b/SPECS/rust-gif-dispose-5/Cargo.toml new file mode 100644 index 0000000000..d3e1423d5e --- /dev/null +++ b/SPECS/rust-gif-dispose-5/Cargo.toml @@ -0,0 +1,55 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.64" +name = "gif-dispose" +version = "5.0.1" +authors = ["Kornel Lesiński "] +description = "Implements GIF disposal method for the gif crate. The gif crate only exposes raw frame data that is not sufficient to render GIFs properly. GIF requires special composing of frames which, as this crate shows, is non-trivial." +homepage = "https://lib.rs/gif-dispose" +documentation = "https://docs.rs/gif-dispose/" +readme = "README.md" +keywords = [ + "gif", + "frames", + "animation", +] +categories = [ + "multimedia::video", + "multimedia::images", +] +license = "MIT OR Apache-2.0" +repository = "https://github.com/kornelski/image-gif-dispose.git" + +[package.metadata.docs.rs] +rustdoc-args = ["--generate-link-to-definition"] +targets = ["x86_64-unknown-linux-gnu"] + +[dependencies.gif] +version = "0.13.1" +features = ["std"] +default-features = false + +[dependencies.imgref] +version = "1.10.1" + +[dependencies.rgb] +version = "0.8.43" +features = ["bytemuck"] +default-features = false + +[dev-dependencies.lodepng] +version = "3.10.1" + +[badges.maintenance] +status = "actively-developed" diff --git a/SPECS/rust-gif-dispose-5/rust-gif-dispose-5.spec b/SPECS/rust-gif-dispose-5/rust-gif-dispose-5.spec new file mode 100644 index 0000000000..6dad3d6432 --- /dev/null +++ b/SPECS/rust-gif-dispose-5/rust-gif-dispose-5.spec @@ -0,0 +1,38 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name gif-dispose +%global full_version 5.0.1 +%global pkgname gif-dispose-5 + +Name: rust-gif-dispose-5 +Version: 5.0.1 +Release: %autorelease +Summary: Rust crate "gif-dispose" +License: MIT OR Apache-2.0 +URL: https://lib.rs/gif-dispose +#!RemoteAsset: sha256:5e1aa07391f3d9c279f388cea6faf291555dd891df59bed01d4378583df946ac +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(gif-0.13/std) >= 0.13.1 +Requires: crate(imgref-1/default) >= 1.10.1 +Requires: crate(rgb-0.8/bytemuck) >= 0.8.43 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +The gif crate only exposes raw frame data that is not sufficient to render GIFs properly. GIF requires special composing of frames which, as this crate shows, is non-trivial. +Source code for takopackized Rust crate "gif-dispose" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From f41c7cc48100edd767e313767a0de66fdcaa64e3 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:07:14 +0800 Subject: [PATCH 13/45] SPECS: Add rust-imagequant-4. Signed-off-by: misaka00251 --- SPECS/rust-imagequant-4/Cargo.toml | 93 +++++++++++++++++++ .../rust-imagequant-4/rust-imagequant-4.spec | 53 +++++++++++ 2 files changed, 146 insertions(+) create mode 100644 SPECS/rust-imagequant-4/Cargo.toml create mode 100644 SPECS/rust-imagequant-4/rust-imagequant-4.spec diff --git a/SPECS/rust-imagequant-4/Cargo.toml b/SPECS/rust-imagequant-4/Cargo.toml new file mode 100644 index 0000000000..f8c8952e2a --- /dev/null +++ b/SPECS/rust-imagequant-4/Cargo.toml @@ -0,0 +1,93 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65" +name = "imagequant" +version = "4.4.1" +authors = ["Kornel Lesiński "] +build = false +include = [ + "COPYRIGHT", + "src/*.rs", + "*.h", + "README.md", + "Cargo.toml", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = """ +Convert 24/32-bit images to 8-bit palette with alpha channel. +For lossy PNG compression and high-quality GIF images +Dual-licensed like pngquant. See https://pngquant.org for details.""" +homepage = "https://pngquant.org/lib" +documentation = "https://docs.rs/imagequant" +readme = "README.md" +keywords = [ + "quantization", + "palette", + "pngquant", + "compression", + "gif", +] +categories = ["multimedia::images"] +license = "GPL-3.0-or-later" +repository = "https://github.com/ImageOptim/libimagequant" + +[package.metadata.release] +consolidate-commits = true +tag-message = "" +tag-name = "{{version}}" +tag-prefix = "" + +[features] +_internal_c_ffi = [] +default = ["threads"] +large_palettes = [] +threads = [ + "dep:rayon", + "dep:thread_local", +] + +[lib] +name = "imagequant" +path = "src/lib.rs" +doctest = false + +[dependencies.arrayvec] +version = "0.7.4" + +[dependencies.once_cell] +version = "1.19.0" + +[dependencies.rayon] +version = "1.10.0" +optional = true + +[dependencies.rgb] +version = "0.8.47" +features = ["bytemuck"] +default-features = false + +[dependencies.thread_local] +version = "1.1.8" +optional = true + +[dev-dependencies.lodepng] +version = "3.10" + +[profile.release] +debug = 0 +panic = "abort" diff --git a/SPECS/rust-imagequant-4/rust-imagequant-4.spec b/SPECS/rust-imagequant-4/rust-imagequant-4.spec new file mode 100644 index 0000000000..1520c67566 --- /dev/null +++ b/SPECS/rust-imagequant-4/rust-imagequant-4.spec @@ -0,0 +1,53 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name imagequant +%global full_version 4.4.1 +%global pkgname imagequant-4 + +Name: rust-imagequant-4 +Version: 4.4.1 +Release: %autorelease +Summary: Rust crate "imagequant" +License: GPL-3.0-or-later +URL: https://pngquant.org/lib +#!RemoteAsset: sha256:caf5d73b959dfbe5d6b5cd3ca8de5265c7bc58297f20560a60a1d2ba6a19991f +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(arrayvec-0.7/default) >= 0.7.4 +Requires: crate(once-cell-1/default) >= 1.19.0 +Requires: crate(rgb-0.8/bytemuck) >= 0.8.47 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/internal-c-ffi) = %{version} +Provides: crate(%{pkgname}/large-palettes) = %{version} + +%description +For lossy PNG compression and high-quality GIF images Dual-licensed like pngquant. See https://pngquant.org for details. +Source code for takopackized Rust crate "imagequant" + +%package -n %{name}+threads +Summary: Convert 24/32-bit images to 8-bit palette with alpha channel - feature "threads" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(rayon-1/default) >= 1.10.0 +Requires: crate(thread-local-1/default) >= 1.1.8 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/threads) = %{version} + +%description -n %{name}+threads +For lossy PNG compression and high-quality GIF images Dual-licensed like pngquant. See https://pngquant.org for details. +This metapackage enables feature "threads" for the Rust imagequant crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 339554af638a7ed7ea5b8d88f24ceef168bd4b62 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:08:12 +0800 Subject: [PATCH 14/45] SPECS: Add rust-ordered-channel-1. Signed-off-by: misaka00251 --- SPECS/rust-ordered-channel-1/Cargo.toml | 44 +++++++++++++++++++ .../rust-ordered-channel-1.spec | 42 ++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 SPECS/rust-ordered-channel-1/Cargo.toml create mode 100644 SPECS/rust-ordered-channel-1/rust-ordered-channel-1.spec diff --git a/SPECS/rust-ordered-channel-1/Cargo.toml b/SPECS/rust-ordered-channel-1/Cargo.toml new file mode 100644 index 0000000000..d075b59068 --- /dev/null +++ b/SPECS/rust-ordered-channel-1/Cargo.toml @@ -0,0 +1,44 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65" +name = "ordered-channel" +version = "1.2.0" +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "A channel that always receives messages in the correct order, even if they were sent out of order" +readme = "README.md" +keywords = [ + "queue", + "heap", + "priority", + "sequential", +] +categories = ["concurrency"] +license = "MIT OR Apache-2.0" +repository = "https://gitlab.com/kornelski/ordered-channel" + +[features] +crossbeam-channel = ["dep:crossbeam-channel"] + +[lib] +name = "ordered_channel" +path = "src/lib.rs" + +[dependencies.crossbeam-channel] +version = "0.5.14" +optional = true diff --git a/SPECS/rust-ordered-channel-1/rust-ordered-channel-1.spec b/SPECS/rust-ordered-channel-1/rust-ordered-channel-1.spec new file mode 100644 index 0000000000..56d89448fc --- /dev/null +++ b/SPECS/rust-ordered-channel-1/rust-ordered-channel-1.spec @@ -0,0 +1,42 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name ordered-channel +%global full_version 1.2.0 +%global pkgname ordered-channel-1 + +Name: rust-ordered-channel-1 +Version: 1.2.0 +Release: %autorelease +Summary: Rust crate "ordered-channel" +License: MIT OR Apache-2.0 +URL: https://gitlab.com/kornelski/ordered-channel +#!RemoteAsset: sha256:95be4d57809897b5a7539fc15a7dfe0e84141bc3dfaa2e9b1b27caa90acf61ab +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "ordered-channel" + +%package -n %{name}+crossbeam-channel +Summary: Channel that always receives messages in the correct order, even if they were sent out of order - feature "crossbeam-channel" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(crossbeam-channel-0.5/default) >= 0.5.14 +Provides: crate(%{pkgname}/crossbeam-channel) = %{version} + +%description -n %{name}+crossbeam-channel +This metapackage enables feature "crossbeam-channel" for the Rust ordered-channel crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 581565743efe7988db46aa47dd8fb7b301fef680 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:09:05 +0800 Subject: [PATCH 15/45] SPECS: Add rust-resize-0.8. Signed-off-by: misaka00251 --- SPECS/rust-resize-0.8/Cargo.toml | 104 +++++++++++++++++++++ SPECS/rust-resize-0.8/rust-resize-0.8.spec | 65 +++++++++++++ 2 files changed, 169 insertions(+) create mode 100644 SPECS/rust-resize-0.8/Cargo.toml create mode 100644 SPECS/rust-resize-0.8/rust-resize-0.8.spec diff --git a/SPECS/rust-resize-0.8/Cargo.toml b/SPECS/rust-resize-0.8/Cargo.toml new file mode 100644 index 0000000000..80d11aff77 --- /dev/null +++ b/SPECS/rust-resize-0.8/Cargo.toml @@ -0,0 +1,104 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2024" +rust-version = "1.85" +name = "resize" +version = "0.8.9" +authors = [ + "Kornel ", + "Kagami Hiiragi ", +] +build = false +include = [ + "Cargo.toml", + "README.md", + "LICENSE", + "src/*.rs", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Simple image resampling library in pure Rust." +homepage = "https://github.com/PistonDevelopers/resize" +documentation = "https://docs.rs/resize" +readme = "README.md" +keywords = [ + "resize", + "scale", + "resample", + "image", + "graphics", +] +categories = [ + "graphics", + "multimedia::images", + "no-std", +] +license = "MIT" +repository = "https://github.com/PistonDevelopers/resize.git" + +[package.metadata.docs.rs] +targets = ["x86_64-unknown-linux-gnu"] +rustdoc-args = [ + "--cfg", + "docsrs", + "--generate-link-to-definition", +] + +[badges.maintenance] +status = "actively-developed" + +[features] +default = [ + "std", + "rayon", +] +no_std = [ + "dep:libm", + "dep:hashbrown", +] +rayon = [ + "dep:rayon", + "std", +] +std = [] + +[lib] +name = "resize" +path = "src/lib.rs" + +[dependencies.hashbrown] +version = "0.15" +optional = true + +[dependencies.libm] +version = "0.2.16" +optional = true + +[dependencies.rayon] +version = "1.11.0" +optional = true + +[dependencies.rgb] +version = "0.8.52" +default-features = false + +[dev-dependencies.png] +version = "0.17.14" + +[dev-dependencies.rgb] +version = "0.8.52" +features = ["bytemuck"] +default-features = false diff --git a/SPECS/rust-resize-0.8/rust-resize-0.8.spec b/SPECS/rust-resize-0.8/rust-resize-0.8.spec new file mode 100644 index 0000000000..8ca5954aa9 --- /dev/null +++ b/SPECS/rust-resize-0.8/rust-resize-0.8.spec @@ -0,0 +1,65 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name resize +%global full_version 0.8.9 +%global pkgname resize-0.8 + +Name: rust-resize-0.8 +Version: 0.8.9 +Release: %autorelease +Summary: Rust crate "resize" +License: MIT +URL: https://github.com/PistonDevelopers/resize +#!RemoteAsset: sha256:71725ecd5e0197b54fe859055b108688472ab6a358f8fbe5cee4a556b1b5bfea +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(rgb-0.8) >= 0.8.52 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "resize" + +%package -n %{name}+default +Summary: Simple image resampling library in pure Rust - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/rayon) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust resize crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+no-std +Summary: Simple image resampling library in pure Rust - feature "no_std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(hashbrown-0.15/default) >= 0.15.0 +Requires: crate(libm-0.2/default) >= 0.2.16 +Provides: crate(%{pkgname}/no-std) = %{version} + +%description -n %{name}+no-std +This metapackage enables feature "no_std" for the Rust resize crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+rayon +Summary: Simple image resampling library in pure Rust - feature "rayon" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Requires: crate(rayon-1/default) >= 1.11.0 +Provides: crate(%{pkgname}/rayon) = %{version} + +%description -n %{name}+rayon +This metapackage enables feature "rayon" for the Rust resize crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 0d0b2e6ba457ac83300dea94ffcbf8caf24ec12d Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:14:13 +0800 Subject: [PATCH 16/45] SPECS: Add rust-yuv-0.1. Signed-off-by: misaka00251 --- SPECS/rust-yuv-0.1/Cargo.toml | 58 ++++++++++++++++++++++++++++ SPECS/rust-yuv-0.1/rust-yuv-0.1.spec | 38 ++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 SPECS/rust-yuv-0.1/Cargo.toml create mode 100644 SPECS/rust-yuv-0.1/rust-yuv-0.1.spec diff --git a/SPECS/rust-yuv-0.1/Cargo.toml b/SPECS/rust-yuv-0.1/Cargo.toml new file mode 100644 index 0000000000..6c5a35b9ed --- /dev/null +++ b/SPECS/rust-yuv-0.1/Cargo.toml @@ -0,0 +1,58 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2024" +rust-version = "1.85" +name = "yuv" +version = "0.1.10" +authors = ["Kornel Lesiński "] +build = false +include = [ + "/Cargo.toml", + "/README.md", + "/src/*.rs", + "LICENSE", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Basic conversion between various YUV (YCbCr) formats and RGB" +homepage = "https://lib.rs/crates/yuv" +readme = "README.md" +keywords = [ + "ycbcr", + "rec709", + "bt601", + "color", + "rgb", +] +categories = ["multimedia::encoding"] +license = "BSD-2-Clause" +repository = "https://github.com/kornelski/yuv.git" + +[features] +default = ["std"] +no_std = [] +std = [] + +[lib] +name = "yuv" +path = "src/lib.rs" + +[dependencies.num-traits] +version = "0.2.19" + +[dependencies.rgb] +version = "0.8.52" +default-features = false diff --git a/SPECS/rust-yuv-0.1/rust-yuv-0.1.spec b/SPECS/rust-yuv-0.1/rust-yuv-0.1.spec new file mode 100644 index 0000000000..66b71ed0fd --- /dev/null +++ b/SPECS/rust-yuv-0.1/rust-yuv-0.1.spec @@ -0,0 +1,38 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name yuv +%global full_version 0.1.10 +%global pkgname yuv-0.1 + +Name: rust-yuv-0.1 +Version: 0.1.10 +Release: %autorelease +Summary: Rust crate "yuv" +License: BSD-2-Clause +URL: https://lib.rs/crates/yuv +#!RemoteAsset: sha256:adb00ec278d3f05b635a766c22205efb5825592d93c955c8021e1dfe21de5a6d +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(num-traits-0.2/default) >= 0.2.19 +Requires: crate(rgb-0.8) >= 0.8.52 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/no-std) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "yuv" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 965df4af8fbf1f5e7e115baf4d5a5b6ca3bf931f Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:15:41 +0800 Subject: [PATCH 17/45] SPECS: Add rust-pico-args-0.5. Signed-off-by: misaka00251 --- SPECS/rust-pico-args-0.5/Cargo.toml | 32 +++++++++++++++++ .../rust-pico-args-0.5.spec | 36 +++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 SPECS/rust-pico-args-0.5/Cargo.toml create mode 100644 SPECS/rust-pico-args-0.5/rust-pico-args-0.5.spec diff --git a/SPECS/rust-pico-args-0.5/Cargo.toml b/SPECS/rust-pico-args-0.5/Cargo.toml new file mode 100644 index 0000000000..13fe196d7c --- /dev/null +++ b/SPECS/rust-pico-args-0.5/Cargo.toml @@ -0,0 +1,32 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "pico-args" +version = "0.5.0" +authors = ["Yevhenii Reizner "] +exclude = ["test-apps/**"] +description = "An ultra simple CLI arguments parser." +documentation = "https://docs.rs/pico-args/" +readme = "README.md" +keywords = [ + "args", + "cli", +] +license = "MIT" +repository = "https://github.com/RazrFalcon/pico-args" + +[features] +combined-flags = [] +default = [] +eq-separator = [] +short-space-opt = [] diff --git a/SPECS/rust-pico-args-0.5/rust-pico-args-0.5.spec b/SPECS/rust-pico-args-0.5/rust-pico-args-0.5.spec new file mode 100644 index 0000000000..9c58c5199c --- /dev/null +++ b/SPECS/rust-pico-args-0.5/rust-pico-args-0.5.spec @@ -0,0 +1,36 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name pico-args +%global full_version 0.5.0 +%global pkgname pico-args-0.5 + +Name: rust-pico-args-0.5 +Version: 0.5.0 +Release: %autorelease +Summary: Rust crate "pico-args" +License: MIT +URL: https://github.com/RazrFalcon/pico-args +#!RemoteAsset: sha256:5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/combined-flags) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/eq-separator) = %{version} +Provides: crate(%{pkgname}/short-space-opt) = %{version} + +%description +Source code for takopackized Rust crate "pico-args" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From ca83ecd24e57dca8f28fb109c18466ff32ab02d2 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:16:40 +0800 Subject: [PATCH 18/45] SPECS: Add rust-svgtypes-0.15. Signed-off-by: misaka00251 --- SPECS/rust-svgtypes-0.15/Cargo.toml | 51 +++++++++++++++++++ .../rust-svgtypes-0.15.spec | 36 +++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 SPECS/rust-svgtypes-0.15/Cargo.toml create mode 100644 SPECS/rust-svgtypes-0.15/rust-svgtypes-0.15.spec diff --git a/SPECS/rust-svgtypes-0.15/Cargo.toml b/SPECS/rust-svgtypes-0.15/Cargo.toml new file mode 100644 index 0000000000..2191788e8f --- /dev/null +++ b/SPECS/rust-svgtypes-0.15/Cargo.toml @@ -0,0 +1,51 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65" +name = "svgtypes" +version = "0.15.3" +build = false +exclude = [ + ".github", + ".clippy.toml", + ".gitignore", + ".typos.toml", + "benches/", + "codegen/", + "fuzz/", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "SVG types parser." +readme = "README.md" +keywords = [ + "svg", + "parser", + "tokenizer", +] +categories = ["parser-implementations"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/linebender/svgtypes" + +[lib] +name = "svgtypes" +path = "src/lib.rs" + +[dependencies.kurbo] +version = "0.11" + +[dependencies.siphasher] +version = "1.0" diff --git a/SPECS/rust-svgtypes-0.15/rust-svgtypes-0.15.spec b/SPECS/rust-svgtypes-0.15/rust-svgtypes-0.15.spec new file mode 100644 index 0000000000..100562fd58 --- /dev/null +++ b/SPECS/rust-svgtypes-0.15/rust-svgtypes-0.15.spec @@ -0,0 +1,36 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name svgtypes +%global full_version 0.15.3 +%global pkgname svgtypes-0.15 + +Name: rust-svgtypes-0.15 +Version: 0.15.3 +Release: %autorelease +Summary: Rust crate "svgtypes" +License: Apache-2.0 OR MIT +URL: https://github.com/linebender/svgtypes +#!RemoteAsset: sha256:68c7541fff44b35860c1a7a47a7cadf3e4a304c457b58f9870d9706ece028afc +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(kurbo-0.11/default) >= 0.11.0 +Requires: crate(siphasher-1/default) >= 1.0.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "svgtypes" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From cdb89782f1e614d3a720b9f25af5cb54155856c1 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:17:42 +0800 Subject: [PATCH 19/45] SPECS: Add rust-skrifa-0.31. Signed-off-by: misaka00251 --- SPECS/rust-skrifa-0.31/Cargo.toml | 86 ++++++++++++++++++++ SPECS/rust-skrifa-0.31/rust-skrifa-0.31.spec | 84 +++++++++++++++++++ 2 files changed, 170 insertions(+) create mode 100644 SPECS/rust-skrifa-0.31/Cargo.toml create mode 100644 SPECS/rust-skrifa-0.31/rust-skrifa-0.31.spec diff --git a/SPECS/rust-skrifa-0.31/Cargo.toml b/SPECS/rust-skrifa-0.31/Cargo.toml new file mode 100644 index 0000000000..6a47264b6a --- /dev/null +++ b/SPECS/rust-skrifa-0.31/Cargo.toml @@ -0,0 +1,86 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.75" +name = "skrifa" +version = "0.31.3" +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Metadata reader and glyph scaler for OpenType fonts." +readme = "README.md" +categories = [ + "text-processing", + "parsing", + "graphics", +] +license = "MIT OR Apache-2.0" +repository = "https://github.com/googlefonts/fontations" + +[package.metadata.docs.rs] +all-features = true + +[features] +autohint_shaping = [] +default = [ + "autohint_shaping", + "traversal", +] +libm = [ + "dep:core_maths", + "read-fonts/libm", +] +spec_next = ["read-fonts/spec_next"] +std = ["read-fonts/std"] +traversal = [ + "std", + "read-fonts/experimental_traverse", +] + +[lib] +name = "skrifa" +path = "src/lib.rs" + +[dependencies.bytemuck] +version = "1.13.1" + +[dependencies.core_maths] +version = "0.1" +optional = true + +[dependencies.read-fonts] +version = "0.29.2" +default-features = false + +[dev-dependencies.kurbo] +version = "0.11.0" + +[dev-dependencies.pretty_assertions] +version = "1.3.0" + +[dev-dependencies.read-fonts] +version = "0.29.2" +features = [ + "scaler_test", + "serde", +] +default-features = false + +[dev-dependencies.serde] +version = "1.0" + +[dev-dependencies.serde_json] +version = "1.0" diff --git a/SPECS/rust-skrifa-0.31/rust-skrifa-0.31.spec b/SPECS/rust-skrifa-0.31/rust-skrifa-0.31.spec new file mode 100644 index 0000000000..a520699e31 --- /dev/null +++ b/SPECS/rust-skrifa-0.31/rust-skrifa-0.31.spec @@ -0,0 +1,84 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name skrifa +%global full_version 0.31.3 +%global pkgname skrifa-0.31 + +Name: rust-skrifa-0.31 +Version: 0.31.3 +Release: %autorelease +Summary: Rust crate "skrifa" +License: MIT OR Apache-2.0 +URL: https://github.com/googlefonts/fontations +#!RemoteAsset: sha256:dbeb4ca4399663735553a09dd17ce7e49a0a0203f03b706b39628c4d913a8607 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(bytemuck-1/default) >= 1.13.1 +Requires: crate(read-fonts-0.29) >= 0.29.2 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/autohint-shaping) = %{version} + +%description +Source code for takopackized Rust crate "skrifa" + +%package -n %{name}+default +Summary: Metadata reader and glyph scaler for OpenType fonts - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/autohint-shaping) = %{version} +Requires: crate(%{pkgname}/traversal) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust skrifa crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+libm +Summary: Metadata reader and glyph scaler for OpenType fonts - feature "libm" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(core-maths-0.1/default) >= 0.1.0 +Requires: crate(read-fonts-0.29/libm) >= 0.29.2 +Provides: crate(%{pkgname}/libm) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust skrifa crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+spec-next +Summary: Metadata reader and glyph scaler for OpenType fonts - feature "spec_next" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(read-fonts-0.29/spec-next) >= 0.29.2 +Provides: crate(%{pkgname}/spec-next) = %{version} + +%description -n %{name}+spec-next +This metapackage enables feature "spec_next" for the Rust skrifa crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Metadata reader and glyph scaler for OpenType fonts - feature "std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(read-fonts-0.29/std) >= 0.29.2 +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust skrifa crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+traversal +Summary: Metadata reader and glyph scaler for OpenType fonts - feature "traversal" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Requires: crate(read-fonts-0.29/experimental-traverse) >= 0.29.2 +Provides: crate(%{pkgname}/traversal) = %{version} + +%description -n %{name}+traversal +This metapackage enables feature "traversal" for the Rust skrifa crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From b33ae080809903de9e101feb6a60f6aba299f9a6 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:18:29 +0800 Subject: [PATCH 20/45] SPECS: Add rust-yazi-0.2. Signed-off-by: misaka00251 --- SPECS/rust-yazi-0.2/Cargo.toml | 45 ++++++++++++++++++++++++++ SPECS/rust-yazi-0.2/rust-yazi-0.2.spec | 34 +++++++++++++++++++ 2 files changed, 79 insertions(+) create mode 100644 SPECS/rust-yazi-0.2/Cargo.toml create mode 100644 SPECS/rust-yazi-0.2/rust-yazi-0.2.spec diff --git a/SPECS/rust-yazi-0.2/Cargo.toml b/SPECS/rust-yazi-0.2/Cargo.toml new file mode 100644 index 0000000000..f08a61082e --- /dev/null +++ b/SPECS/rust-yazi-0.2/Cargo.toml @@ -0,0 +1,45 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "yazi" +version = "0.2.1" +authors = ["Chad Brokaw "] +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "DEFLATE/zlib compression and decompression." +homepage = "https://github.com/dfrg/yazi" +readme = "README.md" +keywords = [ + "deflate", + "zlib", + "compression", + "decompression", +] +categories = ["compression"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/dfrg/yazi" + +[lib] +name = "yazi" +path = "src/lib.rs" + +[features] +default = ["std"] +std = [] + +[target.'cfg(target_family = "wasm")'.dev-dependencies.wasm-bindgen-test] +version = "0.3.37" diff --git a/SPECS/rust-yazi-0.2/rust-yazi-0.2.spec b/SPECS/rust-yazi-0.2/rust-yazi-0.2.spec new file mode 100644 index 0000000000..703063dea3 --- /dev/null +++ b/SPECS/rust-yazi-0.2/rust-yazi-0.2.spec @@ -0,0 +1,34 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name yazi +%global full_version 0.2.1 +%global pkgname yazi-0.2 + +Name: rust-yazi-0.2 +Version: 0.2.1 +Release: %autorelease +Summary: Rust crate "yazi" +License: Apache-2.0 OR MIT +URL: https://github.com/dfrg/yazi +#!RemoteAsset: sha256:e01738255b5a16e78bbb83e7fbba0a1e7dd506905cfc53f4622d89015a03fbb5 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "yazi" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 5889ebe332c86a7b127e16cafa04796192e3e9cd Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:19:21 +0800 Subject: [PATCH 21/45] SPECS: Add rust-zeno-0.3. Signed-off-by: misaka00251 --- SPECS/rust-zeno-0.3/Cargo.toml | 65 ++++++++++++++++++++++++++ SPECS/rust-zeno-0.3/rust-zeno-0.3.spec | 53 +++++++++++++++++++++ 2 files changed, 118 insertions(+) create mode 100644 SPECS/rust-zeno-0.3/Cargo.toml create mode 100644 SPECS/rust-zeno-0.3/rust-zeno-0.3.spec diff --git a/SPECS/rust-zeno-0.3/Cargo.toml b/SPECS/rust-zeno-0.3/Cargo.toml new file mode 100644 index 0000000000..12395f4e7a --- /dev/null +++ b/SPECS/rust-zeno-0.3/Cargo.toml @@ -0,0 +1,65 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "zeno" +version = "0.3.3" +authors = ["Chad Brokaw "] +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "High performance, low level 2D path rasterization." +homepage = "https://github.com/dfrg/zeno" +readme = "README.md" +keywords = [ + "path", + "rasterizer", + "svg", +] +categories = ["graphics"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/dfrg/zeno" + +[features] +default = [ + "eval", + "std", +] +eval = [] +libm = ["dep:libm"] +std = [] + +[lib] +name = "zeno" +path = "src/lib.rs" + +[[bench]] +name = "render" +path = "benches/render.rs" +harness = false + +[dependencies.libm] +version = "0.2.7" +optional = true +default-features = false + +[dev-dependencies.criterion] +version = "0.5.1" +features = ["cargo_bench_support"] +default-features = false + +[dev-dependencies.fastrand] +version = "2.0.1" +default-features = false diff --git a/SPECS/rust-zeno-0.3/rust-zeno-0.3.spec b/SPECS/rust-zeno-0.3/rust-zeno-0.3.spec new file mode 100644 index 0000000000..9dee7d44bc --- /dev/null +++ b/SPECS/rust-zeno-0.3/rust-zeno-0.3.spec @@ -0,0 +1,53 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name zeno +%global full_version 0.3.3 +%global pkgname zeno-0.3 + +Name: rust-zeno-0.3 +Version: 0.3.3 +Release: %autorelease +Summary: Rust crate "zeno" +License: Apache-2.0 OR MIT +URL: https://github.com/dfrg/zeno +#!RemoteAsset: sha256:6df3dc4292935e51816d896edcd52aa30bc297907c26167fec31e2b0c6a32524 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/eval) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "zeno" + +%package -n %{name}+default +Summary: High performance, low level 2D path rasterization - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/eval) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust zeno crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+libm +Summary: High performance, low level 2D path rasterization - feature "libm" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(libm-0.2) >= 0.2.7 +Provides: crate(%{pkgname}/libm) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust zeno crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From f320ad16960da2bcff34040191c205b8f687a2a5 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:20:18 +0800 Subject: [PATCH 22/45] SPECS: Add rust-tiny-skia-path-0.11. Signed-off-by: misaka00251 --- SPECS/rust-tiny-skia-path-0.11/Cargo.toml | 48 ++++++++++++++++++ .../rust-tiny-skia-path-0.11.spec | 50 +++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 SPECS/rust-tiny-skia-path-0.11/Cargo.toml create mode 100644 SPECS/rust-tiny-skia-path-0.11/rust-tiny-skia-path-0.11.spec diff --git a/SPECS/rust-tiny-skia-path-0.11/Cargo.toml b/SPECS/rust-tiny-skia-path-0.11/Cargo.toml new file mode 100644 index 0000000000..518b63f942 --- /dev/null +++ b/SPECS/rust-tiny-skia-path-0.11/Cargo.toml @@ -0,0 +1,48 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "tiny-skia-path" +version = "0.11.4" +authors = ["Yevhenii Reizner "] +description = "A tiny-skia Bezier path implementation" +documentation = "https://docs.rs/tiny-skia-path/" +readme = "README.md" +keywords = [ + "graphics", + "bezier", + "path", + "dash", + "stroke", +] +categories = ["graphics"] +license = "BSD-3-Clause" +repository = "https://github.com/RazrFalcon/tiny-skia/tree/master/path" + +[dependencies.arrayref] +version = "0.3.6" + +[dependencies.bytemuck] +version = "1.4" + +[dependencies.libm] +version = "0.2.1" +optional = true + +[dependencies.strict-num] +version = "0.1" +default-features = false + +[features] +default = ["std"] +no-std-float = ["libm"] +std = [] diff --git a/SPECS/rust-tiny-skia-path-0.11/rust-tiny-skia-path-0.11.spec b/SPECS/rust-tiny-skia-path-0.11/rust-tiny-skia-path-0.11.spec new file mode 100644 index 0000000000..71225d47c0 --- /dev/null +++ b/SPECS/rust-tiny-skia-path-0.11/rust-tiny-skia-path-0.11.spec @@ -0,0 +1,50 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name tiny-skia-path +%global full_version 0.11.4 +%global pkgname tiny-skia-path-0.11 + +Name: rust-tiny-skia-path-0.11 +Version: 0.11.4 +Release: %autorelease +Summary: Rust crate "tiny-skia-path" +License: BSD-3-Clause +URL: https://github.com/RazrFalcon/tiny-skia/tree/master/path +#!RemoteAsset: sha256:9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(arrayref-0.3/default) >= 0.3.6 +Requires: crate(bytemuck-1/default) >= 1.4.0 +Requires: crate(strict-num-0.1) >= 0.1.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "tiny-skia-path" + +%package -n %{name}+libm +Summary: Tiny-skia Bezier path implementation - feature "libm" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(libm-0.2/default) >= 0.2.1 +Provides: crate(%{pkgname}/libm) = %{version} +Provides: crate(%{pkgname}/no-std-float) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust tiny-skia-path crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "no-std-float" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 6f411e16b85969bd724c2241c6ad89768957488d Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:21:04 +0800 Subject: [PATCH 23/45] SPECS: Add rust-simplecss-0.2. Signed-off-by: misaka00251 --- SPECS/rust-simplecss-0.2/Cargo.toml | 146 ++++++++++++++++++ .../rust-simplecss-0.2.spec | 46 ++++++ 2 files changed, 192 insertions(+) create mode 100644 SPECS/rust-simplecss-0.2/Cargo.toml create mode 100644 SPECS/rust-simplecss-0.2/rust-simplecss-0.2.spec diff --git a/SPECS/rust-simplecss-0.2/Cargo.toml b/SPECS/rust-simplecss-0.2/Cargo.toml new file mode 100644 index 0000000000..724a53eef0 --- /dev/null +++ b/SPECS/rust-simplecss-0.2/Cargo.toml @@ -0,0 +1,146 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65" +name = "simplecss" +version = "0.2.2" +build = false +exclude = [ + ".github", + ".clippy.toml", + ".gitignore", + ".typos.toml", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "A simple CSS 2 parser and selector." +readme = "README.md" +keywords = [ + "css", + "parser", + "selector", +] +categories = ["parser-implementations"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/linebender/simplecss" + +[lib] +name = "simplecss" +path = "src/lib.rs" + +[[example]] +name = "parse" +path = "examples/parse.rs" + +[[example]] +name = "select" +path = "examples/select.rs" + +[[test]] +name = "declaration_tokenizer" +path = "tests/declaration_tokenizer.rs" + +[[test]] +name = "select" +path = "tests/select.rs" + +[[test]] +name = "selector_tokenizer" +path = "tests/selector_tokenizer.rs" + +[[test]] +name = "specificity" +path = "tests/specificity.rs" + +[[test]] +name = "stylesheet" +path = "tests/stylesheet.rs" + +[[test]] +name = "warnings" +path = "tests/warnings.rs" + +[dependencies.log] +version = "0.4.22" +default-features = false + +[dev-dependencies.env_logger] +version = "0.11.6" +default-features = false + +[dev-dependencies.roxmltree] +version = "0.20.0" + +[features] +default = ["std"] +std = ["log/std"] + +[lints.clippy] +allow_attributes = "warn" +allow_attributes_without_reason = "warn" +cargo_common_metadata = "warn" +cast_possible_truncation = "warn" +collection_is_never_read = "warn" +dbg_macro = "warn" +debug_assert_with_mut_call = "warn" +doc_markdown = "warn" +exhaustive_enums = "warn" +fn_to_numeric_cast_any = "warn" +infinite_loop = "warn" +large_include_file = "warn" +large_stack_arrays = "warn" +match_same_arms = "warn" +mismatching_type_param_order = "warn" +missing_assert_message = "warn" +missing_errors_doc = "warn" +missing_fields_in_debug = "warn" +missing_panics_doc = "warn" +negative_feature_names = "warn" +partial_pub_fields = "warn" +redundant_feature_names = "warn" +return_self_not_must_use = "warn" +same_functions_in_if_condition = "warn" +semicolon_if_nothing_returned = "warn" +shadow_unrelated = "warn" +should_panic_without_expect = "warn" +todo = "warn" +too_many_arguments = "allow" +unseparated_literal_suffix = "warn" +use_self = "warn" +wildcard_dependencies = "warn" +wildcard_imports = "warn" + +[lints.rust] +elided_lifetimes_in_paths = "warn" +keyword_idents_2024 = "forbid" +let_underscore_drop = "warn" +missing_debug_implementations = "warn" +missing_docs = "warn" +non_ascii_idents = "forbid" +non_local_definitions = "forbid" +single_use_lifetimes = "warn" +trivial_numeric_casts = "warn" +unexpected_cfgs = "warn" +unit_bindings = "warn" +unnameable_types = "warn" +unreachable_pub = "warn" +unsafe_code = "forbid" +unsafe_op_in_unsafe_fn = "forbid" +unused_import_braces = "warn" +unused_lifetimes = "warn" +unused_macro_rules = "warn" +unused_qualifications = "warn" +variant_size_differences = "warn" diff --git a/SPECS/rust-simplecss-0.2/rust-simplecss-0.2.spec b/SPECS/rust-simplecss-0.2/rust-simplecss-0.2.spec new file mode 100644 index 0000000000..c9b090e47c --- /dev/null +++ b/SPECS/rust-simplecss-0.2/rust-simplecss-0.2.spec @@ -0,0 +1,46 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name simplecss +%global full_version 0.2.2 +%global pkgname simplecss-0.2 + +Name: rust-simplecss-0.2 +Version: 0.2.2 +Release: %autorelease +Summary: Rust crate "simplecss" +License: Apache-2.0 OR MIT +URL: https://github.com/linebender/simplecss +#!RemoteAsset: sha256:7a9c6883ca9c3c7c90e888de77b7a5c849c779d25d74a1269b0218b14e8b136c +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(log-0.4) >= 0.4.22 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "simplecss" + +%package -n %{name}+std +Summary: Simple CSS 2 parser and selector - feature "std" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(log-0.4/std) >= 0.4.22 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust simplecss crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 445e5220575e6b21a47c39a2e70ccf843e925d4d Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:21:47 +0800 Subject: [PATCH 24/45] SPECS: Add rust-zune-jpeg-0.4. Signed-off-by: misaka00251 --- SPECS/rust-zune-jpeg-0.4/Cargo.toml | 65 +++++++++++++++++++ .../rust-zune-jpeg-0.4.spec | 65 +++++++++++++++++++ 2 files changed, 130 insertions(+) create mode 100644 SPECS/rust-zune-jpeg-0.4/Cargo.toml create mode 100644 SPECS/rust-zune-jpeg-0.4/rust-zune-jpeg-0.4.spec diff --git a/SPECS/rust-zune-jpeg-0.4/Cargo.toml b/SPECS/rust-zune-jpeg-0.4/Cargo.toml new file mode 100644 index 0000000000..5e2ca5a0f5 --- /dev/null +++ b/SPECS/rust-zune-jpeg-0.4/Cargo.toml @@ -0,0 +1,65 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "zune-jpeg" +version = "0.4.21" +authors = ["caleb "] +build = false +exclude = [ + "/benches/images/*", + "/tests/*", + "/.idea/*", + "/.gradle/*", + "/test-images/*", + "fuzz/*", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "A fast, correct and safe jpeg decoder" +readme = "README.md" +keywords = [ + "jpeg", + "jpeg-decoder", + "decoder", +] +categories = ["multimedia::images"] +license = "MIT OR Apache-2.0 OR Zlib" +repository = "https://github.com/etemesi254/zune-image/tree/dev/crates/zune-jpeg" + +[features] +default = [ + "x86", + "neon", + "std", +] +log = ["zune-core/log"] +neon = [] +std = ["zune-core/std"] +x86 = [] + +[lib] +name = "zune_jpeg" +path = "src/lib.rs" + +[dependencies.zune-core] +version = "0.4" + +[dev-dependencies] + +[lints.rust.unexpected_cfgs] +level = "warn" +priority = 0 +check-cfg = ["cfg(fuzzing)"] diff --git a/SPECS/rust-zune-jpeg-0.4/rust-zune-jpeg-0.4.spec b/SPECS/rust-zune-jpeg-0.4/rust-zune-jpeg-0.4.spec new file mode 100644 index 0000000000..3f38c2ec87 --- /dev/null +++ b/SPECS/rust-zune-jpeg-0.4/rust-zune-jpeg-0.4.spec @@ -0,0 +1,65 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name zune-jpeg +%global full_version 0.4.21 +%global pkgname zune-jpeg-0.4 + +Name: rust-zune-jpeg-0.4 +Version: 0.4.21 +Release: %autorelease +Summary: Rust crate "zune-jpeg" +License: MIT OR Apache-2.0 OR Zlib +URL: https://github.com/etemesi254/zune-image/tree/dev/crates/zune-jpeg +#!RemoteAsset: sha256:29ce2c8a9384ad323cf564b67da86e21d3cfdff87908bc1223ed5c99bc792713 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(zune-core-0.4/default) >= 0.4.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/neon) = %{version} +Provides: crate(%{pkgname}/x86) = %{version} + +%description +Source code for takopackized Rust crate "zune-jpeg" + +%package -n %{name}+default +Summary: Fast, correct and safe jpeg decoder - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/neon) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Requires: crate(%{pkgname}/x86) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust zune-jpeg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+log +Summary: Fast, correct and safe jpeg decoder - feature "log" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(zune-core-0.4/log) >= 0.4.0 +Provides: crate(%{pkgname}/log) = %{version} + +%description -n %{name}+log +This metapackage enables feature "log" for the Rust zune-jpeg crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Fast, correct and safe jpeg decoder - feature "std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(zune-core-0.4/std) >= 0.4.0 +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust zune-jpeg crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 3f20e2ab19b06fcbdb3c2885f8f7c4bac03af763 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:22:39 +0800 Subject: [PATCH 25/45] SPECS: Add rust-kurbo-0.11. Signed-off-by: misaka00251 --- SPECS/rust-kurbo-0.11/Cargo.toml | 195 +++++++++++++++++++++ SPECS/rust-kurbo-0.11/rust-kurbo-0.11.spec | 96 ++++++++++ 2 files changed, 291 insertions(+) create mode 100644 SPECS/rust-kurbo-0.11/Cargo.toml create mode 100644 SPECS/rust-kurbo-0.11/rust-kurbo-0.11.spec diff --git a/SPECS/rust-kurbo-0.11/Cargo.toml b/SPECS/rust-kurbo-0.11/Cargo.toml new file mode 100644 index 0000000000..8d1e64bf5d --- /dev/null +++ b/SPECS/rust-kurbo-0.11/Cargo.toml @@ -0,0 +1,195 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.65" +name = "kurbo" +version = "0.11.3" +authors = ["Raph Levien "] +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "A 2D curves library" +readme = "README.md" +keywords = [ + "graphics", + "curve", + "curves", + "bezier", + "geometry", +] +categories = ["graphics"] +license = "Apache-2.0 OR MIT" +repository = "https://github.com/linebender/kurbo" + +[package.metadata.docs.rs] +all-features = true +default-target = "x86_64-unknown-linux-gnu" +targets = [] + +[features] +default = ["std"] +euclid = ["dep:euclid"] +libm = [ + "dep:libm", + "euclid?/libm", +] +mint = ["dep:mint"] +schemars = [ + "schemars/smallvec", + "dep:schemars", +] +serde = [ + "smallvec/serde", + "dep:serde", +] +std = ["euclid?/std"] + +[lib] +name = "kurbo" +path = "src/lib.rs" + +[[example]] +name = "arclen_accuracy" +path = "examples/arclen_accuracy.rs" + +[[example]] +name = "circle" +path = "examples/circle.rs" + +[[example]] +name = "cubic_arclen" +path = "examples/cubic_arclen.rs" + +[[example]] +name = "ellipse" +path = "examples/ellipse.rs" + +[[example]] +name = "fit_poly" +path = "examples/fit_poly.rs" + +[[example]] +name = "offset" +path = "examples/offset.rs" + +[[example]] +name = "quad_intersect" +path = "examples/quad_intersect.rs" + +[[example]] +name = "simplify" +path = "examples/simplify.rs" + +[dependencies.arrayvec] +version = "0.7.6" +default-features = false + +[dependencies.euclid] +version = "0.22" +optional = true +default-features = false + +[dependencies.libm] +version = "0.2.15" +optional = true + +[dependencies.mint] +version = "0.5.9" +optional = true + +[dependencies.schemars] +version = "0.8.22" +optional = true + +[dependencies.serde] +version = "1.0.219" +features = [ + "alloc", + "derive", +] +optional = true +default-features = false + +[dependencies.smallvec] +version = "1.15.1" + +[dev-dependencies.rand] +version = "0.9.2" + +[target.wasm32-unknown-unknown.dev-dependencies.getrandom] +version = "0.3.3" +features = ["wasm_js"] + +[lints.clippy] +allow_attributes = "warn" +allow_attributes_without_reason = "warn" +cargo_common_metadata = "warn" +cast_possible_truncation = "warn" +collection_is_never_read = "warn" +dbg_macro = "warn" +debug_assert_with_mut_call = "warn" +doc_markdown = "warn" +exhaustive_enums = "warn" +fn_to_numeric_cast_any = "forbid" +infinite_loop = "warn" +large_include_file = "warn" +large_stack_arrays = "warn" +match_same_arms = "warn" +mismatching_type_param_order = "warn" +missing_assert_message = "warn" +missing_errors_doc = "warn" +missing_fields_in_debug = "warn" +missing_panics_doc = "warn" +negative_feature_names = "warn" +partial_pub_fields = "warn" +redundant_feature_names = "warn" +return_self_not_must_use = "warn" +same_functions_in_if_condition = "warn" +semicolon_if_nothing_returned = "warn" +shadow_unrelated = "warn" +should_panic_without_expect = "warn" +todo = "warn" +trivially_copy_pass_by_ref = "warn" +unseparated_literal_suffix = "warn" +use_self = "warn" +wildcard_dependencies = "warn" +wildcard_imports = "warn" + +[lints.rust] +elided_lifetimes_in_paths = "warn" +keyword_idents_2024 = "forbid" +let_underscore_drop = "warn" +missing_debug_implementations = "warn" +missing_docs = "warn" +non_ascii_idents = "forbid" +non_local_definitions = "forbid" +single_use_lifetimes = "warn" +trivial_numeric_casts = "warn" +unit_bindings = "warn" +unnameable_types = "warn" +unreachable_pub = "warn" +unsafe_code = "forbid" +unsafe_op_in_unsafe_fn = "forbid" +unused_import_braces = "warn" +unused_lifetimes = "warn" +unused_macro_rules = "warn" +unused_qualifications = "warn" +variant_size_differences = "warn" + +[lints.rust.unexpected_cfgs] +level = "warn" +priority = 0 +check-cfg = ["cfg(nightly)"] diff --git a/SPECS/rust-kurbo-0.11/rust-kurbo-0.11.spec b/SPECS/rust-kurbo-0.11/rust-kurbo-0.11.spec new file mode 100644 index 0000000000..7606c4c60a --- /dev/null +++ b/SPECS/rust-kurbo-0.11/rust-kurbo-0.11.spec @@ -0,0 +1,96 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name kurbo +%global full_version 0.11.3 +%global pkgname kurbo-0.11 + +Name: rust-kurbo-0.11 +Version: 0.11.3 +Release: %autorelease +Summary: Rust crate "kurbo" +License: Apache-2.0 OR MIT +URL: https://github.com/linebender/kurbo +#!RemoteAsset: sha256:c62026ae44756f8a599ba21140f350303d4f08dcdcc71b5ad9c9bb8128c13c62 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(arrayvec-0.7) >= 0.7.6 +Requires: crate(smallvec-1/default) >= 1.15.1 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "kurbo" + +%package -n %{name}+euclid +Summary: 2D curves library - feature "euclid" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(euclid-0.22) >= 0.22.0 +Provides: crate(%{pkgname}/euclid) = %{version} + +%description -n %{name}+euclid +This metapackage enables feature "euclid" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+libm +Summary: 2D curves library - feature "libm" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(euclid-0.22/libm) >= 0.22.0 +Requires: crate(libm-0.2/default) >= 0.2.15 +Provides: crate(%{pkgname}/libm) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+mint +Summary: 2D curves library - feature "mint" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(mint-0.5/default) >= 0.5.9 +Provides: crate(%{pkgname}/mint) = %{version} + +%description -n %{name}+mint +This metapackage enables feature "mint" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+schemars +Summary: 2D curves library - feature "schemars" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(schemars-0.8/default) >= 0.8.22 +Requires: crate(schemars-0.8/smallvec) >= 0.8.22 +Provides: crate(%{pkgname}/schemars) = %{version} + +%description -n %{name}+schemars +This metapackage enables feature "schemars" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+serde +Summary: 2D curves library - feature "serde" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(serde-1/alloc) >= 1.0.219 +Requires: crate(serde-1/derive) >= 1.0.219 +Requires: crate(smallvec-1/serde) >= 1.15.1 +Provides: crate(%{pkgname}/serde) = %{version} + +%description -n %{name}+serde +This metapackage enables feature "serde" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: 2D curves library - feature "std" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(euclid-0.22/std) >= 0.22.0 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust kurbo crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From b66de72ba2ac97807f47855a54c44a9eea0a3117 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:23:18 +0800 Subject: [PATCH 26/45] SPECS: Add rust-imagesize-0.13. Signed-off-by: misaka00251 --- SPECS/rust-imagesize-0.13/Cargo.toml | 55 +++++++++++++++++++ .../rust-imagesize-0.13.spec | 33 +++++++++++ 2 files changed, 88 insertions(+) create mode 100644 SPECS/rust-imagesize-0.13/Cargo.toml create mode 100644 SPECS/rust-imagesize-0.13/rust-imagesize-0.13.spec diff --git a/SPECS/rust-imagesize-0.13/Cargo.toml b/SPECS/rust-imagesize-0.13/Cargo.toml new file mode 100644 index 0000000000..98ee3fffee --- /dev/null +++ b/SPECS/rust-imagesize-0.13/Cargo.toml @@ -0,0 +1,55 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "imagesize" +version = "0.13.0" +authors = ["Maid Dog "] +build = false +exclude = ["tests/*"] +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Quick probing of image dimensions without loading the entire file." +documentation = "https://docs.rs/imagesize" +readme = "README.md" +keywords = [ + "dimensions", + "image", + "metadata", + "size", +] +categories = [ + "multimedia", + "multimedia::images", +] +license = "MIT" +repository = "https://github.com/Roughsketch/imagesize" + +[lib] +name = "imagesize" +path = "src/lib.rs" + +[[bench]] +name = "parse_benchmark" +path = "benches/parse_benchmark.rs" +harness = false + +[dependencies] + +[dev-dependencies.criterion] +version = "0.5" +features = ["html_reports"] + +[dev-dependencies.walkdir] +version = "2.3" diff --git a/SPECS/rust-imagesize-0.13/rust-imagesize-0.13.spec b/SPECS/rust-imagesize-0.13/rust-imagesize-0.13.spec new file mode 100644 index 0000000000..4b479dbef2 --- /dev/null +++ b/SPECS/rust-imagesize-0.13/rust-imagesize-0.13.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name imagesize +%global full_version 0.13.0 +%global pkgname imagesize-0.13 + +Name: rust-imagesize-0.13 +Version: 0.13.0 +Release: %autorelease +Summary: Rust crate "imagesize" +License: MIT +URL: https://github.com/Roughsketch/imagesize +#!RemoteAsset: sha256:edcd27d72f2f071c64249075f42e205ff93c9a4c5f6c6da53e79ed9f9832c285 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "imagesize" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 919be166fe4817f8b684494bf517493fe9cc22d4 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:24:27 +0800 Subject: [PATCH 27/45] SPECS: Add rust-roxmltree-0.20. Signed-off-by: misaka00251 --- SPECS/rust-roxmltree-0.20/Cargo.toml | 37 ++++++++++++++++ .../rust-roxmltree-0.20.spec | 44 +++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 SPECS/rust-roxmltree-0.20/Cargo.toml create mode 100644 SPECS/rust-roxmltree-0.20/rust-roxmltree-0.20.spec diff --git a/SPECS/rust-roxmltree-0.20/Cargo.toml b/SPECS/rust-roxmltree-0.20/Cargo.toml new file mode 100644 index 0000000000..dabf7334ab --- /dev/null +++ b/SPECS/rust-roxmltree-0.20/Cargo.toml @@ -0,0 +1,37 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.60" +name = "roxmltree" +version = "0.20.0" +authors = ["Yevhenii Reizner "] +description = "Represent an XML as a read-only tree." +documentation = "https://docs.rs/roxmltree/" +readme = "README.md" +keywords = [ + "xml", + "parser", + "tree", + "dom", +] +categories = ["parser-implementations"] +license = "MIT OR Apache-2.0" +repository = "https://github.com/RazrFalcon/roxmltree" + +[features] +default = [ + "std", + "positions", +] +positions = [] +std = [] diff --git a/SPECS/rust-roxmltree-0.20/rust-roxmltree-0.20.spec b/SPECS/rust-roxmltree-0.20/rust-roxmltree-0.20.spec new file mode 100644 index 0000000000..a6cf9c4c09 --- /dev/null +++ b/SPECS/rust-roxmltree-0.20/rust-roxmltree-0.20.spec @@ -0,0 +1,44 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name roxmltree +%global full_version 0.20.0 +%global pkgname roxmltree-0.20 + +Name: rust-roxmltree-0.20 +Version: 0.20.0 +Release: %autorelease +Summary: Rust crate "roxmltree" +License: MIT OR Apache-2.0 +URL: https://github.com/RazrFalcon/roxmltree +#!RemoteAsset: sha256:6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/positions) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "roxmltree" + +%package -n %{name}+default +Summary: Represent an XML as a read-only tree - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/positions) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +This metapackage enables feature "default" for the Rust roxmltree crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From f54a4069554ab1a16eb9a296e93c706b9ac3bf75 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:25:29 +0800 Subject: [PATCH 28/45] SPECS: Add rust-strict-num-0.1. Signed-off-by: misaka00251 --- SPECS/rust-strict-num-0.1/Cargo.toml | 35 +++++++++++++++ .../rust-strict-num-0.1.spec | 45 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 SPECS/rust-strict-num-0.1/Cargo.toml create mode 100644 SPECS/rust-strict-num-0.1/rust-strict-num-0.1.spec diff --git a/SPECS/rust-strict-num-0.1/Cargo.toml b/SPECS/rust-strict-num-0.1/Cargo.toml new file mode 100644 index 0000000000..6a7ec29c7f --- /dev/null +++ b/SPECS/rust-strict-num-0.1/Cargo.toml @@ -0,0 +1,35 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "strict-num" +version = "0.1.1" +authors = ["Yevhenii Reizner "] +description = "A collection of bounded numeric types" +documentation = "https://docs.rs/strict-num/" +readme = "README.md" +categories = [ + "mathematics", + "no-std", +] +license = "MIT" +repository = "https://github.com/RazrFalcon/strict-num" + +[dependencies.float-cmp] +version = "0.9" +features = ["std"] +optional = true +default-features = false + +[features] +approx-eq = ["float-cmp"] +default = ["approx-eq"] diff --git a/SPECS/rust-strict-num-0.1/rust-strict-num-0.1.spec b/SPECS/rust-strict-num-0.1/rust-strict-num-0.1.spec new file mode 100644 index 0000000000..949f270748 --- /dev/null +++ b/SPECS/rust-strict-num-0.1/rust-strict-num-0.1.spec @@ -0,0 +1,45 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name strict-num +%global full_version 0.1.1 +%global pkgname strict-num-0.1 + +Name: rust-strict-num-0.1 +Version: 0.1.1 +Release: %autorelease +Summary: Rust crate "strict-num" +License: MIT +URL: https://github.com/RazrFalcon/strict-num +#!RemoteAsset: sha256:6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "strict-num" + +%package -n %{name}+float-cmp +Summary: Collection of bounded numeric types - feature "float-cmp" and 2 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(float-cmp-0.9/std) >= 0.9.0 +Provides: crate(%{pkgname}/approx-eq) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/float-cmp) = %{version} + +%description -n %{name}+float-cmp +This metapackage enables feature "float-cmp" for the Rust strict-num crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "approx-eq", and "default" features. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From a168fde3f68a991430c2f7d4bc8ae040caa23191 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:26:31 +0800 Subject: [PATCH 29/45] SPECS: Add rust-xmlwriter-0.1. Signed-off-by: misaka00251 --- SPECS/rust-xmlwriter-0.1/Cargo.toml | 23 +++++++++++++ .../rust-xmlwriter-0.1.spec | 33 +++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 SPECS/rust-xmlwriter-0.1/Cargo.toml create mode 100644 SPECS/rust-xmlwriter-0.1/rust-xmlwriter-0.1.spec diff --git a/SPECS/rust-xmlwriter-0.1/Cargo.toml b/SPECS/rust-xmlwriter-0.1/Cargo.toml new file mode 100644 index 0000000000..362c96e8ab --- /dev/null +++ b/SPECS/rust-xmlwriter-0.1/Cargo.toml @@ -0,0 +1,23 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies +# +# If you believe there's an error in this file please file an +# issue against the rust-lang/cargo repository. If you're +# editing this file be aware that the upstream Cargo.toml +# will likely look very different (and much more reasonable) + +[package] +edition = "2018" +name = "xmlwriter" +version = "0.1.0" +authors = ["Evgeniy Reizner "] +description = "A simple, streaming XML writer." +documentation = "https://docs.rs/xmlwriter/" +readme = "README.md" +keywords = ["xml"] +license = "MIT" +repository = "https://github.com/RazrFalcon/xmlwriter" diff --git a/SPECS/rust-xmlwriter-0.1/rust-xmlwriter-0.1.spec b/SPECS/rust-xmlwriter-0.1/rust-xmlwriter-0.1.spec new file mode 100644 index 0000000000..92c6e04824 --- /dev/null +++ b/SPECS/rust-xmlwriter-0.1/rust-xmlwriter-0.1.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name xmlwriter +%global full_version 0.1.0 +%global pkgname xmlwriter-0.1 + +Name: rust-xmlwriter-0.1 +Version: 0.1.0 +Release: %autorelease +Summary: Rust crate "xmlwriter" +License: MIT +URL: https://github.com/RazrFalcon/xmlwriter +#!RemoteAsset: sha256:ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "xmlwriter" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 54609fc75a880db83a07ef58de4e925ed075f7db Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:30:26 +0800 Subject: [PATCH 30/45] SPECS: Add rust-natord-1. Signed-off-by: misaka00251 --- SPECS/rust-natord-1/Cargo.toml | 16 +++++++++++++ SPECS/rust-natord-1/rust-natord-1.spec | 33 ++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 SPECS/rust-natord-1/Cargo.toml create mode 100644 SPECS/rust-natord-1/rust-natord-1.spec diff --git a/SPECS/rust-natord-1/Cargo.toml b/SPECS/rust-natord-1/Cargo.toml new file mode 100644 index 0000000000..617f426b20 --- /dev/null +++ b/SPECS/rust-natord-1/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "natord" +version = "1.0.9" +authors = ["Kang Seonghoon "] + +description = "Natural ordering for Rust" +homepage = "https://github.com/lifthrasiir/rust-natord" +documentation = "https://lifthrasiir.github.io/rust-natord/" +repository = "https://github.com/lifthrasiir/rust-natord" +keywords = ["sort", "order", "natural"] +readme = "README.md" +license = "MIT" + +[lib] +name = "natord" +path = "lib.rs" diff --git a/SPECS/rust-natord-1/rust-natord-1.spec b/SPECS/rust-natord-1/rust-natord-1.spec new file mode 100644 index 0000000000..af54efd536 --- /dev/null +++ b/SPECS/rust-natord-1/rust-natord-1.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name natord +%global full_version 1.0.9 +%global pkgname natord-1 + +Name: rust-natord-1 +Version: 1.0.9 +Release: %autorelease +Summary: Rust crate "natord" +License: MIT +URL: https://github.com/lifthrasiir/rust-natord +#!RemoteAsset: sha256:308d96db8debc727c3fd9744aac51751243420e46edf401010908da7f8d5e57c +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "natord" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 2953f4417eaf4c4d577aea1fbd4d6be9336759e8 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:32:27 +0800 Subject: [PATCH 31/45] SPECS: Add rust-core-maths-0.1. Signed-off-by: misaka00251 --- SPECS/rust-core-maths-0.1/Cargo.toml | 37 +++++++++++++++++++ .../rust-core-maths-0.1.spec | 35 ++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 SPECS/rust-core-maths-0.1/Cargo.toml create mode 100644 SPECS/rust-core-maths-0.1/rust-core-maths-0.1.spec diff --git a/SPECS/rust-core-maths-0.1/Cargo.toml b/SPECS/rust-core-maths-0.1/Cargo.toml new file mode 100644 index 0000000000..9fc6e03453 --- /dev/null +++ b/SPECS/rust-core-maths-0.1/Cargo.toml @@ -0,0 +1,37 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +name = "core_maths" +version = "0.1.1" +authors = ["Robert Bastian = 0.2.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "core_maths" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 4412e0f771b5b3779ef7704b64874b3a0ba70277 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:33:43 +0800 Subject: [PATCH 32/45] SPECS: Add rust-fontconfig-parser-0.5. Signed-off-by: misaka00251 --- SPECS/rust-fontconfig-parser-0.5/Cargo.toml | 91 +++++++++++++++++++ .../rust-fontconfig-parser-0.5.spec | 57 ++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 SPECS/rust-fontconfig-parser-0.5/Cargo.toml create mode 100644 SPECS/rust-fontconfig-parser-0.5/rust-fontconfig-parser-0.5.spec diff --git a/SPECS/rust-fontconfig-parser-0.5/Cargo.toml b/SPECS/rust-fontconfig-parser-0.5/Cargo.toml new file mode 100644 index 0000000000..25d875abe9 --- /dev/null +++ b/SPECS/rust-fontconfig-parser-0.5/Cargo.toml @@ -0,0 +1,91 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "fontconfig-parser" +version = "0.5.8" +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "fontconfig file parser in pure Rust" +homepage = "https://github.com/Riey/fontconfig-parser" +documentation = "https://docs.rs/fontconfig-parser" +readme = "README.md" +keywords = ["fontconfig"] +categories = ["parser-implementations"] +license = "MIT" +repository = "https://github.com/Riey/fontconfig-parser" + +[features] +serialize = ["serde"] + +[lib] +name = "fontconfig_parser" +path = "src/lib.rs" + +[[example]] +name = "dump" +path = "examples/dump.rs" + +[[example]] +name = "list_all_fonts" +path = "examples/list_all_fonts.rs" + +[[example]] +name = "parse_dump_json" +path = "examples/parse_dump_json.rs" + +[[test]] +name = "merge" +path = "tests/merge.rs" + +[[test]] +name = "parse" +path = "tests/parse.rs" + +[[bench]] +name = "parse_test_conf" +path = "benches/parse_test_conf.rs" +harness = false + +[dependencies.log] +version = "0.4" +optional = true + +[dependencies.roxmltree] +version = "0.20.0" + +[dependencies.serde] +version = "1" +features = ["derive"] +optional = true + +[dev-dependencies.criterion] +version = "0.5" + +[dev-dependencies.glob] +version = "0.3" + +[dev-dependencies.k9] +version = "0.12" + +[dev-dependencies.serde_json] +version = "1" + +[profile.bench] +lto = "thin" + +[profile.release] +lto = "thin" diff --git a/SPECS/rust-fontconfig-parser-0.5/rust-fontconfig-parser-0.5.spec b/SPECS/rust-fontconfig-parser-0.5/rust-fontconfig-parser-0.5.spec new file mode 100644 index 0000000000..f99237a869 --- /dev/null +++ b/SPECS/rust-fontconfig-parser-0.5/rust-fontconfig-parser-0.5.spec @@ -0,0 +1,57 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name fontconfig-parser +%global full_version 0.5.8 +%global pkgname fontconfig-parser-0.5 + +Name: rust-fontconfig-parser-0.5 +Version: 0.5.8 +Release: %autorelease +Summary: Rust crate "fontconfig-parser" +License: MIT +URL: https://github.com/Riey/fontconfig-parser +#!RemoteAsset: sha256:bbc773e24e02d4ddd8395fd30dc147524273a83e54e0f312d986ea30de5f5646 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(roxmltree-0.20/default) >= 0.20.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "fontconfig-parser" + +%package -n %{name}+log +Summary: Fontconfig file parser in pure Rust - feature "log" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(log-0.4/default) >= 0.4.0 +Provides: crate(%{pkgname}/log) = %{version} + +%description -n %{name}+log +This metapackage enables feature "log" for the Rust fontconfig-parser crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+serde +Summary: Fontconfig file parser in pure Rust - feature "serde" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(serde-1/default) >= 1.0.0 +Requires: crate(serde-1/derive) >= 1.0.0 +Provides: crate(%{pkgname}/serde) = %{version} +Provides: crate(%{pkgname}/serialize) = %{version} + +%description -n %{name}+serde +This metapackage enables feature "serde" for the Rust fontconfig-parser crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "serialize" feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 17ad530232f4524190ed07abdb17fc123d11e874 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:34:28 +0800 Subject: [PATCH 33/45] SPECS: Add rust-lodepng-3. Signed-off-by: misaka00251 --- SPECS/rust-lodepng-3/Cargo.toml | 94 ++++++++++++++++++++++++ SPECS/rust-lodepng-3/rust-lodepng-3.spec | 94 ++++++++++++++++++++++++ 2 files changed, 188 insertions(+) create mode 100644 SPECS/rust-lodepng-3/Cargo.toml create mode 100644 SPECS/rust-lodepng-3/rust-lodepng-3.spec diff --git a/SPECS/rust-lodepng-3/Cargo.toml b/SPECS/rust-lodepng-3/Cargo.toml new file mode 100644 index 0000000000..377fd5bc4e --- /dev/null +++ b/SPECS/rust-lodepng-3/Cargo.toml @@ -0,0 +1,94 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.72" +name = "lodepng" +version = "3.12.2" +authors = [ + "Kornel ", + "Lode Vandevenne ", +] +build = false +include = [ + "src/**/*", + "COPYRIGHT", + "README.md", + "Cargo.toml", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Reading and writing PNG files without system dependencies. Pure Rust port of LodePNG." +homepage = "https://lib.rs/crates/lodepng" +documentation = "https://docs.rs/lodepng" +readme = "README.md" +keywords = [ + "PNG", + "lodepng", + "encoder", + "decoder", +] +categories = [ + "multimedia::encoding", + "multimedia::images", +] +license = "Zlib" +repository = "https://github.com/kornelski/lodepng-rust.git" + +[package.metadata.docs.rs] +targets = ["x86_64-unknown-linux-gnu"] +rustdoc-args = [ + "--cfg", + "docsrs", + "--generate-link-to-definition", +] + +[features] +_deprecated_c_ffi_default_ = ["dep:libc"] +c_ffi = ["dep:libc"] +cfzlib = ["flate2/zlib-rs"] +default = [ + "zlibrs", + "_deprecated_c_ffi_default_", +] +ngzlib = ["flate2/zlib-ng-compat"] +rust_backend = ["flate2/rust_backend"] +zlibrs = ["flate2/zlib-rs"] + +[lib] +name = "lodepng" +path = "src/lib.rs" + +[dependencies.crc32fast] +version = "1.3.2" + +[dependencies.flate2] +version = "1.1.2" +default-features = false + +[dependencies.libc] +version = "0.2.126" +optional = true + +[dependencies.rgb] +version = "0.8.50" +features = ["bytemuck"] +default-features = false + +[profile.dev] +opt-level = 2 + +[profile.test] +opt-level = 2 diff --git a/SPECS/rust-lodepng-3/rust-lodepng-3.spec b/SPECS/rust-lodepng-3/rust-lodepng-3.spec new file mode 100644 index 0000000000..42ecc37fe9 --- /dev/null +++ b/SPECS/rust-lodepng-3/rust-lodepng-3.spec @@ -0,0 +1,94 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name lodepng +%global full_version 3.12.2 +%global pkgname lodepng-3 + +Name: rust-lodepng-3 +Version: 3.12.2 +Release: %autorelease +Summary: Rust crate "lodepng" +License: Zlib +URL: https://lib.rs/crates/lodepng +#!RemoteAsset: sha256:fe7982db11054edc023a1b424dddcc65be18f71fa46ec6bde2efcfc1fb6b22da +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(crc32fast-1/default) >= 1.3.2 +Requires: crate(flate2-1) >= 1.1.2 +Requires: crate(rgb-0.8/bytemuck) >= 0.8.50 + +Provides: crate(%{pkgname}) = %{version} + +%description +Pure Rust port of LodePNG. +Source code for takopackized Rust crate "lodepng" + +%package -n %{name}+deprecated-c-ffi-default- +Summary: Reading and writing PNG files without system dependencies - feature "_deprecated_c_ffi_default_" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(libc-0.2/default) >= 0.2.126 +Provides: crate(%{pkgname}/c-ffi) = %{version} +Provides: crate(%{pkgname}/deprecated-c-ffi-default-) = %{version} + +%description -n %{name}+deprecated-c-ffi-default- +Pure Rust port of LodePNG. +This metapackage enables feature "_deprecated_c_ffi_default_" for the Rust lodepng crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "c_ffi" feature. + +%package -n %{name}+cfzlib +Summary: Reading and writing PNG files without system dependencies - feature "cfzlib" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(flate2-1/zlib-rs) >= 1.1.2 +Provides: crate(%{pkgname}/cfzlib) = %{version} +Provides: crate(%{pkgname}/zlibrs) = %{version} + +%description -n %{name}+cfzlib +Pure Rust port of LodePNG. +This metapackage enables feature "cfzlib" for the Rust lodepng crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "zlibrs" feature. + +%package -n %{name}+default +Summary: Reading and writing PNG files without system dependencies - feature "default" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/deprecated-c-ffi-default-) = %{version} +Requires: crate(%{pkgname}/zlibrs) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description -n %{name}+default +Pure Rust port of LodePNG. +This metapackage enables feature "default" for the Rust lodepng crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+ngzlib +Summary: Reading and writing PNG files without system dependencies - feature "ngzlib" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(flate2-1/zlib-ng-compat) >= 1.1.2 +Provides: crate(%{pkgname}/ngzlib) = %{version} + +%description -n %{name}+ngzlib +Pure Rust port of LodePNG. +This metapackage enables feature "ngzlib" for the Rust lodepng crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+rust-backend +Summary: Reading and writing PNG files without system dependencies - feature "rust_backend" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(flate2-1/rust-backend) >= 1.1.2 +Provides: crate(%{pkgname}/rust-backend) = %{version} + +%description -n %{name}+rust-backend +Pure Rust port of LodePNG. +This metapackage enables feature "rust_backend" for the Rust lodepng crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 41507cceb97f00284a73a707f50582ed41c917dc Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:35:03 +0800 Subject: [PATCH 34/45] SPECS: Add rust-pbr-1. Signed-off-by: misaka00251 --- SPECS/rust-pbr-1/Cargo.toml | 48 ++++++++++++++++++++++++++++++++ SPECS/rust-pbr-1/rust-pbr-1.spec | 40 ++++++++++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 SPECS/rust-pbr-1/Cargo.toml create mode 100644 SPECS/rust-pbr-1/rust-pbr-1.spec diff --git a/SPECS/rust-pbr-1/Cargo.toml b/SPECS/rust-pbr-1/Cargo.toml new file mode 100644 index 0000000000..fe50d51941 --- /dev/null +++ b/SPECS/rust-pbr-1/Cargo.toml @@ -0,0 +1,48 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "pbr" +version = "1.1.1" +authors = [ + "Ariel Mashraki ", + "Steven Fackler ", +] +exclude = ["gif/"] +description = "Console progress bar for Rust" +documentation = "https://a8m.github.io/pb/doc/pbr/index.html" +readme = "README.md" +keywords = [ + "cli", + "progress", + "terminal", + "pb", +] +license = "MIT" +repository = "https://github.com/a8m/pb" + +[dependencies.crossbeam-channel] +version = "0.5" + +[dependencies.libc] +version = "0.2" + +[dev-dependencies.rand] +version = "0.8" + +[target."cfg(target_os = \"windows\")".dependencies.winapi] +version = "0.3" +features = [ + "wincon", + "processenv", + "winbase", +] diff --git a/SPECS/rust-pbr-1/rust-pbr-1.spec b/SPECS/rust-pbr-1/rust-pbr-1.spec new file mode 100644 index 0000000000..ae2b93e3da --- /dev/null +++ b/SPECS/rust-pbr-1/rust-pbr-1.spec @@ -0,0 +1,40 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name pbr +%global full_version 1.1.1 +%global pkgname pbr-1 + +Name: rust-pbr-1 +Version: 1.1.1 +Release: %autorelease +Summary: Rust crate "pbr" +License: MIT +URL: https://github.com/a8m/pb +#!RemoteAsset: sha256:ed5827dfa0d69b6c92493d6c38e633bbaa5937c153d0d7c28bf12313f8c6d514 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(crossbeam-channel-0.5/default) >= 0.5.0 +Requires: crate(libc-0.2/default) >= 0.2.0 +Requires: crate(winapi-0.3/default) >= 0.3.0 +Requires: crate(winapi-0.3/processenv) >= 0.3.0 +Requires: crate(winapi-0.3/winbase) >= 0.3.0 +Requires: crate(winapi-0.3/wincon) >= 0.3.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "pbr" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 0871c7beb02e79549079786b39d47749ce9bd4ed Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:35:51 +0800 Subject: [PATCH 35/45] SPECS: Add rust-unicode-vo-0.1. Signed-off-by: misaka00251 --- SPECS/rust-unicode-vo-0.1/Cargo.toml | 22 +++++++++++++ .../rust-unicode-vo-0.1.spec | 33 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 SPECS/rust-unicode-vo-0.1/Cargo.toml create mode 100644 SPECS/rust-unicode-vo-0.1/rust-unicode-vo-0.1.spec diff --git a/SPECS/rust-unicode-vo-0.1/Cargo.toml b/SPECS/rust-unicode-vo-0.1/Cargo.toml new file mode 100644 index 0000000000..c88abed8c5 --- /dev/null +++ b/SPECS/rust-unicode-vo-0.1/Cargo.toml @@ -0,0 +1,22 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies +# +# If you believe there's an error in this file please file an +# issue against the rust-lang/cargo repository. If you're +# editing this file be aware that the upstream Cargo.toml +# will likely look very different (and much more reasonable) + +[package] +name = "unicode-vo" +version = "0.1.0" +authors = ["Evgeniy Reizner "] +description = "Unicode vertical orientation detection" +documentation = "https://docs.rs/unicode-vo/" +readme = "README.md" +keywords = ["unicode"] +license = "MIT/Apache-2.0" +repository = "https://github.com/RazrFalcon/unicode-vo" diff --git a/SPECS/rust-unicode-vo-0.1/rust-unicode-vo-0.1.spec b/SPECS/rust-unicode-vo-0.1/rust-unicode-vo-0.1.spec new file mode 100644 index 0000000000..276345d487 --- /dev/null +++ b/SPECS/rust-unicode-vo-0.1/rust-unicode-vo-0.1.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name unicode-vo +%global full_version 0.1.0 +%global pkgname unicode-vo-0.1 + +Name: rust-unicode-vo-0.1 +Version: 0.1.0 +Release: %autorelease +Summary: Rust crate "unicode-vo" +License: MIT OR Apache-2.0 +URL: https://github.com/RazrFalcon/unicode-vo +#!RemoteAsset: sha256:b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "unicode-vo" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 0915dda9dab8bd09da5715ce5a9a9c8c155ff7fc Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:36:47 +0800 Subject: [PATCH 36/45] SPECS: Add rust-unicode-script-0.5. Signed-off-by: misaka00251 --- SPECS/rust-unicode-script-0.5/Cargo.toml | 63 +++++++++++++++++++ .../rust-unicode-script-0.5.spec | 46 ++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 SPECS/rust-unicode-script-0.5/Cargo.toml create mode 100644 SPECS/rust-unicode-script-0.5/rust-unicode-script-0.5.spec diff --git a/SPECS/rust-unicode-script-0.5/Cargo.toml b/SPECS/rust-unicode-script-0.5/Cargo.toml new file mode 100644 index 0000000000..820d21da57 --- /dev/null +++ b/SPECS/rust-unicode-script-0.5/Cargo.toml @@ -0,0 +1,63 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "unicode-script" +version = "0.5.8" +authors = ["Manish Goregaokar "] +build = false +exclude = [ + "target/*", + "Cargo.lock", + "scripts/tmp", + "*.txt", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = """ +This crate exposes the Unicode `Script` and `Script_Extension` properties from [UAX #24](http://www.unicode.org/reports/tr24/) +""" +homepage = "https://github.com/unicode-rs/unicode-script" +documentation = "https://docs.rs/unicode-script" +readme = "README.md" +keywords = [ + "text", + "unicode", + "script", + "language", +] +license = "MIT OR Apache-2.0" +repository = "https://github.com/unicode-rs/unicode-script" + +[features] +bench = [] +rustc-dep-of-std = [ + "std", + "core", +] + +[lib] +name = "unicode_script" +path = "src/lib.rs" + +[dependencies.core] +version = "1.0" +optional = true +package = "rustc-std-workspace-core" + +[dependencies.std] +version = "1.0" +optional = true +package = "rustc-std-workspace-std" diff --git a/SPECS/rust-unicode-script-0.5/rust-unicode-script-0.5.spec b/SPECS/rust-unicode-script-0.5/rust-unicode-script-0.5.spec new file mode 100644 index 0000000000..dd2c8fd937 --- /dev/null +++ b/SPECS/rust-unicode-script-0.5/rust-unicode-script-0.5.spec @@ -0,0 +1,46 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name unicode-script +%global full_version 0.5.8 +%global pkgname unicode-script-0.5 + +Name: rust-unicode-script-0.5 +Version: 0.5.8 +Release: %autorelease +Summary: Rust crate "unicode-script" +License: MIT OR Apache-2.0 +URL: https://github.com/unicode-rs/unicode-script +#!RemoteAsset: sha256:383ad40bb927465ec0ce7720e033cb4ca06912855fc35db31b5755d0de75b1ee +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/bench) = %{version} +Provides: crate(%{pkgname}/core) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "unicode-script" + +%package -n %{name}+rustc-dep-of-std +Summary: This crate exposes the Unicode `Script` and `Script_Extension` properties from [UAX #24](http://www.unicode.org/reports/tr24/) - feature "rustc-dep-of-std" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/core) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Provides: crate(%{pkgname}/rustc-dep-of-std) = %{version} + +%description -n %{name}+rustc-dep-of-std +This metapackage enables feature "rustc-dep-of-std" for the Rust unicode-script crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From d0a2bcd37de905299515e2345e243d1ac6611db6 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:37:36 +0800 Subject: [PATCH 37/45] SPECS: Add rust-rustybuzz-0.20. Signed-off-by: misaka00251 --- SPECS/rust-rustybuzz-0.20/Cargo.toml | 110 ++++++++++++++++++ .../rust-rustybuzz-0.20.spec | 75 ++++++++++++ 2 files changed, 185 insertions(+) create mode 100644 SPECS/rust-rustybuzz-0.20/Cargo.toml create mode 100644 SPECS/rust-rustybuzz-0.20/rust-rustybuzz-0.20.spec diff --git a/SPECS/rust-rustybuzz-0.20/Cargo.toml b/SPECS/rust-rustybuzz-0.20/Cargo.toml new file mode 100644 index 0000000000..aa8060609a --- /dev/null +++ b/SPECS/rust-rustybuzz-0.20/Cargo.toml @@ -0,0 +1,110 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "rustybuzz" +version = "0.20.1" +authors = [ + "Caleb Maclennan ", + "Laurenz Stampfl ", + "Yevhenii Reizner ", + "خالد حسني (Khaled Hosny) ", +] +build = false +exclude = [ + "benches/", + "tests/", +] +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "A complete harfbuzz shaping algorithm port to Rust." +documentation = "https://docs.rs/rustybuzz/" +readme = "README.md" +keywords = [ + "text", + "shaping", + "opentype", + "truetype", +] +categories = ["text-processing"] +license = "MIT" +repository = "https://github.com/harfbuzz/rustybuzz" + +[lib] +name = "rustybuzz" +path = "src/lib.rs" + +[[example]] +name = "shape" +path = "examples/shape.rs" + +[dependencies.bitflags] +version = "2.4.1" + +[dependencies.bytemuck] +version = "1.5" +features = ["extern_crate_alloc"] + +[dependencies.core_maths] +version = "0.1.0" + +[dependencies.log] +version = "0.4.22" + +[dependencies.smallvec] +version = "1.6" + +[dependencies.ttf-parser] +version = "0.25.0" +features = [ + "opentype-layout", + "apple-layout", + "variable-fonts", + "glyph-names", + "no-std-float", +] +default-features = false + +[dependencies.unicode-bidi-mirroring] +version = "0.4.0" + +[dependencies.unicode-ccc] +version = "0.4.0" + +[dependencies.unicode-properties] +version = "0.1.3" +features = ["general-category"] +default-features = false + +[dependencies.unicode-script] +version = "0.5.2" + +[dependencies.wasmi] +version = "0.37.0" +optional = true + +[dev-dependencies.libc] +version = "0.2" + +[dev-dependencies.pico-args] +version = "0.5" +features = ["eq-separator"] + +[features] +default = ["std"] +std = ["ttf-parser/std"] +wasm-shaper = [ + "std", + "dep:wasmi", +] diff --git a/SPECS/rust-rustybuzz-0.20/rust-rustybuzz-0.20.spec b/SPECS/rust-rustybuzz-0.20/rust-rustybuzz-0.20.spec new file mode 100644 index 0000000000..534d24e481 --- /dev/null +++ b/SPECS/rust-rustybuzz-0.20/rust-rustybuzz-0.20.spec @@ -0,0 +1,75 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name rustybuzz +%global full_version 0.20.1 +%global pkgname rustybuzz-0.20 + +Name: rust-rustybuzz-0.20 +Version: 0.20.1 +Release: %autorelease +Summary: Rust crate "rustybuzz" +License: MIT +URL: https://github.com/harfbuzz/rustybuzz +#!RemoteAsset: sha256:fd3c7c96f8a08ee34eff8857b11b49b07d71d1c3f4e88f8a88d4c9e9f90b1702 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(bitflags-2/default) >= 2.4.1 +Requires: crate(bytemuck-1/default) >= 1.5.0 +Requires: crate(bytemuck-1/extern-crate-alloc) >= 1.5.0 +Requires: crate(core-maths-0.1/default) >= 0.1.0 +Requires: crate(log-0.4/default) >= 0.4.22 +Requires: crate(smallvec-1/default) >= 1.6.0 +Requires: crate(ttf-parser-0.25/apple-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/glyph-names) >= 0.25.0 +Requires: crate(ttf-parser-0.25/no-std-float) >= 0.25.0 +Requires: crate(ttf-parser-0.25/opentype-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/variable-fonts) >= 0.25.0 +Requires: crate(unicode-bidi-mirroring-0.4/default) >= 0.4.0 +Requires: crate(unicode-ccc-0.4/default) >= 0.4.0 +Requires: crate(unicode-properties-0.1/general-category) >= 0.1.3 +Requires: crate(unicode-script-0.5/default) >= 0.5.2 + +Provides: crate(%{pkgname}) = %{version} + +%description +Source code for takopackized Rust crate "rustybuzz" + +%package -n %{name}+std +Summary: Complete harfbuzz shaping algorithm port to Rust - feature "std" and 1 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(ttf-parser-0.25/apple-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/glyph-names) >= 0.25.0 +Requires: crate(ttf-parser-0.25/no-std-float) >= 0.25.0 +Requires: crate(ttf-parser-0.25/opentype-layout) >= 0.25.0 +Requires: crate(ttf-parser-0.25/std) >= 0.25.0 +Requires: crate(ttf-parser-0.25/variable-fonts) >= 0.25.0 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust rustybuzz crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default" feature. + +%package -n %{name}+wasm-shaper +Summary: Complete harfbuzz shaping algorithm port to Rust - feature "wasm-shaper" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(%{pkgname}/std) = %{version} +Requires: crate(wasmi-0.37/default) >= 0.37.0 +Provides: crate(%{pkgname}/wasm-shaper) = %{version} + +%description -n %{name}+wasm-shaper +This metapackage enables feature "wasm-shaper" for the Rust rustybuzz crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 671773141a6cf81e7c225619e2e09c8442a7323b Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:38:26 +0800 Subject: [PATCH 38/45] SPECS: Add rust-read-fonts-0.29. Signed-off-by: misaka00251 --- SPECS/rust-read-fonts-0.29/Cargo.toml | 95 +++++++++++++++++++ .../rust-read-fonts-0.29.spec | 75 +++++++++++++++ 2 files changed, 170 insertions(+) create mode 100644 SPECS/rust-read-fonts-0.29/Cargo.toml create mode 100644 SPECS/rust-read-fonts-0.29/rust-read-fonts-0.29.spec diff --git a/SPECS/rust-read-fonts-0.29/Cargo.toml b/SPECS/rust-read-fonts-0.29/Cargo.toml new file mode 100644 index 0000000000..0dd5fb3049 --- /dev/null +++ b/SPECS/rust-read-fonts-0.29/Cargo.toml @@ -0,0 +1,95 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.75" +name = "read-fonts" +version = "0.29.3" +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Reading OpenType font files." +readme = "README.md" +categories = [ + "text-processing", + "parsing", + "graphics", +] +license = "MIT OR Apache-2.0" +repository = "https://github.com/googlefonts/fontations" + +[package.metadata.docs.rs] +features = [ + "libm", + "serde", + "std", +] + +[features] +codegen_test = [] +default = ["std"] +experimental_traverse = ["std"] +ift = [] +libm = ["dep:core_maths"] +scaler_test = [] +serde = [ + "dep:serde", + "font-types/serde", +] +spec_next = [] +std = ["font-types/std"] + +[lib] +name = "read_fonts" +path = "src/lib.rs" + +[[bench]] +name = "bench_helper" +path = "benches/bench_helper.rs" + +[[bench]] +name = "int_set_benchmark" +path = "benches/int_set_benchmark.rs" +harness = false + +[[bench]] +name = "sparse_bit_set_benchmark" +path = "benches/sparse_bit_set_benchmark.rs" +harness = false + +[dependencies.bytemuck] +version = "1.13.1" + +[dependencies.core_maths] +version = "0.1" +optional = true + +[dependencies.font-types] +version = "0.9.0" +features = ["bytemuck"] + +[dependencies.serde] +version = "1.0" +features = ["derive"] +optional = true + +[dev-dependencies.criterion] +version = "0.3.0" + +[dev-dependencies.rand] +version = "0.8.5" + +[dev-dependencies.serde_json] +version = "1.0" diff --git a/SPECS/rust-read-fonts-0.29/rust-read-fonts-0.29.spec b/SPECS/rust-read-fonts-0.29/rust-read-fonts-0.29.spec new file mode 100644 index 0000000000..4607f5f0c1 --- /dev/null +++ b/SPECS/rust-read-fonts-0.29/rust-read-fonts-0.29.spec @@ -0,0 +1,75 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name read-fonts +%global full_version 0.29.3 +%global pkgname read-fonts-0.29 + +Name: rust-read-fonts-0.29 +Version: 0.29.3 +Release: %autorelease +Summary: Rust crate "read-fonts" +License: MIT OR Apache-2.0 +URL: https://github.com/googlefonts/fontations +#!RemoteAsset: sha256:04ca636dac446b5664bd16c069c00a9621806895b8bb02c2dc68542b23b8f25d +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(bytemuck-1/default) >= 1.13.1 +Requires: crate(font-types-0.9/bytemuck) >= 0.9.0 +Requires: crate(font-types-0.9/default) >= 0.9.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/codegen-test) = %{version} +Provides: crate(%{pkgname}/ift) = %{version} +Provides: crate(%{pkgname}/scaler-test) = %{version} +Provides: crate(%{pkgname}/spec-next) = %{version} + +%description +Source code for takopackized Rust crate "read-fonts" + +%package -n %{name}+libm +Summary: Reading OpenType font files - feature "libm" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(core-maths-0.1/default) >= 0.1.0 +Provides: crate(%{pkgname}/libm) = %{version} + +%description -n %{name}+libm +This metapackage enables feature "libm" for the Rust read-fonts crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+serde +Summary: Reading OpenType font files - feature "serde" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(font-types-0.9/bytemuck) >= 0.9.0 +Requires: crate(font-types-0.9/serde) >= 0.9.0 +Requires: crate(serde-1/default) >= 1.0.0 +Requires: crate(serde-1/derive) >= 1.0.0 +Provides: crate(%{pkgname}/serde) = %{version} + +%description -n %{name}+serde +This metapackage enables feature "serde" for the Rust read-fonts crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+std +Summary: Reading OpenType font files - feature "std" and 2 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(font-types-0.9/bytemuck) >= 0.9.0 +Requires: crate(font-types-0.9/std) >= 0.9.0 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/experimental-traverse) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description -n %{name}+std +This metapackage enables feature "std" for the Rust read-fonts crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default", and "experimental_traverse" features. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 64d44835826dd51c0ab9595a651931f54a018c6e Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:39:05 +0800 Subject: [PATCH 39/45] SPECS: Add rust-png-0.17. Signed-off-by: misaka00251 --- SPECS/rust-png-0.17/Cargo.toml | 133 +++++++++++++++++++++++++ SPECS/rust-png-0.17/rust-png-0.17.spec | 50 ++++++++++ 2 files changed, 183 insertions(+) create mode 100644 SPECS/rust-png-0.17/Cargo.toml create mode 100644 SPECS/rust-png-0.17/rust-png-0.17.spec diff --git a/SPECS/rust-png-0.17/Cargo.toml b/SPECS/rust-png-0.17/Cargo.toml new file mode 100644 index 0000000000..3941875ef9 --- /dev/null +++ b/SPECS/rust-png-0.17/Cargo.toml @@ -0,0 +1,133 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +rust-version = "1.57" +name = "png" +version = "0.17.16" +authors = ["The image-rs Developers"] +build = false +include = [ + "/LICENSE-MIT", + "/LICENSE-APACHE", + "/README.md", + "/CHANGES.md", + "/src/", + "/examples/", + "/benches/", +] +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "PNG decoding and encoding library in pure Rust" +readme = "README.md" +categories = ["multimedia::images"] +license = "MIT OR Apache-2.0" +repository = "https://github.com/image-rs/image-png" + +[lib] +name = "png" +path = "src/lib.rs" + +[[example]] +name = "change-png-info" +path = "examples/change-png-info.rs" + +[[example]] +name = "corpus-bench" +path = "examples/corpus-bench.rs" + +[[example]] +name = "png-generate" +path = "examples/png-generate.rs" + +[[example]] +name = "pngcheck" +path = "examples/pngcheck.rs" + +[[example]] +name = "show" +path = "examples/show.rs" + +[[bench]] +name = "decoder" +path = "benches/decoder.rs" +harness = false + +[[bench]] +name = "expand_paletted" +path = "benches/expand_paletted.rs" +harness = false +required-features = ["benchmarks"] + +[[bench]] +name = "unfilter" +path = "benches/unfilter.rs" +harness = false +required-features = ["benchmarks"] + +[dependencies.bitflags] +version = "1.0" + +[dependencies.crc32fast] +version = "1.2.0" + +[dependencies.fdeflate] +version = "0.3.3" + +[dependencies.flate2] +version = "1.0.11" + +[dependencies.miniz_oxide] +version = "0.8" +features = ["simd"] + +[dev-dependencies.approx] +version = "0.5.1" + +[dev-dependencies.byteorder] +version = "1.5.0" + +[dev-dependencies.clap] +version = "3.0" +features = ["derive"] + +[dev-dependencies.criterion] +version = "0.4.0" + +[dev-dependencies.getopts] +version = "0.2.14" + +[dev-dependencies.glium] +version = "0.32" +features = ["glutin"] +default-features = false + +[dev-dependencies.glob] +version = "0.3" + +[dev-dependencies.rand] +version = "0.8.4" + +[dev-dependencies.term] +version = "1.0.1" + +[features] +benchmarks = [] +unstable = ["crc32fast/nightly"] + +[lints.rust.unexpected_cfgs] +level = "warn" +priority = 0 +check-cfg = ["cfg(fuzzing)"] diff --git a/SPECS/rust-png-0.17/rust-png-0.17.spec b/SPECS/rust-png-0.17/rust-png-0.17.spec new file mode 100644 index 0000000000..4655949240 --- /dev/null +++ b/SPECS/rust-png-0.17/rust-png-0.17.spec @@ -0,0 +1,50 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name png +%global full_version 0.17.16 +%global pkgname png-0.17 + +Name: rust-png-0.17 +Version: 0.17.16 +Release: %autorelease +Summary: Rust crate "png" +License: MIT OR Apache-2.0 +URL: https://github.com/image-rs/image-png +#!RemoteAsset: sha256:82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Requires: crate(bitflags-1/default) >= 1.0.0 +Requires: crate(crc32fast-1/default) >= 1.2.0 +Requires: crate(fdeflate-0.3/default) >= 0.3.3 +Requires: crate(flate2-1/default) >= 1.0.11 +Requires: crate(miniz-oxide-0.8/default) >= 0.8.0 +Requires: crate(miniz-oxide-0.8/simd) >= 0.8.0 + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/benchmarks) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "png" + +%package -n %{name}+unstable +Summary: PNG decoding and encoding library in pure Rust - feature "unstable" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(crc32fast-1/nightly) >= 1.2.0 +Provides: crate(%{pkgname}/unstable) = %{version} + +%description -n %{name}+unstable +This metapackage enables feature "unstable" for the Rust png crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From e47860921c0d4459c80db2a1513d156f218be61e Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:40:14 +0800 Subject: [PATCH 40/45] SPECS: Add rust-float-cmp-0.9. Signed-off-by: misaka00251 --- SPECS/rust-float-cmp-0.9/Cargo.toml | 39 ++++++++++++++++ .../rust-float-cmp-0.9.spec | 46 +++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 SPECS/rust-float-cmp-0.9/Cargo.toml create mode 100644 SPECS/rust-float-cmp-0.9/rust-float-cmp-0.9.spec diff --git a/SPECS/rust-float-cmp-0.9/Cargo.toml b/SPECS/rust-float-cmp-0.9/Cargo.toml new file mode 100644 index 0000000000..b44453acdb --- /dev/null +++ b/SPECS/rust-float-cmp-0.9/Cargo.toml @@ -0,0 +1,39 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies +# +# If you believe there's an error in this file please file an +# issue against the rust-lang/cargo repository. If you're +# editing this file be aware that the upstream Cargo.toml +# will likely look very different (and much more reasonable) + +[package] +edition = "2018" +name = "float-cmp" +version = "0.9.0" +authors = ["Mike Dilger "] +description = "Floating point approximate comparison traits" +documentation = "https://docs.rs/float-cmp" +readme = "README.md" +keywords = ["float", "comparison", "fuzzy", "approximate", "no_std"] +license = "MIT" +repository = "https://github.com/mikedilger/float-cmp" + +[lib] +name = "float_cmp" +path = "src/lib.rs" +test = true +doctest = true +doc = true +[dependencies.num-traits] +version = "0.2.1" +optional = true +default-features = false + +[features] +default = ["ratio"] +ratio = ["num-traits"] +std = [] diff --git a/SPECS/rust-float-cmp-0.9/rust-float-cmp-0.9.spec b/SPECS/rust-float-cmp-0.9/rust-float-cmp-0.9.spec new file mode 100644 index 0000000000..eefe5cb5ec --- /dev/null +++ b/SPECS/rust-float-cmp-0.9/rust-float-cmp-0.9.spec @@ -0,0 +1,46 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name float-cmp +%global full_version 0.9.0 +%global pkgname float-cmp-0.9 + +Name: rust-float-cmp-0.9 +Version: 0.9.0 +Release: %autorelease +Summary: Rust crate "float-cmp" +License: MIT +URL: https://github.com/mikedilger/float-cmp +#!RemoteAsset: sha256:98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "float-cmp" + +%package -n %{name}+num-traits +Summary: Floating point approximate comparison traits - feature "num-traits" and 2 more +Requires: crate(%{pkgname}) = %{version} +Requires: crate(num-traits-0.2) >= 0.2.1 +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/num-traits) = %{version} +Provides: crate(%{pkgname}/ratio) = %{version} + +%description -n %{name}+num-traits +This metapackage enables feature "num-traits" for the Rust float-cmp crate, by pulling in any additional dependencies needed by that feature. + +Additionally, this package also provides the "default", and "ratio" features. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 1fd89a46880b5ea5081016f683600e9b57dfd2c6 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:41:22 +0800 Subject: [PATCH 41/45] SPECS: Add rust-zune-core-0.4. Signed-off-by: misaka00251 --- SPECS/rust-zune-core-0.4/Cargo.toml | 36 +++++++++++++ .../rust-zune-core-0.4.spec | 52 +++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 SPECS/rust-zune-core-0.4/Cargo.toml create mode 100644 SPECS/rust-zune-core-0.4/rust-zune-core-0.4.spec diff --git a/SPECS/rust-zune-core-0.4/Cargo.toml b/SPECS/rust-zune-core-0.4/Cargo.toml new file mode 100644 index 0000000000..bbdb07c50b --- /dev/null +++ b/SPECS/rust-zune-core-0.4/Cargo.toml @@ -0,0 +1,36 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +name = "zune-core" +version = "0.4.12" +exclude = ["tests/"] +description = "Core utilities for image processing in the zune family of crates" +homepage = "https://github.com/etemesi254/zune-image/tree/dev/zune-core" +readme = "README.md" +keywords = ["image"] +categories = [ + "multimedia::images", + "multimedia::encoding", +] +license = "MIT OR Apache-2.0 OR Zlib" + +[dependencies.log] +version = "0.4.17" +optional = true + +[dependencies.serde] +version = "1.0.52" +optional = true + +[features] +std = [] diff --git a/SPECS/rust-zune-core-0.4/rust-zune-core-0.4.spec b/SPECS/rust-zune-core-0.4/rust-zune-core-0.4.spec new file mode 100644 index 0000000000..e359fbc659 --- /dev/null +++ b/SPECS/rust-zune-core-0.4/rust-zune-core-0.4.spec @@ -0,0 +1,52 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name zune-core +%global full_version 0.4.12 +%global pkgname zune-core-0.4 + +Name: rust-zune-core-0.4 +Version: 0.4.12 +Release: %autorelease +Summary: Rust crate "zune-core" +License: MIT OR Apache-2.0 OR Zlib +URL: https://github.com/etemesi254/zune-image/tree/dev/zune-core +#!RemoteAsset: sha256:3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "zune-core" + +%package -n %{name}+log +Summary: Core utilities for image processing in the zune family of crates - feature "log" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(log-0.4/default) >= 0.4.17 +Provides: crate(%{pkgname}/log) = %{version} + +%description -n %{name}+log +This metapackage enables feature "log" for the Rust zune-core crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+serde +Summary: Core utilities for image processing in the zune family of crates - feature "serde" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(serde-1/default) >= 1.0.52 +Provides: crate(%{pkgname}/serde) = %{version} + +%description -n %{name}+serde +This metapackage enables feature "serde" for the Rust zune-core crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From db4ccb0cb8af5fa56bb3c81fd7de451b71c5929d Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:42:04 +0800 Subject: [PATCH 42/45] SPECS: Add rust-font-types-0.9. Signed-off-by: misaka00251 --- SPECS/rust-font-types-0.9/Cargo.toml | 55 +++++++++++++++++++ .../rust-font-types-0.9.spec | 55 +++++++++++++++++++ 2 files changed, 110 insertions(+) create mode 100644 SPECS/rust-font-types-0.9/Cargo.toml create mode 100644 SPECS/rust-font-types-0.9/rust-font-types-0.9.spec diff --git a/SPECS/rust-font-types-0.9/Cargo.toml b/SPECS/rust-font-types-0.9/Cargo.toml new file mode 100644 index 0000000000..f4970ea250 --- /dev/null +++ b/SPECS/rust-font-types-0.9/Cargo.toml @@ -0,0 +1,55 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2021" +rust-version = "1.75" +name = "font-types" +version = "0.9.0" +build = false +autolib = false +autobins = false +autoexamples = false +autotests = false +autobenches = false +description = "Scalar types used in fonts." +readme = "README.md" +categories = ["text-processing"] +license = "MIT OR Apache-2.0" +repository = "https://github.com/googlefonts/fontations" + +[package.metadata.docs.rs] +all-features = true + +[lib] +name = "font_types" +path = "src/lib.rs" + +[dependencies.bytemuck] +version = "1.13.1" +features = [ + "derive", + "min_const_generics", +] +optional = true + +[dependencies.serde] +version = "1.0" +features = ["derive"] +optional = true + +[dev-dependencies.serde_json] +version = "1.0" + +[features] +bytemuck = ["dep:bytemuck"] +serde = ["dep:serde"] +std = [] diff --git a/SPECS/rust-font-types-0.9/rust-font-types-0.9.spec b/SPECS/rust-font-types-0.9/rust-font-types-0.9.spec new file mode 100644 index 0000000000..a266999c00 --- /dev/null +++ b/SPECS/rust-font-types-0.9/rust-font-types-0.9.spec @@ -0,0 +1,55 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name font-types +%global full_version 0.9.0 +%global pkgname font-types-0.9 + +Name: rust-font-types-0.9 +Version: 0.9.0 +Release: %autorelease +Summary: Rust crate "font-types" +License: MIT OR Apache-2.0 +URL: https://github.com/googlefonts/fontations +#!RemoteAsset: sha256:02a596f5713680923a2080d86de50fe472fb290693cf0f701187a1c8b36996b7 +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} +Provides: crate(%{pkgname}/std) = %{version} + +%description +Source code for takopackized Rust crate "font-types" + +%package -n %{name}+bytemuck +Summary: Scalar types used in fonts - feature "bytemuck" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(bytemuck-1/default) >= 1.13.1 +Requires: crate(bytemuck-1/derive) >= 1.13.1 +Requires: crate(bytemuck-1/min-const-generics) >= 1.13.1 +Provides: crate(%{pkgname}/bytemuck) = %{version} + +%description -n %{name}+bytemuck +This metapackage enables feature "bytemuck" for the Rust font-types crate, by pulling in any additional dependencies needed by that feature. + +%package -n %{name}+serde +Summary: Scalar types used in fonts - feature "serde" +Requires: crate(%{pkgname}) = %{version} +Requires: crate(serde-1/default) >= 1.0.0 +Requires: crate(serde-1/derive) >= 1.0.0 +Provides: crate(%{pkgname}/serde) = %{version} + +%description -n %{name}+serde +This metapackage enables feature "serde" for the Rust font-types crate, by pulling in any additional dependencies needed by that feature. + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 8cb1147dd473190f92af6e1656fd24ba580fcc62 Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:43:18 +0800 Subject: [PATCH 43/45] SPECS: Add rust-unicode-bidi-mirroring-0.4. Signed-off-by: misaka00251 --- .../Cargo.toml | 22 +++++++++++++ .../rust-unicode-bidi-mirroring-0.4.spec | 33 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 SPECS/rust-unicode-bidi-mirroring-0.4/Cargo.toml create mode 100644 SPECS/rust-unicode-bidi-mirroring-0.4/rust-unicode-bidi-mirroring-0.4.spec diff --git a/SPECS/rust-unicode-bidi-mirroring-0.4/Cargo.toml b/SPECS/rust-unicode-bidi-mirroring-0.4/Cargo.toml new file mode 100644 index 0000000000..2ac1e9f90b --- /dev/null +++ b/SPECS/rust-unicode-bidi-mirroring-0.4/Cargo.toml @@ -0,0 +1,22 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "unicode-bidi-mirroring" +version = "0.4.0" +authors = ["Yevhenii Reizner "] +description = "Unicode Bidi Mirroring property detection" +documentation = "https://docs.rs/unicode-bidi-mirroring/" +readme = "README.md" +keywords = ["unicode"] +license = "MIT/Apache-2.0" +repository = "https://github.com/RazrFalcon/unicode-bidi-mirroring" diff --git a/SPECS/rust-unicode-bidi-mirroring-0.4/rust-unicode-bidi-mirroring-0.4.spec b/SPECS/rust-unicode-bidi-mirroring-0.4/rust-unicode-bidi-mirroring-0.4.spec new file mode 100644 index 0000000000..3f11b2f4b1 --- /dev/null +++ b/SPECS/rust-unicode-bidi-mirroring-0.4/rust-unicode-bidi-mirroring-0.4.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name unicode-bidi-mirroring +%global full_version 0.4.0 +%global pkgname unicode-bidi-mirroring-0.4 + +Name: rust-unicode-bidi-mirroring-0.4 +Version: 0.4.0 +Release: %autorelease +Summary: Rust crate "unicode-bidi-mirroring" +License: MIT OR Apache-2.0 +URL: https://github.com/RazrFalcon/unicode-bidi-mirroring +#!RemoteAsset: sha256:5dfa6e8c60bb66d49db113e0125ee8711b7647b5579dc7f5f19c42357ed039fe +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "unicode-bidi-mirroring" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 305c25bddb6da3ee08edfc74b1127f74b785773b Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 17:43:55 +0800 Subject: [PATCH 44/45] SPECS: Add rust-unicode-ccc-0.4. Signed-off-by: misaka00251 --- SPECS/rust-unicode-ccc-0.4/Cargo.toml | 22 +++++++++++++ .../rust-unicode-ccc-0.4.spec | 33 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 SPECS/rust-unicode-ccc-0.4/Cargo.toml create mode 100644 SPECS/rust-unicode-ccc-0.4/rust-unicode-ccc-0.4.spec diff --git a/SPECS/rust-unicode-ccc-0.4/Cargo.toml b/SPECS/rust-unicode-ccc-0.4/Cargo.toml new file mode 100644 index 0000000000..c13fa229e3 --- /dev/null +++ b/SPECS/rust-unicode-ccc-0.4/Cargo.toml @@ -0,0 +1,22 @@ +# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO +# +# When uploading crates to the registry Cargo will automatically +# "normalize" Cargo.toml files for maximal compatibility +# with all versions of Cargo and also rewrite `path` dependencies +# to registry (e.g., crates.io) dependencies. +# +# If you are reading this file be aware that the original Cargo.toml +# will likely look very different (and much more reasonable). +# See Cargo.toml.orig for the original contents. + +[package] +edition = "2018" +name = "unicode-ccc" +version = "0.4.0" +authors = ["Yevhenii Reizner "] +description = "Unicode Canonical Combining Class detection" +documentation = "https://docs.rs/unicode-ccc/" +readme = "README.md" +keywords = ["unicode"] +license = "MIT/Apache-2.0" +repository = "https://github.com/RazrFalcon/unicode-ccc" diff --git a/SPECS/rust-unicode-ccc-0.4/rust-unicode-ccc-0.4.spec b/SPECS/rust-unicode-ccc-0.4/rust-unicode-ccc-0.4.spec new file mode 100644 index 0000000000..f2a3c74f14 --- /dev/null +++ b/SPECS/rust-unicode-ccc-0.4/rust-unicode-ccc-0.4.spec @@ -0,0 +1,33 @@ +# SPDX-FileCopyrightText: (C) 2026 Institute of Software, Chinese Academy of Sciences (ISCAS) +# SPDX-FileCopyrightText: (C) 2026 openRuyi Project Contributors +# +# SPDX-License-Identifier: MulanPSL-2.0 + +%global crate_name unicode-ccc +%global full_version 0.4.0 +%global pkgname unicode-ccc-0.4 + +Name: rust-unicode-ccc-0.4 +Version: 0.4.0 +Release: %autorelease +Summary: Rust crate "unicode-ccc" +License: MIT OR Apache-2.0 +URL: https://github.com/RazrFalcon/unicode-ccc +#!RemoteAsset: sha256:ce61d488bcdc9bc8b5d1772c404828b17fc481c0a582b5581e95fb233aef503e +Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/download#/%{name}-%{version}.tar.gz +BuildArch: noarch +BuildSystem: rustcrates + +BuildRequires: rust-rpm-macros + +Provides: crate(%{pkgname}) = %{version} +Provides: crate(%{pkgname}/default) = %{version} + +%description +Source code for takopackized Rust crate "unicode-ccc" + +%files +%{_datadir}/cargo/registry/%{crate_name}-%{version}/ + +%changelog +%autochangelog From 73369c39deaeeec23e34486317bbf3becdb305da Mon Sep 17 00:00:00 2001 From: misaka00251 Date: Tue, 14 Jul 2026 18:10:01 +0800 Subject: [PATCH 45/45] SPECS: rust-aws-lc-sys-0.35: Fix build w/ rva23. Signed-off-by: misaka00251 --- .../2000-Add-riscv64a23-support.patch | 28 +++++++++++++++++++ .../rust-aws-lc-sys-0.35.spec | 3 ++ 2 files changed, 31 insertions(+) create mode 100644 SPECS/rust-aws-lc-sys-0.35/2000-Add-riscv64a23-support.patch diff --git a/SPECS/rust-aws-lc-sys-0.35/2000-Add-riscv64a23-support.patch b/SPECS/rust-aws-lc-sys-0.35/2000-Add-riscv64a23-support.patch new file mode 100644 index 0000000000..a7be583bcf --- /dev/null +++ b/SPECS/rust-aws-lc-sys-0.35/2000-Add-riscv64a23-support.patch @@ -0,0 +1,28 @@ +From 604f6d8b2956d30262a40e1afbe295d47577ca3b Mon Sep 17 00:00:00 2001 +From: misaka00251 +Date: Wed, 15 Jul 2026 12:04:26 +0800 +Subject: [PATCH] Add riscv64a23 support + +--- + builder/cc_builder.rs | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/builder/cc_builder.rs b/builder/cc_builder.rs +index 6d9ae26..340566c 100644 +--- a/builder/cc_builder.rs ++++ b/builder/cc_builder.rs +@@ -82,7 +82,10 @@ impl PlatformConfig { + "aarch64-apple-darwin" => Some(PlatformConfig::aarch64_apple_darwin), + "aarch64-unknown-linux-gnu" => Some(PlatformConfig::aarch64_unknown_linux_gnu), + "aarch64-unknown-linux-musl" => Some(PlatformConfig::aarch64_unknown_linux_musl), +- "riscv64gc-unknown-linux-gnu" => Some(PlatformConfig::riscv64gc_unknown_linux_gnu), ++ "riscv64gc-unknown-linux-gnu" ++ | "riscv64a23-unknown-linux-gnu" => { ++ Some(PlatformConfig::riscv64gc_unknown_linux_gnu) ++ } + "x86_64-apple-darwin" => Some(PlatformConfig::x86_64_apple_darwin), + "x86_64-unknown-linux-gnu" => Some(PlatformConfig::x86_64_unknown_linux_gnu), + "x86_64-unknown-linux-musl" => Some(PlatformConfig::x86_64_unknown_linux_musl), +-- +2.55.0 + diff --git a/SPECS/rust-aws-lc-sys-0.35/rust-aws-lc-sys-0.35.spec b/SPECS/rust-aws-lc-sys-0.35/rust-aws-lc-sys-0.35.spec index 3f30e63b5f..46c515b65e 100644 --- a/SPECS/rust-aws-lc-sys-0.35/rust-aws-lc-sys-0.35.spec +++ b/SPECS/rust-aws-lc-sys-0.35/rust-aws-lc-sys-0.35.spec @@ -18,6 +18,9 @@ Source: https://static.crates.io/crates/%{crate_name}/%{full_version}/do BuildArch: noarch BuildSystem: rustcrates +# Otherwise won't build on rva23 +Patch2000: 2000-Add-riscv64a23-support.patch + BuildRequires: rust-rpm-macros Requires: crate(cc-1) >= 1.2.26