Architecture specific change in rpms/rust-backtrace.git
by githook-noreply@fedoraproject.org
The package rpms/rust-backtrace.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-backtrace.git/commit/?id=689....
Change:
-%ifarch %{ix86} ppc64le aarch64 s390x
Thanks.
Full change:
============
commit 68934b7e90d35c117420eca14563ee34d3aaeee6
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Tue Aug 9 14:34:59 2022 +0200
Update to version 0.3.66; Fixes RHBZ#2076300
diff --git a/.gitignore b/.gitignore
index d49e300..a9e1a78 100644
--- a/.gitignore
+++ b/.gitignore
@@ -24,3 +24,4 @@
/backtrace-0.3.59.crate
/backtrace-0.3.61.crate
/backtrace-0.3.64.crate
+/backtrace-0.3.66.crate
diff --git a/backtrace-fix-metadata-auto.diff b/backtrace-fix-metadata-auto.diff
new file mode 100644
index 0000000..8341996
--- /dev/null
+++ b/backtrace-fix-metadata-auto.diff
@@ -0,0 +1,21 @@
+--- backtrace-0.3.66/Cargo.toml 1970-01-01T00:00:01+00:00
++++ backtrace-0.3.66/Cargo.toml 1970-01-01T00:00:01+00:00
+@@ -121,18 +121,5 @@
+ std = []
+ unix-backtrace = []
+ verify-winapi = [
+- "winapi/dbghelp",
+- "winapi/handleapi",
+- "winapi/libloaderapi",
+- "winapi/memoryapi",
+- "winapi/minwindef",
+- "winapi/processthreadsapi",
+- "winapi/synchapi",
+- "winapi/tlhelp32",
+- "winapi/winbase",
+- "winapi/winnt",
+ ]
+
+-[target."cfg(windows)".dependencies.winapi]
+-version = "0.3.9"
+-optional = true
diff --git a/backtrace-fix-metadata.diff b/backtrace-fix-metadata.diff
index 504279f..4981696 100644
--- a/backtrace-fix-metadata.diff
+++ b/backtrace-fix-metadata.diff
@@ -1,6 +1,14 @@
---- backtrace-0.3.64/Cargo.toml 1970-01-01T00:00:01+00:00
-+++ backtrace-0.3.64/Cargo.toml 2022-02-03T14:55:24.935091+00:00
-@@ -42,11 +42,6 @@
+--- backtrace-0.3.66/Cargo.toml 1970-01-01T00:00:01+00:00
++++ backtrace-0.3.66/Cargo.toml 2022-08-09T09:33:39.983784+00:00
+@@ -25,6 +25,7 @@
+ readme = "README.md"
+ license = "MIT/Apache-2.0"
+ repository = "https://github.com/rust-lang/backtrace-rs"
++exclude = ["/ci/"]
+
+ [[example]]
+ name = "backtrace"
+@@ -44,11 +45,6 @@
[[test]]
name = "smoke"
@@ -12,23 +20,3 @@
required-features = ["std"]
edition = "2018"
-@@ -96,19 +91,9 @@
- version = "1.0.67"
-
- [features]
--coresymbolication = []
--dbghelp = []
- default = ["std"]
--dladdr = []
- gimli-symbolize = []
--kernel32 = []
- libbacktrace = []
--libunwind = []
- serialize-rustc = ["rustc-serialize"]
- serialize-serde = ["serde"]
- std = []
--unix-backtrace = []
--verify-winapi = ["winapi/dbghelp", "winapi/handleapi", "winapi/libloaderapi", "winapi/memoryapi", "winapi/minwindef", "winapi/processthreadsapi", "winapi/synchapi", "winapi/tlhelp32", "winapi/winbase", "winapi/winnt"]
--[target."cfg(windows)".dependencies.winapi]
--version = "0.3.9"
--optional = true
diff --git a/rust-backtrace.spec b/rust-backtrace.spec
index e92677d..8a4c24a 100644
--- a/rust-backtrace.spec
+++ b/rust-backtrace.spec
@@ -1,26 +1,28 @@
-# Generated by rust2rpm 20
+# Generated by rust2rpm 22
%bcond_without check
%global debug_package %{nil}
%global crate backtrace
-Name: rust-%{crate}
-Version: 0.3.64
+Name: rust-backtrace
+Version: 0.3.66
Release: %autorelease
Summary: Library to acquire a stack trace (backtrace) at runtime in a Rust program
# Upstream license specification: MIT/Apache-2.0
-License: MIT or ASL 2.0
+License: MIT OR Apache-2.0
URL: https://crates.io/crates/backtrace
Source: %{crates_source}
-# Initial patched metadata
-# * Drop windows-specific dependencies and features
-# * Drop deprecated/internal features
-Patch0: backtrace-fix-metadata.diff
+# Automatically generated patch to strip foreign dependencies
+Patch: backtrace-fix-metadata-auto.diff
+# Manually created patch for downstream crate metadata changes
+# * drop accuracy test (requires crates to be built in dylib mode)
+# * exclude files for upstream CI
+Patch: backtrace-fix-metadata.diff
ExclusiveArch: %{rust_arches}
-BuildRequires: rust-packaging
+BuildRequires: rust-packaging >= 21
%global _description %{expand:
Library to acquire a stack trace (backtrace) at runtime in a Rust program.}
@@ -37,10 +39,10 @@ This package contains library source intended for building other packages which
use the "%{crate}" crate.
%files devel
-%license LICENSE-APACHE LICENSE-MIT
-%doc README.md
-%{cargo_registry}/%{crate}-%{version_no_tilde}/
-%exclude %{cargo_registry}/%{crate}-%{version_no_tilde}/ci/
+%license %{crate_instdir}/LICENSE-APACHE
+%license %{crate_instdir}/LICENSE-MIT
+%doc %{crate_instdir}/README.md
+%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
@@ -52,7 +54,7 @@ This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+cpp_demangle-devel
Summary: %{summary}
@@ -64,7 +66,7 @@ This package contains library source intended for building other packages which
use the "cpp_demangle" feature of the "%{crate}" crate.
%files -n %{name}+cpp_demangle-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+gimli-symbolize-devel
Summary: %{summary}
@@ -76,7 +78,7 @@ This package contains library source intended for building other packages which
use the "gimli-symbolize" feature of the "%{crate}" crate.
%files -n %{name}+gimli-symbolize-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+libbacktrace-devel
Summary: %{summary}
@@ -88,7 +90,7 @@ This package contains library source intended for building other packages which
use the "libbacktrace" feature of the "%{crate}" crate.
%files -n %{name}+libbacktrace-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+rustc-serialize-devel
Summary: %{summary}
@@ -100,7 +102,7 @@ This package contains library source intended for building other packages which
use the "rustc-serialize" feature of the "%{crate}" crate.
%files -n %{name}+rustc-serialize-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serde-devel
Summary: %{summary}
@@ -112,7 +114,7 @@ This package contains library source intended for building other packages which
use the "serde" feature of the "%{crate}" crate.
%files -n %{name}+serde-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serialize-rustc-devel
Summary: %{summary}
@@ -124,7 +126,7 @@ This package contains library source intended for building other packages which
use the "serialize-rustc" feature of the "%{crate}" crate.
%files -n %{name}+serialize-rustc-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serialize-serde-devel
Summary: %{summary}
@@ -136,7 +138,7 @@ This package contains library source intended for building other packages which
use the "serialize-serde" feature of the "%{crate}" crate.
%files -n %{name}+serialize-serde-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+std-devel
Summary: %{summary}
@@ -148,7 +150,7 @@ This package contains library source intended for building other packages which
use the "std" feature of the "%{crate}" crate.
%files -n %{name}+std-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
@@ -168,12 +170,9 @@ rm -r tests/accuracy/
%if %{with check}
%check
# https://github.com/rust-lang/backtrace-rs/issues/204
-%ifarch %{ix86} ppc64le aarch64 s390x
- %cargo_test || :
-%else
- # some tests can't find symbols in release mode
- %cargo_test -- -- --skip smoke_test_frames
-%endif
+# * smoke_test_frames: fails on all architectures
+# * backtrace_new_unresolved_should_start_with_call_site_trace: fails on aarch64, ppc64le, s390x
+%cargo_test -- -- --skip smoke_test_frames --skip backtrace_new_unresolved_should_start_with_call_site_trace
%endif
%changelog
diff --git a/rust2rpm.conf b/rust2rpm.conf
new file mode 100644
index 0000000..aede82b
--- /dev/null
+++ b/rust2rpm.conf
@@ -0,0 +1,9 @@
+[DEFAULT]
+unwanted-features =
+ coresymbolication
+ dbghelp
+ dladdr
+ kernel32
+ libunwind
+ unix-backtrace
+ verify-winapi
diff --git a/sources b/sources
index e981e91..5205a85 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (backtrace-0.3.64.crate) = 37435cca0587c1c7b511536478ff448914d423c9cf6152ec8bb884c19d1c2466c377b270ebce2028960b4a380f3152fbfeb940de943ef4071ed271c7cd576f2e
+SHA512 (backtrace-0.3.66.crate) = 7370ce52d0b949a6faa05f91225f60928e42e52c00ed2ba4054ef7efd41cd65c77b0e67c8afb9d5bf834eb4b1451b642720521e17d1954be810e3c5fc70bf646
commit bce065ef876ae38a23f62087bd164e56d7e88f53
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Sat Jul 23 02:52:42 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
1 year, 10 months
Architecture specific change in rpms/rust-findshlibs.git
by githook-noreply@fedoraproject.org
The package rpms/rust-findshlibs.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-findshlibs.git/commit/?id=81...
https://src.fedoraproject.org/cgit/rpms/rust-findshlibs.git/commit/?id=04....
Change:
+ExclusiveArch: %{rust_arches}
-ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit 8270085369f39fe507b968224ef28ee39b7f5bda
Author: Michel Alexandre Salim <salimma(a)fedoraproject.org>
Date: Wed Apr 20 11:20:36 2022 -0700
Update to 0.10.2
Signed-off-by: Michel Alexandre Salim <salimma(a)fedoraproject.org>
diff --git a/.gitignore b/.gitignore
index 8eb2db7..0b269cf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/findshlibs-0.5.0.crate
/findshlibs-0.7.0.crate
/findshlibs-0.8.0.crate
+/findshlibs-0.10.2.crate
diff --git a/findshlibs-fix-metadata.diff b/findshlibs-fix-metadata.diff
index 76f6463..58911fa 100644
--- a/findshlibs-fix-metadata.diff
+++ b/findshlibs-fix-metadata.diff
@@ -1,11 +1,11 @@
---- findshlibs-0.8.0/Cargo.toml 2020-11-25T17:26:32+00:00
-+++ findshlibs-0.8.0/Cargo.toml 2021-05-11T12:22:18.128310+00:00
-@@ -23,8 +23,6 @@
- repository = "https://github.com/gimli-rs/findshlibs"
- [dependencies.libc]
- version = "0.2.65"
--[target."cfg(target_os = \"macos\")".dependencies.lazy_static]
+--- findshlibs-0.10.2/Cargo.toml 1970-01-01T00:00:00+00:00
++++ findshlibs-0.10.2/Cargo.toml 2022-04-20T18:18:00.934891+00:00
+@@ -24,8 +24,3 @@
+ version = "0.2.104"
+ [build-dependencies.cc]
+ version = "1.0.67"
+-[target."cfg(any(target_os = \"macos\", target_os = \"ios\"))".dependencies.lazy_static]
-version = "1.4"
- [badges.coveralls]
- repository = "gimli-rs/findshlibs"
-
+-[target."cfg(target_os = \"windows\")".dependencies.winapi]
+-version = "0.3.9"
+-features = ["psapi", "memoryapi", "libloaderapi", "processthreadsapi"]
diff --git a/rust-findshlibs.spec b/rust-findshlibs.spec
index 2b24830..daca2bf 100644
--- a/rust-findshlibs.spec
+++ b/rust-findshlibs.spec
@@ -1,28 +1,24 @@
-# Generated by rust2rpm 17
+# Generated by rust2rpm 21
%bcond_without check
%global debug_package %{nil}
%global crate findshlibs
Name: rust-%{crate}
-Version: 0.8.0
+Version: 0.10.2
Release: %autorelease
-Summary: Find the set of shared libraries loaded in the current process
+Summary: Find the set of shared libraries loaded in the current process with a cross platform API
# Upstream license specification: MIT OR Apache-2.0
License: MIT or ASL 2.0
URL: https://crates.io/crates/findshlibs
Source: %{crates_source}
-# Initial patched metadata
-# * drop mac OS-specific dependencies
+# Drop dependencies for Mac and Windows targets
Patch0: findshlibs-fix-metadata.diff
ExclusiveArch: %{rust_arches}
-%if %{__cargo_skip_build}
-BuildArch: noarch
-%endif
-BuildRequires: rust-packaging
+BuildRequires: rust-packaging >= 21
%global _description %{expand:
Find the set of shared libraries loaded in the current process with a cross
@@ -36,13 +32,14 @@ BuildArch: noarch
%description devel %{_description}
-This package contains library source intended for building other packages
-which use "%{crate}" crate.
+This package contains library source intended for building other packages which
+use the "%{crate}" crate.
%files devel
-%license LICENSE-APACHE LICENSE-MIT
-%doc README.md
-%{cargo_registry}/%{crate}-%{version_no_tilde}/
+%license %{crate_instdir}/LICENSE-APACHE
+%license %{crate_instdir}/LICENSE-MIT
+%doc %{crate_instdir}/README.md
+%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
@@ -50,11 +47,11 @@ BuildArch: noarch
%description -n %{name}+default-devel %{_description}
-This package contains library source intended for building other packages
-which use "default" feature of "%{crate}" crate.
+This package contains library source intended for building other packages which
+use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
diff --git a/sources b/sources
index 82a4ae4..c3da174 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (findshlibs-0.8.0.crate) = 4ee36539d477c743208aaba821d608f3af7817376c3ab0f10b27bb230b7deb089c3921d1d5e6fa0ec4edde0da108c902e5fc501a86c7dcc5497b7cfa1e79b307
+SHA512 (findshlibs-0.10.2.crate) = fdaf3453939375be5af082a3d044bf2d0fbdf5327059298c7c27164a191eb885bd9e4dd0577d95ac4ad4da1a4e59ecd5bbcfc5b6e1f872859fb93359f2623ab6
commit 8381e0f8eecec887abed47baa2120b4b99232165
Author: Michel Alexandre Salim <salimma(a)fedoraproject.org>
Date: Wed Apr 20 11:20:00 2022 -0700
Convert to rpmautospec
Signed-off-by: Michel Alexandre Salim <salimma(a)fedoraproject.org>
diff --git a/changelog b/changelog
new file mode 100644
index 0000000..e591432
--- /dev/null
+++ b/changelog
@@ -0,0 +1,24 @@
+* Fri Jul 23 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.8.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
+
+* Tue May 11 2021 Fabio Valentini <decathorpe(a)gmail.com> - 0.8.0-1
+- Update to version 0.8.0.
+- Fixes RHBZ#1901653
+
+* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Wed May 13 07:43:29 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.7.0-1
+- Update to 0.7.0
+
+* Sun Feb 02 18:47:13 CET 2020 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-3
+- Remove extraneous executable bits
+
+* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.5.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Fri Dec 06 18:20:28 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-1
+- Initial package
diff --git a/rust-findshlibs.spec b/rust-findshlibs.spec
index 73ab1a9..2b24830 100644
--- a/rust-findshlibs.spec
+++ b/rust-findshlibs.spec
@@ -6,7 +6,7 @@
Name: rust-%{crate}
Version: 0.8.0
-Release: 2%{?dist}
+Release: %autorelease
Summary: Find the set of shared libraries loaded in the current process
# Upstream license specification: MIT OR Apache-2.0
@@ -75,27 +75,4 @@ which use "default" feature of "%{crate}" crate.
%endif
%changelog
-* Fri Jul 23 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.8.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue May 11 2021 Fabio Valentini <decathorpe(a)gmail.com> - 0.8.0-1
-- Update to version 0.8.0.
-- Fixes RHBZ#1901653
-
-* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Wed May 13 07:43:29 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.7.0-1
-- Update to 0.7.0
-
-* Sun Feb 02 18:47:13 CET 2020 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-3
-- Remove extraneous executable bits
-
-* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.5.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Fri Dec 06 18:20:28 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-1
-- Initial package
+%autochangelog
commit 819e91fbc2bdffb6d1ea59d9a58e748cea3fe999
Author: Tomas Hrcka <thrcka(a)redhat.com>
Date: Thu Apr 21 14:41:46 2022 +0200
Unretirement request: https://pagure.io/releng/issue/10755
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8eb2db7
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/findshlibs-0.5.0.crate
+/findshlibs-0.7.0.crate
+/findshlibs-0.8.0.crate
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..5182bab
--- /dev/null
+++ b/README.md
@@ -0,0 +1,3 @@
+# rust-findshlibs
+
+The rust-findshlibs package
\ No newline at end of file
diff --git a/dead.package b/dead.package
deleted file mode 100644
index 5ac8255..0000000
--- a/dead.package
+++ /dev/null
@@ -1 +0,0 @@
-no longer used
diff --git a/findshlibs-fix-metadata.diff b/findshlibs-fix-metadata.diff
new file mode 100644
index 0000000..76f6463
--- /dev/null
+++ b/findshlibs-fix-metadata.diff
@@ -0,0 +1,11 @@
+--- findshlibs-0.8.0/Cargo.toml 2020-11-25T17:26:32+00:00
++++ findshlibs-0.8.0/Cargo.toml 2021-05-11T12:22:18.128310+00:00
+@@ -23,8 +23,6 @@
+ repository = "https://github.com/gimli-rs/findshlibs"
+ [dependencies.libc]
+ version = "0.2.65"
+-[target."cfg(target_os = \"macos\")".dependencies.lazy_static]
+-version = "1.4"
+ [badges.coveralls]
+ repository = "gimli-rs/findshlibs"
+
diff --git a/rust-findshlibs.spec b/rust-findshlibs.spec
new file mode 100644
index 0000000..73ab1a9
--- /dev/null
+++ b/rust-findshlibs.spec
@@ -0,0 +1,101 @@
+# Generated by rust2rpm 17
+%bcond_without check
+%global debug_package %{nil}
+
+%global crate findshlibs
+
+Name: rust-%{crate}
+Version: 0.8.0
+Release: 2%{?dist}
+Summary: Find the set of shared libraries loaded in the current process
+
+# Upstream license specification: MIT OR Apache-2.0
+License: MIT or ASL 2.0
+URL: https://crates.io/crates/findshlibs
+Source: %{crates_source}
+# Initial patched metadata
+# * drop mac OS-specific dependencies
+Patch0: findshlibs-fix-metadata.diff
+
+ExclusiveArch: %{rust_arches}
+%if %{__cargo_skip_build}
+BuildArch: noarch
+%endif
+
+BuildRequires: rust-packaging
+
+%global _description %{expand:
+Find the set of shared libraries loaded in the current process with a cross
+platform API.}
+
+%description %{_description}
+
+%package devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description devel %{_description}
+
+This package contains library source intended for building other packages
+which use "%{crate}" crate.
+
+%files devel
+%license LICENSE-APACHE LICENSE-MIT
+%doc README.md
+%{cargo_registry}/%{crate}-%{version_no_tilde}/
+
+%package -n %{name}+default-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+default-devel %{_description}
+
+This package contains library source intended for building other packages
+which use "default" feature of "%{crate}" crate.
+
+%files -n %{name}+default-devel
+%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%cargo_test
+%endif
+
+%changelog
+* Fri Jul 23 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.8.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
+
+* Tue May 11 2021 Fabio Valentini <decathorpe(a)gmail.com> - 0.8.0-1
+- Update to version 0.8.0.
+- Fixes RHBZ#1901653
+
+* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Wed May 13 07:43:29 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.7.0-1
+- Update to 0.7.0
+
+* Sun Feb 02 18:47:13 CET 2020 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-3
+- Remove extraneous executable bits
+
+* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.5.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Fri Dec 06 18:20:28 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-1
+- Initial package
diff --git a/sources b/sources
new file mode 100644
index 0000000..82a4ae4
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (findshlibs-0.8.0.crate) = 4ee36539d477c743208aaba821d608f3af7817376c3ab0f10b27bb230b7deb089c3921d1d5e6fa0ec4edde0da108c902e5fc501a86c7dcc5497b7cfa1e79b307
commit 0461e4ab8252b1d8fd3708e453d7de8994a6524d
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Tue Nov 16 19:10:29 2021 +0100
no longer used
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 8eb2db7..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-/findshlibs-0.5.0.crate
-/findshlibs-0.7.0.crate
-/findshlibs-0.8.0.crate
diff --git a/README.md b/README.md
deleted file mode 100644
index 5182bab..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# rust-findshlibs
-
-The rust-findshlibs package
\ No newline at end of file
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..5ac8255
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+no longer used
diff --git a/findshlibs-fix-metadata.diff b/findshlibs-fix-metadata.diff
deleted file mode 100644
index 76f6463..0000000
--- a/findshlibs-fix-metadata.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- findshlibs-0.8.0/Cargo.toml 2020-11-25T17:26:32+00:00
-+++ findshlibs-0.8.0/Cargo.toml 2021-05-11T12:22:18.128310+00:00
-@@ -23,8 +23,6 @@
- repository = "https://github.com/gimli-rs/findshlibs"
- [dependencies.libc]
- version = "0.2.65"
--[target."cfg(target_os = \"macos\")".dependencies.lazy_static]
--version = "1.4"
- [badges.coveralls]
- repository = "gimli-rs/findshlibs"
-
diff --git a/rust-findshlibs.spec b/rust-findshlibs.spec
deleted file mode 100644
index 73ab1a9..0000000
--- a/rust-findshlibs.spec
+++ /dev/null
@@ -1,101 +0,0 @@
-# Generated by rust2rpm 17
-%bcond_without check
-%global debug_package %{nil}
-
-%global crate findshlibs
-
-Name: rust-%{crate}
-Version: 0.8.0
-Release: 2%{?dist}
-Summary: Find the set of shared libraries loaded in the current process
-
-# Upstream license specification: MIT OR Apache-2.0
-License: MIT or ASL 2.0
-URL: https://crates.io/crates/findshlibs
-Source: %{crates_source}
-# Initial patched metadata
-# * drop mac OS-specific dependencies
-Patch0: findshlibs-fix-metadata.diff
-
-ExclusiveArch: %{rust_arches}
-%if %{__cargo_skip_build}
-BuildArch: noarch
-%endif
-
-BuildRequires: rust-packaging
-
-%global _description %{expand:
-Find the set of shared libraries loaded in the current process with a cross
-platform API.}
-
-%description %{_description}
-
-%package devel
-Summary: %{summary}
-BuildArch: noarch
-
-%description devel %{_description}
-
-This package contains library source intended for building other packages
-which use "%{crate}" crate.
-
-%files devel
-%license LICENSE-APACHE LICENSE-MIT
-%doc README.md
-%{cargo_registry}/%{crate}-%{version_no_tilde}/
-
-%package -n %{name}+default-devel
-Summary: %{summary}
-BuildArch: noarch
-
-%description -n %{name}+default-devel %{_description}
-
-This package contains library source intended for building other packages
-which use "default" feature of "%{crate}" crate.
-
-%files -n %{name}+default-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
-
-%prep
-%autosetup -n %{crate}-%{version_no_tilde} -p1
-%cargo_prep
-
-%generate_buildrequires
-%cargo_generate_buildrequires
-
-%build
-%cargo_build
-
-%install
-%cargo_install
-
-%if %{with check}
-%check
-%cargo_test
-%endif
-
-%changelog
-* Fri Jul 23 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.8.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue May 11 2021 Fabio Valentini <decathorpe(a)gmail.com> - 0.8.0-1
-- Update to version 0.8.0.
-- Fixes RHBZ#1901653
-
-* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.7.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Wed May 13 07:43:29 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.7.0-1
-- Update to 0.7.0
-
-* Sun Feb 02 18:47:13 CET 2020 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-3
-- Remove extraneous executable bits
-
-* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.5.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Fri Dec 06 18:20:28 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.5.0-1
-- Initial package
diff --git a/sources b/sources
deleted file mode 100644
index 82a4ae4..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (findshlibs-0.8.0.crate) = 4ee36539d477c743208aaba821d608f3af7817376c3ab0f10b27bb230b7deb089c3921d1d5e6fa0ec4edde0da108c902e5fc501a86c7dcc5497b7cfa1e79b307
1 year, 10 months
[Report] Packages Restricting Arches
by root
New package excluding arches (1)
============================
- rust-temp_testdir
ExclusiveArch: %{rust_arches}
Package no longer excluding arches (1)
==================================
- rust-bincode0.8
List of packages currently excluding arches (2851)
===========================================
- 0ad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- 90-Second-Portraits
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- BareBonesBrowserLaunch
ExclusiveArch: %{java_arches} noarch
- CFR
ExclusiveArch: %{java_arches} noarch
- CardManager
ExclusiveArch: %{java_arches} noarch
- GoldenCheetah
ExclusiveArch: %{qt5_qtwebengine_arches}
- GtkAda
ExclusiveArch: %{GPRbuild_arches}
- GtkAda3
ExclusiveArch: %{GPRbuild_arches}
- IPAddress
ExclusiveArch: %{java_arches} noarch
- Mars
ExclusiveArch: %{java_arches} noarch
- OpenColorIO
ExclusiveArch: x86_64 ppc64le
- OpenImageIO
ExclusiveArch: x86_64 ppc64le
- OpenMolcas
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- OpenStego
ExclusiveArch: %{java_arches} noarch
- PragmARC
ExclusiveArch: %{GPRbuild_arches}
- R-V8
ExclusiveArch: %{nodejs_arches}
- RdRand
ExclusiveArch: %{ix86} x86_64
- RediSearch
ExclusiveArch: x86_64
- SLOF
ExclusiveArch: ppc64le
- YafaRay
ExclusiveArch: %{ix86} x86_64
- aardvark-dns
ExclusiveArch: %{rust_arches}
- aboot
ExclusiveArch: alpha
- accel-config
ExclusiveArch: %{ix86} x86_64
- acpid
ExclusiveArch: ia64 x86_64 %{ix86} %{arm} aarch64
- ahven
ExclusiveArch: %{GPRbuild_arches}
- algobox
ExclusiveArch: %{qt5_qtwebengine_arches}
- alleyoop
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x %{arm} aarch64
- american-fuzzy-lop
ExclusiveArch: %{ix86} x86_64 s390x
- anet
ExclusiveArch: %{GPRbuild_arches}
- anki
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- ant
ExclusiveArch: %{java_arches} noarch
- ant-antunit
ExclusiveArch: %{java_arches} noarch
- antlr
ExclusiveArch: %{java_arches}
- antlr-maven-plugin
ExclusiveArch: %{java_arches} noarch
- antlr3
ExclusiveArch: %{java_arches}
- antlr32
ExclusiveArch: %{java_arches} noarch
- antlr4-project
ExclusiveArch: %{java_arches}
- antlrworks
ExclusiveArch: %{java_arches} noarch
- aopalliance
ExclusiveArch: %{java_arches} noarch
- apache-commons-beanutils
ExclusiveArch: %{java_arches} noarch
- apache-commons-cli
ExclusiveArch: %{java_arches} noarch
- apache-commons-codec
ExclusiveArch: %{java_arches} noarch
- apache-commons-collections
ExclusiveArch: %{java_arches} noarch
- apache-commons-collections4
ExclusiveArch: %{java_arches} noarch
- apache-commons-compress
ExclusiveArch: %{java_arches} noarch
- apache-commons-digester
ExclusiveArch: %{java_arches} noarch
- apache-commons-exec
ExclusiveArch: %{java_arches} noarch
- apache-commons-fileupload
ExclusiveArch: %{java_arches} noarch
- apache-commons-io
ExclusiveArch: %{java_arches} noarch
- apache-commons-jxpath
ExclusiveArch: %{java_arches} noarch
- apache-commons-lang3
ExclusiveArch: %{java_arches} noarch
- apache-commons-logging
ExclusiveArch: %{java_arches} noarch
- apache-commons-math
ExclusiveArch: %{java_arches} noarch
- apache-commons-modeler
ExclusiveArch: %{java_arches} noarch
- apache-commons-net
ExclusiveArch: %{java_arches} noarch
- apache-commons-parent
ExclusiveArch: %{java_arches} noarch
- apache-commons-pool
ExclusiveArch: %{java_arches} noarch
- apache-ivy
ExclusiveArch: %{java_arches} noarch
- apache-parent
ExclusiveArch: %{java_arches} noarch
- apache-resource-bundles
ExclusiveArch: %{java_arches} noarch
- apache-sshd
ExclusiveArch: %{java_arches} noarch
- apiguardian
ExclusiveArch: %{java_arches} noarch
- apmd
ExclusiveArch: %{ix86}
- appstream-generator
ExclusiveArch: %{ldc_arches}
- aqute-bnd
ExclusiveArch: %{java_arches} noarch
- args4j
ExclusiveArch: %{java_arches} noarch
- arm-trusted-firmware
ExclusiveArch: aarch64
- assertj-core
ExclusiveArch: %{java_arches} noarch
- atinject
ExclusiveArch: %{java_arches} noarch
- aunit
ExclusiveArch: %GPRbuild_arches
- auto
ExclusiveArch: %{java_arches} noarch
- avgtime
ExclusiveArch: %{ldc_arches}
- aws
ExclusiveArch: %GPRbuild_arches
- azure-cli
ExclusiveArch: %{java_arches} noarch
- batik
ExclusiveArch: %{java_arches} noarch
- bcal
ExclusiveArch: x86_64 aarch64 ia64 ppc64 ppc64le s390x
- bcc
ExclusiveArch: x86_64 %{power64} aarch64 s390x armv7hl
- bcel
ExclusiveArch: %{java_arches} noarch
- bcm283x-firmware
ExclusiveArch: %{arm} aarch64
- beansbinding
ExclusiveArch: %{java_arches} noarch
- belle-sip
ExclusiveArch: %{java_arches}
- berusky2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{mips}
- beust-jcommander
ExclusiveArch: %{java_arches} noarch
- biosdevname
ExclusiveArch: %{ix86} x86_64
- blender
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- bless
ExclusiveArch: %mono_arches
- bolzplatz2006
ExclusiveArch: %{java_arches}
- bouncycastle
ExclusiveArch: %{java_arches} noarch
- bpftrace
ExclusiveArch: x86_64 %{power64} aarch64 s390x
- brazil
ExclusiveArch: %{java_arches} noarch
- bsf
ExclusiveArch: %{java_arches} noarch
- bsh
ExclusiveArch: %{java_arches} noarch
- buildnumber-maven-plugin
ExclusiveArch: %{java_arches} noarch
- byte-buddy
ExclusiveArch: %{java_arches} noarch
- byteman
ExclusiveArch: %{java_arches} noarch
- cachelib
ExclusiveArch: x86_64 aarch64 ppc64le
- calamares
ExclusiveArch: %{ix86} x86_64 aarch64
- calibre
ExclusiveArch: %{qt5_qtwebengine_arches}
- cambozola
ExclusiveArch: %{java_arches} noarch
- canl-java
ExclusiveArch: %{java_arches} noarch
- ccdciel
ExclusiveArch: %{fpc_arches}
- cdcollect
ExclusiveArch: %{mono_arches}
- cdi-api
ExclusiveArch: %{java_arches} noarch
- ceph
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- cglib
ExclusiveArch: %{java_arches} noarch
- chromium
ExclusiveArch: x86_64 i686
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 i686 aarch64
- cjdns
ExclusiveArch: %{nodejs_arches}
- classloader-leak-test-framework
ExclusiveArch: %{java_arches} noarch
- classpathless-compiler
ExclusiveArch: %{java_arches} noarch
- clevis-pin-tpm2
ExclusiveArch: %{rust_arches}
- clojure
ExclusiveArch: %{java_arches} noarch
- clojure-core-specs-alpha
ExclusiveArch: %{java_arches} noarch
- clojure-maven-plugin
ExclusiveArch: %{java_arches} noarch
- clojure-spec-alpha
ExclusiveArch: %{java_arches} noarch
- cmospwd
ExclusiveArch: %{ix86} x86_64
- cmrt
ExclusiveArch: %{ix86} x86_64 ia64
- codehaus-parent
ExclusiveArch: %{java_arches} noarch
- coffee-script
ExclusiveArch: %{nodejs_arches} noarch
- colorful
ExclusiveArch: %{fpc_arches}
- colossus
ExclusiveArch: %{java_arches} noarch
- console-image-viewer
ExclusiveArch: %{java_arches} noarch
- coq
ExclusiveArch: %{java_arches}
- cortado
ExclusiveArch: %{java_arches} noarch
- cpu-x
ExclusiveArch: i686 x86_64
- cpufetch
ExclusiveArch: %{arm} aarch64 x86_64 ppc ppc64 ppc64le
- cpuid
ExclusiveArch: %{ix86} x86_64
- cqrlog
ExclusiveArch: %{fpc_arches}
- crash
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- crash-gcore-command
ExclusiveArch: aarch64 ppc64le x86_64
- crash-trace-command
ExclusiveArch: aarch64 ppc64le s390x x86_64
- cri-o
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- cri-tools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- criu
ExclusiveArch: x86_64 %{arm} ppc64le aarch64 s390x
- cryptlib
ExclusiveArch: x86_64 aarch64 ppc64le
- crypto-policies
ExclusiveArch: %{java_arches} noarch
- cryptobone
ExclusiveArch: x86_64 ppc64le aarch64
- csslint
ExclusiveArch: %{nodejs_arches} noarch
- cvc4
ExclusiveArch: %{java_arches}
- daq
ExclusiveArch: x86_64 aarch64
- dbus-parsec
ExclusiveArch: %{rust_arches}
- dbus-sharp
ExclusiveArch: %mono_arches
- dbus-sharp-glib
ExclusiveArch: %mono_arches
- dbxtool
ExclusiveArch: i386 x86_64 aarch64
- decentxml
ExclusiveArch: %{java_arches} noarch
- deepin-daemon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- deepin-desktop-schemas
ExclusiveArch: %{go_arches}
- directory-maven-plugin
ExclusiveArch: %{java_arches} noarch
- dirgra
ExclusiveArch: %{java_arches} noarch
- disruptor
ExclusiveArch: %{java_arches} noarch
- ditaa
ExclusiveArch: %{java_arches} noarch
- dlm
ExclusiveArch: i686 x86_64
- dmidecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- dmtcp
ExclusiveArch: x86_64
- docker-distribution
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- dolphin-emu
ExclusiveArch: x86_64 aarch64
- dom4j
ExclusiveArch: %{java_arches} noarch
- dotnet6.0
ExclusiveArch: aarch64 x86_64 s390x
ExclusiveArch: x86_64
- doublecmd
ExclusiveArch: %{ix86} x86_64
- dpdk
ExclusiveArch: x86_64 i686 aarch64 ppc64le
- dub
ExclusiveArch: %{ldc_arches}
- dxvk-native
ExclusiveArch: %{ix86} x86_64
- dyninst
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
- e3
ExclusiveArch: %{ix86} x86_64
- easymock
ExclusiveArch: %{java_arches} noarch
- ecj
ExclusiveArch: %{java_arches} noarch
- eclipse-swt
ExclusiveArch: %{java_arches}
- ed25519-java
ExclusiveArch: %{java_arches} noarch
- edk2
ExclusiveArch: x86_64 aarch64
- efibootmgr
ExclusiveArch: %{efi}
- efifs
ExclusiveArch: %{efi}
- efitools
ExclusiveArch: %{efi}
- efivar
ExclusiveArch: %{efi}
- elk
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- emacs-slime
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- enjarify
ExclusiveArch: %{java_arches} noarch
- enki
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- envytools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- eric
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- erlang-corba
ExclusiveArch: %{java_arches}
- eth-tools
ExclusiveArch: x86_64
- exec-maven-plugin
ExclusiveArch: %{java_arches} noarch
- extra-enforcer-rules
ExclusiveArch: %{java_arches} noarch
- fasterxml-oss-parent
ExclusiveArch: %{java_arches} noarch
- fb303
ExclusiveArch: x86_64 aarch64 ppc64le
- fbthrift
ExclusiveArch: x86_64 aarch64 ppc64le
- fcitx-libpinyin
ExclusiveArch: %{qt5_qtwebengine_arches}
- fedora-dockerfiles
ExclusiveArch: %{go_arches}
- felix-parent
ExclusiveArch: %{java_arches} noarch
- felix-utils
ExclusiveArch: %{java_arches} noarch
- fernflower
ExclusiveArch: %{java_arches} noarch
- fes
ExclusiveArch: %{ix86} x86_64
- filedrop
ExclusiveArch: %{java_arches} noarch
- fishbowl
ExclusiveArch: %{java_arches} noarch
- fizz
ExclusiveArch: x86_64 aarch64 ppc64le
- flocq
ExclusiveArch: %{java_arches}
- florist
ExclusiveArch: %{GPRbuild_arches}
- fluent-bit
ExclusiveArch: x86_64 aarch64
- flute
ExclusiveArch: %{java_arches} noarch
- folly
ExclusiveArch: x86_64 aarch64 ppc64le
- fop
ExclusiveArch: %{java_arches} noarch
- forge-parent
ExclusiveArch: %{java_arches} noarch
- fpc
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64 ppc64le
- frama-c
ExclusiveArch: %{java_arches}
- freecol
ExclusiveArch: %{java_arches} noarch
- freemarker
ExclusiveArch: %{java_arches} noarch
- freerouting
ExclusiveArch: %{java_arches} noarch
- frescobaldi
ExclusiveArch: %{qt5_qtwebengine_arches}
- frysk
ExclusiveArch: x86_64 ppc64
- fusesource-pom
ExclusiveArch: %{java_arches} noarch
- fwts
ExclusiveArch: x86_64 %{arm} aarch64 s390x riscv64 %{power64}
- fwupd-efi
ExclusiveArch: x86_64 aarch64
- ga
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- gap-pkg-hap
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- gap-pkg-hapcryst
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- gap-pkg-polymaking
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- gap-pkg-xmod
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- gappalib-coq
ExclusiveArch: %{java_arches}
- gbrainy
ExclusiveArch: %mono_arches
- gdb
ExclusiveArch: %{ix86} x86_64
- gdb-exploitable
ExclusiveArch: x86_64 i386
ExclusiveArch: x86_64 noarch
- gearhead1
ExclusiveArch: %{fpc_arches}
- ghdl
ExclusiveArch: %{GNAT_arches}
- ghostwriter
ExclusiveArch: %{qt5_qtwebengine_arches}
- gio-sharp
ExclusiveArch: %mono_arches
- gir-to-d
ExclusiveArch: %{ldc_arches}
- git-octopus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- gitqlient
ExclusiveArch: %{qt5_qtwebengine_arches}
- giver
ExclusiveArch: %{mono_arches}
- gkeyfile-sharp
ExclusiveArch: %mono_arches
- glibc32
ExclusiveArch: x86_64
- glibd
ExclusiveArch: %{ldc_arches}
- gmqcc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- gnatcoll
ExclusiveArch: %{GPRbuild_arches}
- gnatcoll-bindings
ExclusiveArch: %{GPRbuild_arches}
- gnatcoll-db
ExclusiveArch: %{GPRbuild_arches}
- gnome-boxes
ExclusiveArch: x86_64
- gnome-desktop-sharp
ExclusiveArch: %mono_arches
- gnome-do
ExclusiveArch: %mono_arches
- gnome-keyring-sharp
ExclusiveArch: %mono_arches
- gnome-rdp
ExclusiveArch: %{mono_arches}
- gnome-sharp
ExclusiveArch: %mono_arches
- gnome-subtitles
ExclusiveArch: %mono_arches
- gnu-efi
ExclusiveArch: %{efi}
- go-bindata
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- go-compilers
ExclusiveArch: %{go_arches}
- godep
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang
ExclusiveArch: %{golang_arches}
- gomtree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- google-gson
ExclusiveArch: %{java_arches} noarch
- google-guice
ExclusiveArch: %{java_arches} noarch
- gotun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: x86_64
- goverlay
ExclusiveArch: %{fpc_arches}
- gprbuild
ExclusiveArch: %{GPRbuild_arches} %{bootstrap_arch}
- gprolog
ExclusiveArch: x86_64 %{ix86} ppc alpha aarch64
- grafana
ExclusiveArch: %{grafana_arches}
- grafana-pcp
ExclusiveArch: %{grafanapcp_arches}
- greetd
ExclusiveArch: %{rust_arches}
- gtk-sharp-beans
ExclusiveArch: %mono_arches
- gtk-sharp2
ExclusiveArch: %mono_arches
- gtk-sharp3
ExclusiveArch: %{mono_arches}
- gtkd
ExclusiveArch: %{ldc_arches}
- guava
ExclusiveArch: %{java_arches} noarch
- gudev-sharp
ExclusiveArch: %mono_arches
- guestfs-tools
ExclusiveArch: %{kernel_arches}
- hamcrest
ExclusiveArch: %{java_arches} noarch
- hawtjni
ExclusiveArch: %{java_arches} noarch
- hedgewars
ExclusiveArch: %{fpc_arches}
- hibernate-jpa-2.0-api
ExclusiveArch: %{java_arches} noarch
- hibernate-jpa-2.1-api
ExclusiveArch: %{java_arches} noarch
- hid4java
ExclusiveArch: %{java_arches} noarch
- hsakmt
ExclusiveArch: x86_64 aarch64 ppc64le
- httpcomponents-client
ExclusiveArch: %{java_arches} noarch
- httpcomponents-core
ExclusiveArch: %{java_arches} noarch
- httpcomponents-project
ExclusiveArch: %{java_arches} noarch
- hyena
ExclusiveArch: %{mono_arches}
- hyperscan
ExclusiveArch: x86_64
- hyperv-daemons
ExclusiveArch: i686 x86_64 aarch64
- i3status-rs
ExclusiveArch: %{rust_arches}
- icaro
ExclusiveArch: %{ix86} x86_64 noarch
- icu4j
ExclusiveArch: %{java_arches} noarch
- imagej
ExclusiveArch: %{java_arches} noarch
- imvirt
ExclusiveArch: %{ix86} x86_64 ia64
- indistarter
ExclusiveArch: %{fpc_arches}
- infinipath-psm
ExclusiveArch: x86_64
- intel-cm-compiler
ExclusiveArch: i686 x86_64
- intel-cmt-cat
ExclusiveArch: x86_64 i686 i586
ExclusiveArch: x86_64 i686 i586
- intel-compute-runtime
ExclusiveArch: x86_64
- intel-gmmlib
ExclusiveArch: x86_64 i686
- intel-igc
ExclusiveArch: x86_64
- intel-ipp-crypto-mb
ExclusiveArch: x86_64
ExclusiveArch: x86_64
- intel-ipsec-mb
ExclusiveArch: x86_64
ExclusiveArch: x86_64
- intel-mediasdk
ExclusiveArch: x86_64
- intel-undervolt
ExclusiveArch: i386 x86_64
- ioport
ExclusiveArch: %{ix86} x86_64
- ipmctl
ExclusiveArch: x86_64
- ispc
ExclusiveArch: x86_64 aarch64
- iucode-tool
ExclusiveArch: %{ix86} x86_64
- iyfct
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- jFormatString
ExclusiveArch: %{java_arches} noarch
- jackson-annotations
ExclusiveArch: %{java_arches} noarch
- jackson-bom
ExclusiveArch: %{java_arches} noarch
- jackson-core
ExclusiveArch: %{java_arches} noarch
- jackson-databind
ExclusiveArch: %{java_arches} noarch
- jackson-dataformats-binary
ExclusiveArch: %{java_arches} noarch
- jackson-dataformats-text
ExclusiveArch: %{java_arches} noarch
- jackson-jaxrs-providers
ExclusiveArch: %{java_arches} noarch
- jackson-modules-base
ExclusiveArch: %{java_arches} noarch
- jackson-parent
ExclusiveArch: %{java_arches} noarch
- jacoco
ExclusiveArch: %{java_arches} noarch
- jacop
ExclusiveArch: %{java_arches} noarch
- jakarta-activation
ExclusiveArch: %{java_arches} noarch
- jakarta-annotations
ExclusiveArch: %{java_arches} noarch
- jakarta-el
ExclusiveArch: %{java_arches} noarch
- jakarta-interceptors
ExclusiveArch: %{java_arches} noarch
- jakarta-json
ExclusiveArch: %{java_arches} noarch
- jakarta-mail
ExclusiveArch: %{java_arches} noarch
- jakarta-oro
ExclusiveArch: %{java_arches} noarch
- jakarta-saaj
ExclusiveArch: %{java_arches} noarch
- jakarta-server-pages
ExclusiveArch: %{java_arches} noarch
- jakarta-servlet
ExclusiveArch: %{java_arches} noarch
- jakarta-xml-ws
ExclusiveArch: %{java_arches} noarch
- janino
ExclusiveArch: %{java_arches} noarch
- jansi
ExclusiveArch: %{java_arches}
- jansi-native
ExclusiveArch: %{java_arches}
- jansi1
ExclusiveArch: %{java_arches} noarch
- jargs
ExclusiveArch: %{java_arches} noarch
- java-1.8.0-openjdk
ExclusiveArch: %{java_arches}
- java-1.8.0-openjdk-aarch32
ExclusiveArch: %{arm}
- java-11-openjdk
ExclusiveArch: %{java_arches}
- java-17-openjdk
ExclusiveArch: %{java_arches}
- java-diff-utils
ExclusiveArch: %{java_arches} noarch
- java-dirq
ExclusiveArch: %{java_arches} noarch
- java-jd-decompiler
ExclusiveArch: %{java_arches} noarch
- java-latest-openjdk
ExclusiveArch: %{java_arches}
- java-mersenne-twister
ExclusiveArch: %{java_arches} noarch
- java-runtime-decompiler
ExclusiveArch: %{java_arches} noarch
- java-scrypt
ExclusiveArch: %{java_arches} noarch
- java_cup
ExclusiveArch: %{java_arches} noarch
- javacc
ExclusiveArch: %{java_arches} noarch
- javacc-maven-plugin
ExclusiveArch: %{java_arches} noarch
- javaewah
ExclusiveArch: %{java_arches} noarch
- javapackages-bootstrap
ExclusiveArch: %{java_arches} noarch
- javaparser
ExclusiveArch: %{java_arches} noarch
- javapoet
ExclusiveArch: %{java_arches} noarch
- javassist
ExclusiveArch: %{java_arches} noarch
- jaxb
ExclusiveArch: %{java_arches} noarch
- jaxb-api
ExclusiveArch: %{java_arches} noarch
- jaxb-dtd-parser
ExclusiveArch: %{java_arches} noarch
- jaxb-fi
ExclusiveArch: %{java_arches} noarch
- jaxb-istack-commons
ExclusiveArch: %{java_arches} noarch
- jaxb-stax-ex
ExclusiveArch: %{java_arches} noarch
- jaxen
ExclusiveArch: %{java_arches} noarch
- jboss-jaxrs-2.0-api
ExclusiveArch: %{java_arches} noarch
- jboss-logging
ExclusiveArch: %{java_arches} noarch
- jboss-logging-tools
ExclusiveArch: %{java_arches} noarch
- jboss-parent
ExclusiveArch: %{java_arches} noarch
- jchardet
ExclusiveArch: %{java_arches} noarch
- jcip-annotations
ExclusiveArch: %{java_arches} noarch
- jcodings
ExclusiveArch: %{java_arches} noarch
- jcommon
ExclusiveArch: %{java_arches} noarch
- jcommon-serializer
ExclusiveArch: %{java_arches} noarch
- jctools
ExclusiveArch: %{java_arches} noarch
- jcuber
ExclusiveArch: %{java_arches} noarch
- jdeparser
ExclusiveArch: %{java_arches} noarch
- jdepend
ExclusiveArch: %{java_arches} noarch
- jdependency
ExclusiveArch: %{java_arches} noarch
- jdom
ExclusiveArch: %{java_arches} noarch
- jdom2
ExclusiveArch: %{java_arches} noarch
- jericho-html
ExclusiveArch: %{java_arches} noarch
- jetty
ExclusiveArch: %{java_arches} noarch
- jflex
ExclusiveArch: %{java_arches} noarch
- jfreechart
ExclusiveArch: %{java_arches} noarch
- jgit
ExclusiveArch: %{java_arches} noarch
- jglobus
ExclusiveArch: %{java_arches} noarch
- jgoodies-common
ExclusiveArch: %{java_arches} noarch
- jgoodies-forms
ExclusiveArch: %{java_arches} noarch
- jgoodies-looks
ExclusiveArch: %{java_arches} noarch
- jgrapht
ExclusiveArch: %{java_arches} noarch
- jigawatts
ExclusiveArch: x86_64 %{arm} ppc64le aarch64 s390x
- jline
ExclusiveArch: %{java_arches} noarch
- jline2
ExclusiveArch: %{java_arches} noarch
- jmock
ExclusiveArch: %{java_arches} noarch
- jmol
ExclusiveArch: %{java_arches} noarch
- jna
ExclusiveArch: %{java_arches}
- jneuroml-core
ExclusiveArch: %{java_arches} noarch
- jni-inchi
ExclusiveArch: %{java_arches}
- jnr-constants
ExclusiveArch: %{java_arches} noarch
- jnr-ffi
ExclusiveArch: %{java_arches} noarch
- jnr-netdb
ExclusiveArch: %{java_arches} noarch
- jnr-posix
ExclusiveArch: %{java_arches} noarch
- jnr-x86asm
ExclusiveArch: %{java_arches} noarch
- jol
ExclusiveArch: %{java_arches} noarch
- jolokia-jvm-agent
ExclusiveArch: %{java_arches} noarch
- joni
ExclusiveArch: %{java_arches} noarch
- jopt-simple
ExclusiveArch: %{java_arches} noarch
- jorbis
ExclusiveArch: %{java_arches} noarch
- jpanoramamaker
ExclusiveArch: %{java_arches} noarch
- jsch
ExclusiveArch: %{java_arches} noarch
- jsch-agent-proxy
ExclusiveArch: %{java_arches} noarch
- json_simple
ExclusiveArch: %{java_arches} noarch
- jsr-305
ExclusiveArch: %{java_arches} noarch
- jssc
ExclusiveArch: %{java_arches}
- jtidy
ExclusiveArch: %{java_arches} noarch
- junit
ExclusiveArch: %{java_arches} noarch
- junit5
ExclusiveArch: %{java_arches} noarch
- juniversalchardet
ExclusiveArch: %{java_arches} noarch
- jzlib
ExclusiveArch: %{java_arches} noarch
- kchmviewer
ExclusiveArch: %{qt5_qtwebengine_arches}
- kernel
ExclusiveArch: noarch x86_64 s390x %{arm} aarch64 ppc64le
ExclusiveArch: noarch i386 i686 x86_64 s390x %{arm} aarch64 ppc64le
- keylime-agent-rust
ExclusiveArch: %{rust_arches}
- keyring-ima-signer
ExclusiveArch: %{rust_arches}
- kf5-akonadi-search
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-audiocd-kio
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kalarmcal
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kblog
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kcalendarcore
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kcalendarutils
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kitinerary
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-ktnef
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-libkdcraw
ExclusiveArch: x86_64 ppc64le %{arm}
- kicad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- kiwix-desktop
ExclusiveArch: %{qt5_qtwebengine_arches}
- klee
ExclusiveArch: x86_64
- knot-resolver
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- knotes
ExclusiveArch: x86_64 %{arm}
- kompose
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 s390x
- kubernetes
ExclusiveArch: x86_64 aarch64 ppc64le s390x %{arm}
- laf-plugin
ExclusiveArch: %{java_arches} noarch
- lancer
ExclusiveArch: %{java_arches} noarch
- lazarus
ExclusiveArch: %{fpc_arches}
- lazpaint
ExclusiveArch: %{fpc_arches}
- ldapjdk
ExclusiveArch: %{java_arches} noarch
- ldc
ExclusiveArch: %{ldc_arches}
- libbase
ExclusiveArch: %{java_arches} noarch
- libbsr
ExclusiveArch: %{power64}
- libclc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64} s390x
- libcxl
ExclusiveArch: %{power64}
- libdfp
ExclusiveArch: ppc ppc64 ppc64le s390 s390x x86_64
- libdispatch
ExclusiveArch: x86_64 aarch64 ppc64le
- libfonts
ExclusiveArch: %{java_arches} noarch
- libformula
ExclusiveArch: %{java_arches} noarch
- libguestfs
ExclusiveArch: %{kernel_arches}
- libica
ExclusiveArch: s390 s390x
- libipt
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- libkgapi
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- libkrun
ExclusiveArch: x86_64 aarch64
- libkrunfw
ExclusiveArch: x86_64 aarch64
- liblayout
ExclusiveArch: %{java_arches} noarch
- libloader
ExclusiveArch: %{java_arches} noarch
- libnxz
ExclusiveArch: ppc64le
- libocxl
ExclusiveArch: ppc64le
- libpmemobj-cpp
ExclusiveArch: x86_64 ppc64le
- libpsm2
ExclusiveArch: x86_64
- libquentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- libreoffice-TexMaths
ExclusiveArch: %{java_arches}
- librepository
ExclusiveArch: %{java_arches} noarch
- libretro-desmume2015
ExclusiveArch: i686 x86_64
- librtas
ExclusiveArch: %{power64}
- libserializer
ExclusiveArch: %{java_arches} noarch
- libservicelog
ExclusiveArch: ppc %{power64}
- libsmbios
ExclusiveArch: x86_64 %{ix86}
- libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} s390x %{ix86} x86_64
- libva-intel-hybrid-driver
ExclusiveArch: %{ix86} x86_64 ia64
- libvirt-java
ExclusiveArch: %{java_arches} noarch
- libvma
ExclusiveArch: x86_64 ppc64le ppc64 aarch64
- libvmi
ExclusiveArch: x86_64
- libvpd
ExclusiveArch: %{power64}
- libxsmm
ExclusiveArch: x86_64
- libzdnn
ExclusiveArch: s390x
- libzfcphbaapi
ExclusiveArch: s390 s390x
- llhttp
ExclusiveArch: %{nodejs_arches}
- log4j
ExclusiveArch: %{java_arches} noarch
- log4net
ExclusiveArch: %mono_arches
- lrmi
ExclusiveArch: %{ix86}
- lsvpd
ExclusiveArch: %{power64}
- luajit
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- luxcorerender
ExclusiveArch: x86_64
- mactel-boot
ExclusiveArch: x86_64
- manifest-tool
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- mariadb-java-client
ExclusiveArch: %{java_arches} noarch
- marked
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- matreshka
ExclusiveArch: %GPRbuild_arches
- maui-mauikit
ExclusiveArch: %{ix86} s390x aarch64 x86_64
- maven
ExclusiveArch: %{java_arches} noarch
- maven-antrun-plugin
ExclusiveArch: %{java_arches} noarch
- maven-archetype
ExclusiveArch: %{java_arches} noarch
- maven-archiver
ExclusiveArch: %{java_arches} noarch
- maven-artifact-transfer
ExclusiveArch: %{java_arches} noarch
- maven-assembly-plugin
ExclusiveArch: %{java_arches} noarch
- maven-clean-plugin
ExclusiveArch: %{java_arches} noarch
- maven-common-artifact-filters
ExclusiveArch: %{java_arches} noarch
- maven-compiler-plugin
ExclusiveArch: %{java_arches} noarch
- maven-dependency-analyzer
ExclusiveArch: %{java_arches} noarch
- maven-dependency-plugin
ExclusiveArch: %{java_arches} noarch
- maven-dependency-tree
ExclusiveArch: %{java_arches} noarch
- maven-doxia
ExclusiveArch: %{java_arches} noarch
- maven-doxia-sitetools
ExclusiveArch: %{java_arches} noarch
- maven-enforcer
ExclusiveArch: %{java_arches} noarch
- maven-file-management
ExclusiveArch: %{java_arches} noarch
- maven-filtering
ExclusiveArch: %{java_arches} noarch
- maven-invoker
ExclusiveArch: %{java_arches} noarch
- maven-invoker-plugin
ExclusiveArch: %{java_arches} noarch
- maven-jar-plugin
ExclusiveArch: %{java_arches} noarch
- maven-mapping
ExclusiveArch: %{java_arches} noarch
- maven-native
ExclusiveArch: %{java_arches} noarch
- maven-parent
ExclusiveArch: %{java_arches} noarch
- maven-patch-plugin
ExclusiveArch: %{java_arches} noarch
- maven-plugin-build-helper
ExclusiveArch: %{java_arches} noarch
- maven-plugin-bundle
ExclusiveArch: %{java_arches} noarch
- maven-plugin-testing
ExclusiveArch: %{java_arches} noarch
- maven-plugin-tools
ExclusiveArch: %{java_arches} noarch
- maven-remote-resources-plugin
ExclusiveArch: %{java_arches} noarch
- maven-reporting-api
ExclusiveArch: %{java_arches} noarch
- maven-reporting-impl
ExclusiveArch: %{java_arches} noarch
- maven-resolver
ExclusiveArch: %{java_arches} noarch
- maven-resources-plugin
ExclusiveArch: %{java_arches} noarch
- maven-scm
ExclusiveArch: %{java_arches} noarch
- maven-script-interpreter
ExclusiveArch: %{java_arches} noarch
- maven-shade-plugin
ExclusiveArch: %{java_arches} noarch
- maven-shared-incremental
ExclusiveArch: %{java_arches} noarch
- maven-shared-io
ExclusiveArch: %{java_arches} noarch
- maven-shared-utils
ExclusiveArch: %{java_arches} noarch
- maven-source-plugin
ExclusiveArch: %{java_arches} noarch
- maven-surefire
ExclusiveArch: %{java_arches} noarch
- maven-verifier
ExclusiveArch: %{java_arches} noarch
- maven-verifier-plugin
ExclusiveArch: %{java_arches} noarch
- maven-wagon
ExclusiveArch: %{java_arches} noarch
- maven2
ExclusiveArch: %{java_arches} noarch
- maxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- mbpfan
ExclusiveArch: x86_64
- mcelog
ExclusiveArch: i686 x86_64
- mcrouter
ExclusiveArch: x86_64 aarch64 ppc64le
- mdevctl
ExclusiveArch: %{rust_arches}
- mecab-java
ExclusiveArch: %java_arches
- mediaconch
ExclusiveArch: %{qt5_qtwebengine_arches}
- mellowplayer
ExclusiveArch: %{qt5_qtwebengine_arches}
- memkind
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64
- memtest86+
ExclusiveArch: %{ix86} x86_64
- mesos
ExclusiveArch: x86_64
- microcode_ctl
ExclusiveArch: %{ix86} x86_64
- micropython
ExclusiveArch: %{arm} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64
- miglayout
ExclusiveArch: %{java_arches} noarch
- mine_detector
ExclusiveArch: %{GPRbuild_arches}
- minetest
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mingw-libidn2
ExclusiveArch: %{ix86} x86_64 %{arm}
- mingw-wine-gecko
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- mirrorlist-server
ExclusiveArch: %{rust_arches}
- mkbootdisk
ExclusiveArch: %{ix86} sparc sparc64 x86_64
- moby-engine
ExclusiveArch: %{golang_arches}
- mockito
ExclusiveArch: %{java_arches} noarch
- mod_mono
ExclusiveArch: %mono_arches
- modello
ExclusiveArch: %{java_arches} noarch
- module-build-service
ExclusiveArch: %{ix86} x86_64 noarch
- mojo-executor
ExclusiveArch: %{java_arches} noarch
- mojo-parent
ExclusiveArch: %{java_arches} noarch
- mokutil
ExclusiveArch: %{ix86} x86_64 aarch64 %{arm}
- mold
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 riscv64
- mono
ExclusiveArch: %mono_arches
- mono-addins
ExclusiveArch: %mono_arches
- mono-basic
ExclusiveArch: %{mono_arches}
- mono-bouncycastle
ExclusiveArch: %mono_arches
- mono-cecil
ExclusiveArch: %mono_arches
- mono-cecil-flowanalysis
ExclusiveArch: %mono_arches
- mono-reflection
ExclusiveArch: %mono_arches
- mono-tools
ExclusiveArch: %mono_arches
- mono-zeroconf
ExclusiveArch: %mono_arches
- monobristol
ExclusiveArch: %{mono_arches}
- monodevelop
ExclusiveArch: %mono_arches
- monodevelop-debugger-gdb
ExclusiveArch: %{mono_arches}
- monosim
ExclusiveArch: %mono_arches
- mrrescue
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- msr-tools
ExclusiveArch: %{ix86} x86_64
- munge-maven-plugin
ExclusiveArch: %{java_arches} noarch
- mxparser
ExclusiveArch: %{java_arches} noarch
- mysql-connector-java
ExclusiveArch: %{java_arches} noarch
- mysql-connector-net
ExclusiveArch: %{mono_arches}
- naev
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- naga
ExclusiveArch: %{java_arches} noarch
- nant
ExclusiveArch: %mono_arches
- nativejit
ExclusiveArch: x86_64
- nbc
ExclusiveArch: %{fpc_arches}
- nbdkit
ExclusiveArch: x86_64
- ndesk-dbus
ExclusiveArch: %{mono_arches}
- ndesk-dbus-glib
ExclusiveArch: %{mono_arches}
- nekohtml
ExclusiveArch: %{java_arches} noarch
- netavark
ExclusiveArch: %{rust_arches}
- newtonsoft-json
ExclusiveArch: %{mono_arches}
- nispor
ExclusiveArch: %{rust_arches}
- nodejs
ExclusiveArch: %{nodejs_arches}
- nodejs-acorn-object-spread
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-backbone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bash-language-server
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buble
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-colors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generic-pool
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-less
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-linefix
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nodemon
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-packaging
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-replace-require-self
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supervisor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typescript
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-underscore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nom-tam-fits
ExclusiveArch: %{java_arches} noarch
- notify-sharp
ExclusiveArch: %{mono_arches}
- notify-sharp3
ExclusiveArch: %{mono_arches}
- nuget
ExclusiveArch: %{mono_arches}
- numatop
ExclusiveArch: x86_64 ppc64le
- nunit
ExclusiveArch: %{mono_arches}
- nunit2
ExclusiveArch: %{mono_arches}
- nvml
ExclusiveArch: x86_64 ppc64le
- nwchem
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- objectweb-asm
ExclusiveArch: %{java_arches} noarch
- objenesis
ExclusiveArch: %{java_arches} noarch
- obs-service-rust2rpm
ExclusiveArch: %{rust_arches} noarch
- oci-seccomp-bpf-hook
ExclusiveArch: x86_64 %{power64} aarch64 s390x armv7hl
- oci-umount
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- oidn
ExclusiveArch: x86_64
- olpc-kbdshim
ExclusiveArch: %{ix86} %{arm}
- olpc-utils
ExclusiveArch: %{ix86} %{arm}
- oneVPL
ExclusiveArch: x86_64
- oneVPL-intel-gpu
ExclusiveArch: x86_64
- onednn
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- onedrive
ExclusiveArch: %{ldc_arches}
- ongres-scram
ExclusiveArch: %{java_arches} noarch
- ongres-stringprep
ExclusiveArch: %{java_arches} noarch
- opae
ExclusiveArch: x86_64
- opal-prd
ExclusiveArch: ppc64le
- open-vm-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: %{ix86} x86_64 aarch64
ExclusiveArch: x86_64
- openas2
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
- openblas
ExclusiveArch: %{openblas_arches}
- openjdk-asmtools
ExclusiveArch: %{java_arches} noarch
- openjfx
ExclusiveArch: %{java_arches}
- openjfx8
ExclusiveArch: x86_64
- openlibm
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 %{power64}
- openms
ExclusiveArch: %{qt5_qtwebengine_arches}
- openni
ExclusiveArch: %{ix86} x86_64 %{arm}
- openni-primesense
ExclusiveArch: %{ix86} x86_64 %{arm}
- openshadinglanguage
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- openssl-ibmca
ExclusiveArch: s390 s390x
- openstack-java-sdk
ExclusiveArch: %{java_arches} noarch
- opentest4j
ExclusiveArch: %{java_arches} noarch
- options
ExclusiveArch: %{java_arches} noarch
- origin
ExclusiveArch: %{go_arches}
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- orthorobot
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- osgi-annotation
ExclusiveArch: %{java_arches} noarch
- osgi-compendium
ExclusiveArch: %{java_arches} noarch
- osgi-core
ExclusiveArch: %{java_arches} noarch
- pacemaker
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64 %{arm}
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64
- paflib
ExclusiveArch: ppc %{power64}
- parsec
ExclusiveArch: %{rust_arches}
- parsec-tool
ExclusiveArch: %{rust_arches}
- pasdoc
ExclusiveArch: %{fpc_arches}
- pcc
ExclusiveArch: %{ix86} x86_64
- pcfi
ExclusiveArch: %{java_arches} noarch
- pcm
ExclusiveArch: %{ix86} x86_64
- pcmciautils
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 %{arm}
- pdbg
ExclusiveArch: ppc64le
- pdfbox
ExclusiveArch: %{java_arches} noarch
- pdfmod
ExclusiveArch: %mono_arches
- pdftk-java
ExclusiveArch: %{java_arches} noarch
- pentaho-libxml
ExclusiveArch: %{java_arches} noarch
- pentaho-reporting-flow-engine
ExclusiveArch: %{java_arches} noarch
- perl-Dumbbench
ExclusiveArch: %{ix86} x86_64 noarch
- perl-Parse-DMIDecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- pesign
ExclusiveArch: %{ix86} x86_64 ia64 aarch64 %{arm}
- pesign-test-app
ExclusiveArch: x86_64
- picocli
ExclusiveArch: %{java_arches} noarch
- pinta
ExclusiveArch: %mono_arches
- pioneer
ExclusiveArch: %{ix86} x86_64
- plantuml
ExclusiveArch: %{java_arches} noarch
- playonlinux
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- plexus-active-collections
ExclusiveArch: %{java_arches} noarch
- plexus-archiver
ExclusiveArch: %{java_arches} noarch
- plexus-build-api
ExclusiveArch: %{java_arches} noarch
- plexus-cipher
ExclusiveArch: %{java_arches} noarch
- plexus-classworlds
ExclusiveArch: %{java_arches} noarch
- plexus-compiler
ExclusiveArch: %{java_arches} noarch
- plexus-component-api
ExclusiveArch: %{java_arches} noarch
- plexus-components-pom
ExclusiveArch: %{java_arches} noarch
- plexus-containers
ExclusiveArch: %{java_arches} noarch
- plexus-i18n
ExclusiveArch: %{java_arches} noarch
- plexus-interpolation
ExclusiveArch: %{java_arches} noarch
- plexus-io
ExclusiveArch: %{java_arches} noarch
- plexus-languages
ExclusiveArch: %{java_arches} noarch
- plexus-pom
ExclusiveArch: %{java_arches} noarch
- plexus-resources
ExclusiveArch: %{java_arches} noarch
- plexus-sec-dispatcher
ExclusiveArch: %{java_arches} noarch
- plexus-utils
ExclusiveArch: %{java_arches} noarch
- plexus-velocity
ExclusiveArch: %{java_arches} noarch
- pmdk-convert
ExclusiveArch: x86_64
- pmemkv
ExclusiveArch: x86_64
- podman
ExclusiveArch: %{golang_arches}
- pomchecker
ExclusiveArch: %{java_arches} noarch
- poppler-sharp
ExclusiveArch: %mono_arches
- popub
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- portlet-2.0-api
ExclusiveArch: %{java_arches} noarch
- postgresql-jdbc
ExclusiveArch: %{java_arches} noarch
- powerpc-utils
ExclusiveArch: ppc %{power64}
- ppc64-diag
ExclusiveArch: ppc %{power64}
- procyon
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
- proguard
ExclusiveArch: %{java_arches} noarch
- prometheus-jmx-exporter
ExclusiveArch: %{java_arches} noarch
- prometheus-simpleclient-java
ExclusiveArch: %{java_arches} noarch
- proxygen
ExclusiveArch: x86_64 aarch64 ppc64le
- pveclib
ExclusiveArch: ppc %{power64}
- pvs-sbcl
ExclusiveArch: x86_64
- py4j
ExclusiveArch: %{java_arches} noarch
- pyqtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- python-cryptography
ExclusiveArch: %{rust_arches}
- python-etcd
ExclusiveArch: noarch %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- python-javabridge
ExclusiveArch: i686 x86_64
- python-javaobj
ExclusiveArch: %{java_arches} noarch
- python-jupyter-polymake
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- python-openoffice
ExclusiveArch: noarch x86_64
- python-pymoc
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-setuptools-rust
ExclusiveArch: %{rust_arches}
- q4wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- qatzip
ExclusiveArch: x86_64
- qcint
ExclusiveArch: x86_64
- qclib
ExclusiveArch: s390 s390x
- qdox
ExclusiveArch: %{java_arches} noarch
- qemu-sanity-check
ExclusiveArch: %{kernel_arches}
- qevercloud
ExclusiveArch: %{qt5_qtwebengine_arches}
- qmapshack
ExclusiveArch: %{qt5_qtwebengine_arches}
- qt4pas
ExclusiveArch: %{fpc_arches}
- qt5-qtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- quantum-espresso
ExclusiveArch: x86_64 %{ix86} aarch64 %{power64}
- quentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- rachota
ExclusiveArch: %{java_arches} noarch
- rear
ExclusiveArch: %ix86 x86_64 ppc ppc64 ppc64le ia64
- reflections
ExclusiveArch: %{java_arches} noarch
- reg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- regexp
ExclusiveArch: %{java_arches} noarch
- renderdoc
ExclusiveArch: x86_64
- replacer
ExclusiveArch: %{java_arches} noarch
- reptyr
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- rescene
ExclusiveArch: %{mono_arches}
- resteasy
ExclusiveArch: %{java_arches} noarch
- restool
ExclusiveArch: aarch64
- restsharp
ExclusiveArch: %{mono_arches}
- rhino
ExclusiveArch: %{java_arches} noarch
- rhythmbox-alternative-toolbar
ExclusiveArch: %{ix86} %{arm} x86_64 ppc64 ppc64le
- rocm-compilersupport
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-device-libs
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-opencl
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-runtime
ExclusiveArch: x86_64 aarch64 ppc64le
- rocminfo
ExclusiveArch: x86_64 aarch64 ppc64le
- rpm-ostree
ExclusiveArch: %{rust_arches}
- rr
ExclusiveArch: %{ix86} x86_64 aarch64
- rssguard
ExclusiveArch: %{qt5_qtwebengine_arches}
- rstudio
ExclusiveArch: %{java_arches}
- rsyntaxtextarea
ExclusiveArch: %{java_arches} noarch
- rubygem-childprocess
ExclusiveArch: %{ix86} x86_64 noarch
- runc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %{mips} s390x
- rundoc
ExclusiveArch: %{java_arches} noarch
- rust
ExclusiveArch: %{rust_arches}
- rust-Inflector
ExclusiveArch: %{rust_arches}
- rust-abomonation
ExclusiveArch: %{rust_arches}
- rust-actix
ExclusiveArch: %{rust_arches}
- rust-actix-codec
ExclusiveArch: %{rust_arches}
- rust-actix-http
ExclusiveArch: %{rust_arches}
- rust-actix-macros
ExclusiveArch: %{rust_arches}
- rust-actix-router
ExclusiveArch: %{rust_arches}
- rust-actix-rt
ExclusiveArch: %{rust_arches}
- rust-actix-server
ExclusiveArch: %{rust_arches}
- rust-actix-service
ExclusiveArch: %{rust_arches}
- rust-actix-tls
ExclusiveArch: %{rust_arches}
- rust-actix-utils
ExclusiveArch: %{rust_arches}
- rust-actix-web
ExclusiveArch: %{rust_arches}
- rust-actix-web-codegen
ExclusiveArch: %{rust_arches}
- rust-actix_derive
ExclusiveArch: %{rust_arches}
- rust-addr2line
ExclusiveArch: %{rust_arches}
- rust-adler
ExclusiveArch: %{rust_arches}
- rust-adler32
ExclusiveArch: %{rust_arches}
- rust-aead
ExclusiveArch: %{rust_arches}
- rust-aes
ExclusiveArch: %{rust_arches}
- rust-aes-gcm
ExclusiveArch: %{rust_arches}
- rust-aes0.7
ExclusiveArch: %{rust_arches}
- rust-afterburn
ExclusiveArch: %{rust_arches}
- rust-ahash
ExclusiveArch: %{rust_arches}
- rust-ahash0.4
ExclusiveArch: %{rust_arches}
- rust-aho-corasick
ExclusiveArch: %{rust_arches}
- rust-alacritty
ExclusiveArch: %{rust_arches}
- rust-alacritty_config_derive
ExclusiveArch: %{rust_arches}
- rust-alacritty_terminal
ExclusiveArch: %{rust_arches}
- rust-alga
ExclusiveArch: %{rust_arches}
- rust-alga_derive
ExclusiveArch: %{rust_arches}
- rust-aliasable
ExclusiveArch: %{rust_arches}
- rust-alloc-no-stdlib
ExclusiveArch: %{rust_arches}
- rust-alloc-stdlib
ExclusiveArch: %{rust_arches}
- rust-ambient-authority
ExclusiveArch: %{rust_arches}
- rust-ammonia
ExclusiveArch: %{rust_arches}
- rust-ansi_colours
ExclusiveArch: %{rust_arches}
- rust-ansi_term
ExclusiveArch: %{rust_arches}
- rust-ansi_term0.11
ExclusiveArch: %{rust_arches}
- rust-antidote
ExclusiveArch: %{rust_arches}
- rust-anyhow
ExclusiveArch: %{rust_arches}
- rust-aom-sys
ExclusiveArch: %{rust_arches}
- rust-aparato
ExclusiveArch: %{rust_arches}
- rust-app_dirs
ExclusiveArch: %{rust_arches}
- rust-approx
ExclusiveArch: %{rust_arches}
- rust-ar
ExclusiveArch: %{rust_arches}
- rust-arbitrary
ExclusiveArch: %{rust_arches}
- rust-arbitrary0.4
ExclusiveArch: %{rust_arches}
- rust-arc-swap
ExclusiveArch: %{rust_arches}
- rust-arf-strings
ExclusiveArch: %{rust_arches}
- rust-arg_enum_proc_macro
ExclusiveArch: %{rust_arches}
- rust-argh
ExclusiveArch: %{rust_arches}
- rust-argh_derive
ExclusiveArch: %{rust_arches}
- rust-argh_shared
ExclusiveArch: %{rust_arches}
- rust-argmax
ExclusiveArch: %{rust_arches}
- rust-argparse
ExclusiveArch: %{rust_arches}
- rust-array-init
ExclusiveArch: %{rust_arches}
- rust-arrayref
ExclusiveArch: %{rust_arches}
- rust-arrayvec
ExclusiveArch: %{rust_arches}
- rust-arrayvec0.5
ExclusiveArch: %{rust_arches}
- rust-ascii
ExclusiveArch: %{rust_arches}
- rust-ascii-canvas
ExclusiveArch: %{rust_arches}
- rust-askalono
ExclusiveArch: %{rust_arches}
- rust-askalono-cli
ExclusiveArch: %{rust_arches}
- rust-askama
ExclusiveArch: %{rust_arches}
- rust-askama_derive
ExclusiveArch: %{rust_arches}
- rust-askama_escape
ExclusiveArch: %{rust_arches}
- rust-askama_shared
ExclusiveArch: %{rust_arches}
- rust-asn1
ExclusiveArch: %{rust_arches}
- rust-asn1_derive
ExclusiveArch: %{rust_arches}
- rust-assert-impl
ExclusiveArch: %{rust_arches}
- rust-assert-json-diff
ExclusiveArch: %{rust_arches}
- rust-assert_approx_eq
ExclusiveArch: %{rust_arches}
- rust-assert_cli
ExclusiveArch: %{rust_arches}
- rust-assert_cmd
ExclusiveArch: %{rust_arches}
- rust-assert_fs
ExclusiveArch: %{rust_arches}
- rust-assert_matches
ExclusiveArch: %{rust_arches}
- rust-async-attributes
ExclusiveArch: %{rust_arches}
- rust-async-broadcast
ExclusiveArch: %{rust_arches}
- rust-async-channel
ExclusiveArch: %{rust_arches}
- rust-async-compression
ExclusiveArch: %{rust_arches}
- rust-async-executor
ExclusiveArch: %{rust_arches}
- rust-async-global-executor
ExclusiveArch: %{rust_arches}
- rust-async-io
ExclusiveArch: %{rust_arches}
- rust-async-lock
ExclusiveArch: %{rust_arches}
- rust-async-mutex
ExclusiveArch: %{rust_arches}
- rust-async-process
ExclusiveArch: %{rust_arches}
- rust-async-recursion
ExclusiveArch: %{rust_arches}
- rust-async-std
ExclusiveArch: %{rust_arches}
- rust-async-stream
ExclusiveArch: %{rust_arches}
- rust-async-stream-impl
ExclusiveArch: %{rust_arches}
- rust-async-task
ExclusiveArch: %{rust_arches}
- rust-async-trait
ExclusiveArch: %{rust_arches}
- rust-asyncgit
ExclusiveArch: %{rust_arches}
- rust-atk
ExclusiveArch: %{rust_arches}
- rust-atk-sys
ExclusiveArch: %{rust_arches}
- rust-atom
ExclusiveArch: %{rust_arches}
- rust-atomic
ExclusiveArch: %{rust_arches}
- rust-atomic-traits
ExclusiveArch: %{rust_arches}
- rust-atomic-waker
ExclusiveArch: %{rust_arches}
- rust-atty
ExclusiveArch: %{rust_arches}
- rust-autocfg
ExclusiveArch: %{rust_arches}
- rust-automod
ExclusiveArch: %{rust_arches}
- rust-av-metrics
ExclusiveArch: %{rust_arches}
- rust-average
ExclusiveArch: %{rust_arches}
- rust-awc
ExclusiveArch: %{rust_arches}
- rust-aws-nitro-enclaves-cose
ExclusiveArch: %{rust_arches}
- rust-az
ExclusiveArch: %{rust_arches}
- rust-backtrace
ExclusiveArch: %{rust_arches}
- rust-base100
ExclusiveArch: %{rust_arches}
- rust-base64
ExclusiveArch: %{rust_arches}
- rust-base64-0.10
ExclusiveArch: %{rust_arches}
- rust-base64_0.12
ExclusiveArch: %{rust_arches}
- rust-base64ct
ExclusiveArch: %{rust_arches}
- rust-bat
ExclusiveArch: %{rust_arches}
- rust-beef
ExclusiveArch: %{rust_arches}
- rust-below
ExclusiveArch: %{rust_arches}
- rust-below-common
ExclusiveArch: %{rust_arches}
- rust-below-config
ExclusiveArch: %{rust_arches}
- rust-below-dump
ExclusiveArch: %{rust_arches}
- rust-below-model
ExclusiveArch: %{rust_arches}
- rust-below-render
ExclusiveArch: %{rust_arches}
- rust-below-store
ExclusiveArch: %{rust_arches}
- rust-below-view
ExclusiveArch: %{rust_arches}
- rust-below_derive
ExclusiveArch: %{rust_arches}
- rust-bencher
ExclusiveArch: %{rust_arches}
- rust-benfred-read-process-memory
ExclusiveArch: %{rust_arches}
- rust-bigdecimal
ExclusiveArch: %{rust_arches}
- rust-binascii
ExclusiveArch: %{rust_arches}
- rust-bincode
ExclusiveArch: %{rust_arches}
- rust-bindgen
ExclusiveArch: %{rust_arches}
- rust-binfarce
ExclusiveArch: %{rust_arches}
- rust-bit-set
ExclusiveArch: %{rust_arches}
- rust-bit-vec
ExclusiveArch: %{rust_arches}
- rust-bitfield
ExclusiveArch: %{rust_arches}
- rust-bitflags
ExclusiveArch: %{rust_arches}
- rust-bitmaps
ExclusiveArch: %{rust_arches}
- rust-bitstream-io
ExclusiveArch: %{rust_arches}
- rust-bitvec
ExclusiveArch: %{rust_arches}
- rust-blake2
ExclusiveArch: %{rust_arches}
- rust-blobby
ExclusiveArch: %{rust_arches}
- rust-blobby0.1
ExclusiveArch: %{rust_arches}
- rust-block-buffer
ExclusiveArch: %{rust_arches}
- rust-block-buffer0.9
ExclusiveArch: %{rust_arches}
- rust-block-modes
ExclusiveArch: %{rust_arches}
- rust-block-padding
ExclusiveArch: %{rust_arches}
- rust-block-padding0.2
ExclusiveArch: %{rust_arches}
- rust-blocking
ExclusiveArch: %{rust_arches}
- rust-blsctl
ExclusiveArch: %{rust_arches}
- rust-bodhi
ExclusiveArch: %{rust_arches}
- rust-bodhi-cli
ExclusiveArch: %{rust_arches}
- rust-bootupd
ExclusiveArch: x86_64 aarch64
- rust-box_drawing
ExclusiveArch: %{rust_arches}
- rust-boxfnonce
ExclusiveArch: %{rust_arches}
- rust-brotli
ExclusiveArch: %{rust_arches}
- rust-brotli-decompressor
ExclusiveArch: %{rust_arches}
- rust-brotli-sys
ExclusiveArch: %{rust_arches}
- rust-brotli2
ExclusiveArch: %{rust_arches}
- rust-bstr
ExclusiveArch: %{rust_arches}
- rust-btrd
ExclusiveArch: %{rust_arches}
- rust-buf_redux
ExclusiveArch: %{rust_arches}
- rust-buffered-reader
ExclusiveArch: %{rust_arches}
- rust-bufstream
ExclusiveArch: %{rust_arches}
- rust-bugreport
ExclusiveArch: %{rust_arches}
- rust-bumpalo
ExclusiveArch: %{rust_arches}
- rust-byte-unit
ExclusiveArch: %{rust_arches}
- rust-byte-unit3
ExclusiveArch: %{rust_arches}
- rust-bytecheck
ExclusiveArch: %{rust_arches}
- rust-bytecheck_derive
ExclusiveArch: %{rust_arches}
- rust-bytecount
ExclusiveArch: %{rust_arches}
- rust-bytelines
ExclusiveArch: %{rust_arches}
- rust-bytemuck
ExclusiveArch: %{rust_arches}
- rust-bytemuck_derive
ExclusiveArch: %{rust_arches}
- rust-byteorder
ExclusiveArch: %{rust_arches}
- rust-bytes
ExclusiveArch: %{rust_arches}
- rust-bytes-cast
ExclusiveArch: %{rust_arches}
- rust-bytes-cast-derive
ExclusiveArch: %{rust_arches}
- rust-bytes0.4
ExclusiveArch: %{rust_arches}
- rust-bytes0.5
ExclusiveArch: %{rust_arches}
- rust-bytesize
ExclusiveArch: %{rust_arches}
- rust-bytestring
ExclusiveArch: %{rust_arches}
- rust-bzip2
ExclusiveArch: %{rust_arches}
- rust-bzip2-sys
ExclusiveArch: %{rust_arches}
- rust-cache-padded
ExclusiveArch: %{rust_arches}
- rust-cairo-rs
ExclusiveArch: %{rust_arches}
- rust-cairo-sys-rs
ExclusiveArch: %{rust_arches}
- rust-calloop
ExclusiveArch: %{rust_arches}
- rust-camino
ExclusiveArch: %{rust_arches}
- rust-cap-async-std
ExclusiveArch: %{rust_arches}
- rust-cap-fs-ext
ExclusiveArch: %{rust_arches}
- rust-cap-primitives
ExclusiveArch: %{rust_arches}
- rust-cap-rand
ExclusiveArch: %{rust_arches}
- rust-cap-std
ExclusiveArch: %{rust_arches}
- rust-cap-tempfile
ExclusiveArch: %{rust_arches}
- rust-cap-time-ext
ExclusiveArch: %{rust_arches}
- rust-capng
ExclusiveArch: %{rust_arches}
- rust-capnp
ExclusiveArch: %{rust_arches}
- rust-capnp-futures
ExclusiveArch: %{rust_arches}
- rust-capnp-rpc
ExclusiveArch: %{rust_arches}
- rust-caps
ExclusiveArch: %{rust_arches}
- rust-cargo
ExclusiveArch: %{rust_arches}
- rust-cargo-bloat
ExclusiveArch: %{rust_arches}
- rust-cargo-c
ExclusiveArch: %{rust_arches}
- rust-cargo-edit
ExclusiveArch: %{rust_arches}
- rust-cargo-husky
ExclusiveArch: %{rust_arches}
- rust-cargo-insta
ExclusiveArch: %{rust_arches}
- rust-cargo-manifest
ExclusiveArch: %{rust_arches}
- rust-cargo-platform
ExclusiveArch: %{rust_arches}
- rust-cargo-readme
ExclusiveArch: %{rust_arches}
- rust-cargo-util
ExclusiveArch: %{rust_arches}
- rust-cargo_metadata
ExclusiveArch: %{rust_arches}
- rust-cascade
ExclusiveArch: %{rust_arches}
- rust-case
ExclusiveArch: %{rust_arches}
- rust-cassowary
ExclusiveArch: %{rust_arches}
- rust-cast
ExclusiveArch: %{rust_arches}
- rust-cbindgen
ExclusiveArch: %{rust_arches}
- rust-cc
ExclusiveArch: %{rust_arches}
- rust-cedarwood
ExclusiveArch: %{rust_arches}
- rust-cexpr
ExclusiveArch: %{rust_arches}
- rust-cfb
ExclusiveArch: %{rust_arches}
- rust-cfg-expr
ExclusiveArch: %{rust_arches}
- rust-cfg-if
ExclusiveArch: %{rust_arches}
- rust-cfg-if0.1
ExclusiveArch: %{rust_arches}
- rust-cgroupfs
ExclusiveArch: %{rust_arches}
- rust-chainerror
ExclusiveArch: %{rust_arches}
- rust-charset
ExclusiveArch: %{rust_arches}
- rust-chbs
ExclusiveArch: %{rust_arches}
- rust-checked_int_cast
ExclusiveArch: %{rust_arches}
- rust-choosier
ExclusiveArch: %{rust_arches}
- rust-chrono
ExclusiveArch: %{rust_arches}
- rust-chrono-humanize
ExclusiveArch: %{rust_arches}
- rust-chrono-tz
ExclusiveArch: %{rust_arches}
- rust-chunked_transfer
ExclusiveArch: %{rust_arches}
- rust-ciborium
ExclusiveArch: %{rust_arches}
- rust-ciborium-io
ExclusiveArch: %{rust_arches}
- rust-ciborium-ll
ExclusiveArch: %{rust_arches}
- rust-cipher
ExclusiveArch: %{rust_arches}
- rust-cipher0.3
ExclusiveArch: %{rust_arches}
- rust-clang-ast
ExclusiveArch: %{rust_arches}
- rust-clang-sys
ExclusiveArch: %{rust_arches}
- rust-clap
ExclusiveArch: %{rust_arches}
- rust-clap-verbosity-flag
ExclusiveArch: %{rust_arches}
- rust-clap2
ExclusiveArch: %{rust_arches}
- rust-clap_complete
ExclusiveArch: %{rust_arches}
- rust-clap_complete_fig
ExclusiveArch: %{rust_arches}
- rust-clap_derive
ExclusiveArch: %{rust_arches}
- rust-clap_generate
ExclusiveArch: %{rust_arches}
- rust-clap_generate_fig
ExclusiveArch: %{rust_arches}
- rust-clap_lex
ExclusiveArch: %{rust_arches}
- rust-clicolors-control
ExclusiveArch: %{rust_arches}
- rust-clircle
ExclusiveArch: %{rust_arches}
- rust-cmake
ExclusiveArch: %{rust_arches}
- rust-codespan-reporting
ExclusiveArch: %{rust_arches}
- rust-codicon
ExclusiveArch: %{rust_arches}
- rust-color-backtrace
ExclusiveArch: %{rust_arches}
- rust-color_quant
ExclusiveArch: %{rust_arches}
- rust-colored
ExclusiveArch: %{rust_arches}
- rust-colored1
ExclusiveArch: %{rust_arches}
- rust-colored_json
ExclusiveArch: %{rust_arches}
- rust-colorful
ExclusiveArch: %{rust_arches}
- rust-combine
ExclusiveArch: %{rust_arches}
- rust-comfy-table
ExclusiveArch: %{rust_arches}
- rust-common-path
ExclusiveArch: %{rust_arches}
- rust-compiletest_rs
ExclusiveArch: %{rust_arches}
- rust-compress-tools
ExclusiveArch: %{rust_arches}
- rust-comrak
ExclusiveArch: %{rust_arches}
- rust-concolor-query
ExclusiveArch: %{rust_arches}
- rust-concurrent-queue
ExclusiveArch: %{rust_arches}
- rust-configparser
ExclusiveArch: %{rust_arches}
- rust-confy
ExclusiveArch: %{rust_arches}
- rust-conhash
ExclusiveArch: %{rust_arches}
- rust-console
ExclusiveArch: %{rust_arches}
- rust-console0.11
ExclusiveArch: %{rust_arches}
- rust-console0.12
ExclusiveArch: %{rust_arches}
- rust-console0.13
ExclusiveArch: %{rust_arches}
- rust-console0.14
ExclusiveArch: %{rust_arches}
- rust-console0.9
ExclusiveArch: %{rust_arches}
- rust-const-cstr
ExclusiveArch: %{rust_arches}
- rust-const-oid
ExclusiveArch: %{rust_arches}
- rust-const-random
ExclusiveArch: %{rust_arches}
- rust-const-random-macro
ExclusiveArch: %{rust_arches}
- rust-const_fn
ExclusiveArch: %{rust_arches}
- rust-const_format
ExclusiveArch: %{rust_arches}
- rust-const_format_proc_macros
ExclusiveArch: %{rust_arches}
- rust-constant_time_eq
ExclusiveArch: %{rust_arches}
- rust-content_inspector
ExclusiveArch: %{rust_arches}
- rust-conv
ExclusiveArch: %{rust_arches}
- rust-convert_case
ExclusiveArch: %{rust_arches}
- rust-cookie
ExclusiveArch: %{rust_arches}
- rust-cookie-factory
ExclusiveArch: %{rust_arches}
- rust-cookie0.14
ExclusiveArch: %{rust_arches}
- rust-cookie_store
ExclusiveArch: %{rust_arches}
- rust-cookie_store0.12
ExclusiveArch: %{rust_arches}
- rust-coolor
ExclusiveArch: %{rust_arches}
- rust-copydeps
ExclusiveArch: %{rust_arches}
- rust-copypasta
ExclusiveArch: %{rust_arches}
- rust-cordic
ExclusiveArch: %{rust_arches}
- rust-coreos-installer
ExclusiveArch: %{rust_arches}
- rust-count-zeroes
ExclusiveArch: %{rust_arches}
- rust-counted-array
ExclusiveArch: %{rust_arches}
- rust-cpc
ExclusiveArch: %{rust_arches}
- rust-cpio
ExclusiveArch: %{rust_arches}
- rust-cpp_demangle
ExclusiveArch: %{rust_arches}
- rust-cpufeatures
ExclusiveArch: %{rust_arches}
- rust-cpython
ExclusiveArch: %{rust_arches}
- rust-cranelift-bforest
ExclusiveArch: %{rust_arches}
- rust-cranelift-codegen
ExclusiveArch: x86_64 aarch64 s390x
- rust-cranelift-codegen-meta
ExclusiveArch: %{rust_arches}
- rust-cranelift-codegen-shared
ExclusiveArch: %{rust_arches}
- rust-cranelift-entity
ExclusiveArch: %{rust_arches}
- rust-cranelift-frontend
ExclusiveArch: x86_64 aarch64 s390x
- rust-cranelift-native
ExclusiveArch: x86_64 aarch64 s390x
- rust-cranelift-wasm
ExclusiveArch: x86_64 aarch64 s390x
- rust-crates-io
ExclusiveArch: %{rust_arches}
- rust-crc
ExclusiveArch: %{rust_arches}
- rust-crc-catalog
ExclusiveArch: %{rust_arches}
- rust-crc32fast
ExclusiveArch: %{rust_arches}
- rust-criterion
ExclusiveArch: %{rust_arches}
- rust-criterion-plot
ExclusiveArch: %{rust_arches}
- rust-crossbeam
ExclusiveArch: %{rust_arches}
- rust-crossbeam-channel
ExclusiveArch: %{rust_arches}
- rust-crossbeam-channel0.4
ExclusiveArch: %{rust_arches}
- rust-crossbeam-deque
ExclusiveArch: %{rust_arches}
- rust-crossbeam-deque0.7
ExclusiveArch: %{rust_arches}
- rust-crossbeam-epoch
ExclusiveArch: %{rust_arches}
- rust-crossbeam-epoch0.8
ExclusiveArch: %{rust_arches}
- rust-crossbeam-queue
ExclusiveArch: %{rust_arches}
- rust-crossbeam-queue0.2
ExclusiveArch: %{rust_arches}
- rust-crossbeam-utils
ExclusiveArch: %{rust_arches}
- rust-crossbeam-utils0.7
ExclusiveArch: %{rust_arches}
- rust-crossbeam0.7
ExclusiveArch: %{rust_arches}
- rust-crossfont
ExclusiveArch: %{rust_arches}
- rust-crossterm
ExclusiveArch: %{rust_arches}
- rust-crossterm0.17
ExclusiveArch: %{rust_arches}
- rust-crossterm0.19
ExclusiveArch: %{rust_arches}
- rust-crosstermion
ExclusiveArch: %{rust_arches}
- rust-crunchy
ExclusiveArch: %{rust_arches}
- rust-crypto-bigint
ExclusiveArch: %{rust_arches}
- rust-crypto-common
ExclusiveArch: %{rust_arches}
- rust-crypto-hash
ExclusiveArch: %{rust_arches}
- rust-crypto-mac
ExclusiveArch: %{rust_arches}
- rust-cryptoki
ExclusiveArch: %{rust_arches}
- rust-cryptoki-sys
ExclusiveArch: %{rust_arches}
- rust-cstr_core
ExclusiveArch: %{rust_arches}
- rust-csv
ExclusiveArch: %{rust_arches}
- rust-csv-core
ExclusiveArch: %{rust_arches}
- rust-ct-logs
ExclusiveArch: %{rust_arches}
- rust-ctor
ExclusiveArch: %{rust_arches}
- rust-ctr
ExclusiveArch: %{rust_arches}
- rust-ctr0.8
ExclusiveArch: %{rust_arches}
- rust-ctrlc
ExclusiveArch: %{rust_arches}
- rust-cty
ExclusiveArch: %{rust_arches}
- rust-curl
ExclusiveArch: %{rust_arches}
- rust-curl-sys
ExclusiveArch: %{rust_arches}
- rust-cursive
ExclusiveArch: %{rust_arches}
- rust-cursive-tabs
ExclusiveArch: %{rust_arches}
- rust-cursive_buffered_backend
ExclusiveArch: %{rust_arches}
- rust-cursive_core
ExclusiveArch: %{rust_arches}
- rust-curve25519-dalek
ExclusiveArch: %{rust_arches}
- rust-custom_derive
ExclusiveArch: %{rust_arches}
- rust-custom_error
ExclusiveArch: %{rust_arches}
- rust-cxx
ExclusiveArch: %{rust_arches}
- rust-cxx-build
ExclusiveArch: %{rust_arches}
- rust-cxx-gen
ExclusiveArch: %{rust_arches}
- rust-cxxbridge-flags
ExclusiveArch: %{rust_arches}
- rust-cxxbridge-macro
ExclusiveArch: %{rust_arches}
- rust-daemonize
ExclusiveArch: %{rust_arches}
- rust-darling
ExclusiveArch: %{rust_arches}
- rust-darling0.12
ExclusiveArch: %{rust_arches}
- rust-darling_core
ExclusiveArch: %{rust_arches}
- rust-darling_core0.12
ExclusiveArch: %{rust_arches}
- rust-darling_macro
ExclusiveArch: %{rust_arches}
- rust-darling_macro0.12
ExclusiveArch: %{rust_arches}
- rust-dashmap
ExclusiveArch: %{rust_arches}
- rust-dashmap4
ExclusiveArch: %{rust_arches}
- rust-data-encoding
ExclusiveArch: %{rust_arches}
- rust-data-url
ExclusiveArch: %{rust_arches}
- rust-datetime
ExclusiveArch: %{rust_arches}
- rust-dav1d-sys
ExclusiveArch: %{rust_arches}
- rust-dbus
ExclusiveArch: %{rust_arches}
- rust-dbus-codegen
ExclusiveArch: %{rust_arches}
- rust-dbus-crossroads
ExclusiveArch: %{rust_arches}
- rust-dbus-tokio
ExclusiveArch: %{rust_arches}
- rust-dbus-tree
ExclusiveArch: %{rust_arches}
- rust-dbus0.8
ExclusiveArch: %{rust_arches}
- rust-decimal
ExclusiveArch: %{rust_arches}
- rust-defer-drop
ExclusiveArch: %{rust_arches}
- rust-deflate
ExclusiveArch: %{rust_arches}
- rust-deflate0.8
ExclusiveArch: %{rust_arches}
- rust-defmac
ExclusiveArch: %{rust_arches}
- rust-der
ExclusiveArch: %{rust_arches}
- rust-der_derive
ExclusiveArch: %{rust_arches}
- rust-derivative
ExclusiveArch: %{rust_arches}
- rust-derive-new
ExclusiveArch: %{rust_arches}
- rust-derive_arbitrary
ExclusiveArch: %{rust_arches}
- rust-derive_arbitrary0.4
ExclusiveArch: %{rust_arches}
- rust-derive_builder
ExclusiveArch: %{rust_arches}
- rust-derive_builder0.9
ExclusiveArch: %{rust_arches}
- rust-derive_builder_core
ExclusiveArch: %{rust_arches}
- rust-derive_builder_core0.9
ExclusiveArch: %{rust_arches}
- rust-derive_builder_macro
ExclusiveArch: %{rust_arches}
- rust-derive_more
ExclusiveArch: %{rust_arches}
- rust-des
ExclusiveArch: %{rust_arches}
- rust-des0.7
ExclusiveArch: %{rust_arches}
- rust-desed
ExclusiveArch: %{rust_arches}
- rust-deunicode
ExclusiveArch: %{rust_arches}
- rust-devicemapper
ExclusiveArch: %{rust_arches}
- rust-devicemapper-sys
ExclusiveArch: %{rust_arches}
- rust-dialoguer
ExclusiveArch: %{rust_arches}
- rust-diesel
ExclusiveArch: %{rust_arches}
- rust-diesel_derives
ExclusiveArch: %{rust_arches}
- rust-diff
ExclusiveArch: %{rust_arches}
- rust-difference
ExclusiveArch: %{rust_arches}
- rust-difflib
ExclusiveArch: %{rust_arches}
- rust-digest
ExclusiveArch: %{rust_arches}
- rust-digest0.9
ExclusiveArch: %{rust_arches}
- rust-digest_auth
ExclusiveArch: %{rust_arches}
- rust-directories
ExclusiveArch: %{rust_arches}
- rust-directories-next
ExclusiveArch: %{rust_arches}
- rust-directories3
ExclusiveArch: %{rust_arches}
- rust-dirs
ExclusiveArch: %{rust_arches}
- rust-dirs-next
ExclusiveArch: %{rust_arches}
- rust-dirs-sys
ExclusiveArch: %{rust_arches}
- rust-dirs-sys-next
ExclusiveArch: %{rust_arches}
- rust-dirs2
ExclusiveArch: %{rust_arches}
- rust-dirs3
ExclusiveArch: %{rust_arches}
- rust-diskonaut
ExclusiveArch: %{rust_arches}
- rust-displaydoc
ExclusiveArch: %{rust_arches}
- rust-dissimilar
ExclusiveArch: %{rust_arches}
- rust-dlib
ExclusiveArch: %{rust_arches}
- rust-dlv-list
ExclusiveArch: %{rust_arches}
- rust-dns-lookup
ExclusiveArch: %{rust_arches}
- rust-doc-comment
ExclusiveArch: %{rust_arches}
- rust-docmatic
ExclusiveArch: %{rust_arches}
- rust-docopt
ExclusiveArch: %{rust_arches}
- rust-dotenv
ExclusiveArch: %{rust_arches}
- rust-downcast
ExclusiveArch: %{rust_arches}
- rust-downcast-rs
ExclusiveArch: %{rust_arches}
- rust-drg
ExclusiveArch: %{rust_arches}
- rust-dtoa
ExclusiveArch: %{rust_arches}
- rust-dua-cli
ExclusiveArch: %{rust_arches}
- rust-duct
ExclusiveArch: %{rust_arches}
- rust-dummy
ExclusiveArch: %{rust_arches}
- rust-dunce
ExclusiveArch: %{rust_arches}
- rust-dutree
ExclusiveArch: %{rust_arches}
- rust-dyn-clone
ExclusiveArch: %{rust_arches}
- rust-easy-cast
ExclusiveArch: %{rust_arches}
- rust-easy-parallel
ExclusiveArch: %{rust_arches}
- rust-edit
ExclusiveArch: %{rust_arches}
- rust-edit-distance
ExclusiveArch: %{rust_arches}
- rust-either
ExclusiveArch: %{rust_arches}
- rust-elasticlunr-rs
ExclusiveArch: %{rust_arches}
- rust-elf
ExclusiveArch: %{rust_arches}
- rust-elfcat
ExclusiveArch: %{rust_arches}
- rust-email-encoding
ExclusiveArch: %{rust_arches}
- rust-ena
ExclusiveArch: %{rust_arches}
- rust-encode_unicode
ExclusiveArch: %{rust_arches}
- rust-encoding
ExclusiveArch: %{rust_arches}
- rust-encoding-index-japanese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-korean
ExclusiveArch: %{rust_arches}
- rust-encoding-index-simpchinese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-singlebyte
ExclusiveArch: %{rust_arches}
- rust-encoding-index-tradchinese
ExclusiveArch: %{rust_arches}
- rust-encoding_index_tests
ExclusiveArch: %{rust_arches}
- rust-encoding_rs
ExclusiveArch: %{rust_arches}
- rust-encoding_rs_io
ExclusiveArch: %{rust_arches}
- rust-endian-type
ExclusiveArch: %{rust_arches}
- rust-enquote
ExclusiveArch: %{rust_arches}
- rust-entities
ExclusiveArch: %{rust_arches}
- rust-enum-as-inner
ExclusiveArch: %{rust_arches}
- rust-enum-as-inner0.3
ExclusiveArch: %{rust_arches}
- rust-enum-iterator
ExclusiveArch: %{rust_arches}
- rust-enum-iterator-derive
ExclusiveArch: %{rust_arches}
- rust-enum-map
ExclusiveArch: %{rust_arches}
- rust-enum-map-derive
ExclusiveArch: %{rust_arches}
- rust-enumflags2
ExclusiveArch: %{rust_arches}
- rust-enumflags2_0.6
ExclusiveArch: %{rust_arches}
- rust-enumflags2_derive
ExclusiveArch: %{rust_arches}
- rust-enumflags2_derive0.6
ExclusiveArch: %{rust_arches}
- rust-enumset
ExclusiveArch: %{rust_arches}
- rust-enumset_derive
ExclusiveArch: %{rust_arches}
- rust-env_logger
ExclusiveArch: %{rust_arches}
- rust-env_logger0.4
ExclusiveArch: %{rust_arches}
- rust-env_logger0.5
ExclusiveArch: %{rust_arches}
- rust-env_logger0.6
ExclusiveArch: %{rust_arches}
- rust-env_logger0.7
ExclusiveArch: %{rust_arches}
- rust-env_logger0.8
ExclusiveArch: %{rust_arches}
- rust-env_proxy
ExclusiveArch: %{rust_arches}
- rust-environment
ExclusiveArch: %{rust_arches}
- rust-envsubst
ExclusiveArch: %{rust_arches}
- rust-epoll
ExclusiveArch: %{rust_arches}
- rust-erased-serde
ExclusiveArch: %{rust_arches}
- rust-err-derive
ExclusiveArch: %{rust_arches}
- rust-errno
ExclusiveArch: %{rust_arches}
- rust-error-chain
ExclusiveArch: %{rust_arches}
- rust-escape_string
ExclusiveArch: %{rust_arches}
- rust-escargot
ExclusiveArch: %{rust_arches}
- rust-esphome
ExclusiveArch: %{rust_arches}
- rust-ethtool
ExclusiveArch: %{rust_arches}
- rust-event-listener
ExclusiveArch: %{rust_arches}
- rust-exa
ExclusiveArch: %{rust_arches}
- rust-executable-path
ExclusiveArch: %{rust_arches}
- rust-exitcode
ExclusiveArch: %{rust_arches}
- rust-exitfailure
ExclusiveArch: %{rust_arches}
- rust-expat-sys
ExclusiveArch: %{rust_arches}
- rust-eyre
ExclusiveArch: %{rust_arches}
- rust-faccess
ExclusiveArch: %{rust_arches}
- rust-fail
ExclusiveArch: %{rust_arches}
- rust-failure
ExclusiveArch: %{rust_arches}
- rust-failure-tools
ExclusiveArch: %{rust_arches}
- rust-failure_derive
ExclusiveArch: %{rust_arches}
- rust-fake
ExclusiveArch: %{rust_arches}
- rust-fake-simd
ExclusiveArch: %{rust_arches}
- rust-fallible-iterator
ExclusiveArch: %{rust_arches}
- rust-fallible-streaming-iterator
ExclusiveArch: %{rust_arches}
- rust-fancy-regex
ExclusiveArch: %{rust_arches}
- rust-fastrand
ExclusiveArch: %{rust_arches}
- rust-fatfs
ExclusiveArch: %{rust_arches}
- rust-fb_procfs
ExclusiveArch: %{rust_arches}
- rust-fbthrift_codegen_includer_proc_macro
ExclusiveArch: %{rust_arches}
- rust-fd-find
ExclusiveArch: %{rust_arches}
- rust-fd-lock
ExclusiveArch: %{rust_arches}
- rust-fdlimit
ExclusiveArch: %{rust_arches}
- rust-fedora
ExclusiveArch: %{rust_arches}
- rust-fedora-update-feedback
ExclusiveArch: %{rust_arches}
- rust-femme
ExclusiveArch: %{rust_arches}
- rust-fern
ExclusiveArch: %{rust_arches}
- rust-ffsend
ExclusiveArch: %{rust_arches}
- rust-ffsend-api
ExclusiveArch: %{rust_arches}
- rust-field-offset
ExclusiveArch: %{rust_arches}
- rust-file-per-thread-logger
ExclusiveArch: %{rust_arches}
- rust-filedescriptor
ExclusiveArch: %{rust_arches}
- rust-filesize
ExclusiveArch: %{rust_arches}
- rust-filetime
ExclusiveArch: %{rust_arches}
- rust-filetreelist
ExclusiveArch: %{rust_arches}
- rust-find-crate
ExclusiveArch: %{rust_arches}
- rust-findshlibs
ExclusiveArch: %{rust_arches}
- rust-firestorm
ExclusiveArch: %{rust_arches}
- rust-fixed
ExclusiveArch: %{rust_arches}
- rust-fixedbitset
ExclusiveArch: %{rust_arches}
- rust-fixedbitset0.2
ExclusiveArch: %{rust_arches}
- rust-flate2
ExclusiveArch: %{rust_arches}
- rust-float-cmp
ExclusiveArch: %{rust_arches}
- rust-float-ord
ExclusiveArch: %{rust_arches}
- rust-fluent
ExclusiveArch: %{rust_arches}
- rust-fluent-bundle
ExclusiveArch: %{rust_arches}
- rust-fluent-langneg
ExclusiveArch: %{rust_arches}
- rust-fluent-syntax
ExclusiveArch: %{rust_arches}
- rust-fn-error-context
ExclusiveArch: %{rust_arches}
- rust-fnv
ExclusiveArch: %{rust_arches}
- rust-font-kit
ExclusiveArch: %{rust_arches}
- rust-foreign-types
ExclusiveArch: %{rust_arches}
- rust-foreign-types-macros
ExclusiveArch: %{rust_arches}
- rust-foreign-types-shared
ExclusiveArch: %{rust_arches}
- rust-foreign-types-shared0.1
ExclusiveArch: %{rust_arches}
- rust-foreign-types0.3
ExclusiveArch: %{rust_arches}
- rust-form_urlencoded
ExclusiveArch: %{rust_arches}
- rust-format-bytes
ExclusiveArch: %{rust_arches}
- rust-format-bytes-macros
ExclusiveArch: %{rust_arches}
- rust-fragile
ExclusiveArch: %{rust_arches}
- rust-freetype
ExclusiveArch: %{rust_arches}
- rust-freetype-rs
ExclusiveArch: %{rust_arches}
- rust-freetype-sys
ExclusiveArch: %{rust_arches}
- rust-fs-err
ExclusiveArch: %{rust_arches}
- rust-fs-set-times
ExclusiveArch: %{rust_arches}
- rust-fs2
ExclusiveArch: %{rust_arches}
- rust-fs_extra
ExclusiveArch: %{rust_arches}
- rust-fscommon
ExclusiveArch: %{rust_arches}
- rust-fslock
ExclusiveArch: %{rust_arches}
- rust-funty
ExclusiveArch: %{rust_arches}
- rust-futf
ExclusiveArch: %{rust_arches}
- rust-futures
ExclusiveArch: %{rust_arches}
- rust-futures-channel
ExclusiveArch: %{rust_arches}
- rust-futures-core
ExclusiveArch: %{rust_arches}
- rust-futures-cpupool
ExclusiveArch: %{rust_arches}
- rust-futures-executor
ExclusiveArch: %{rust_arches}
- rust-futures-io
ExclusiveArch: %{rust_arches}
- rust-futures-lite
ExclusiveArch: %{rust_arches}
- rust-futures-macro
ExclusiveArch: %{rust_arches}
- rust-futures-sink
ExclusiveArch: %{rust_arches}
- rust-futures-task
ExclusiveArch: %{rust_arches}
- rust-futures-test
ExclusiveArch: %{rust_arches}
- rust-futures-timer
ExclusiveArch: %{rust_arches}
- rust-futures-util
ExclusiveArch: %{rust_arches}
- rust-futures0.1
ExclusiveArch: %{rust_arches}
- rust-fuzzy-matcher
ExclusiveArch: %{rust_arches}
- rust-fxhash
ExclusiveArch: %{rust_arches}
- rust-gdk
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf-sys
ExclusiveArch: %{rust_arches}
- rust-gdk-sys
ExclusiveArch: %{rust_arches}
- rust-gdk4
ExclusiveArch: %{rust_arches}
- rust-gdk4-sys
ExclusiveArch: %{rust_arches}
- rust-generic-array
ExclusiveArch: %{rust_arches}
- rust-generic-array0.12
ExclusiveArch: %{rust_arches}
- rust-genetlink
ExclusiveArch: %{rust_arches}
- rust-getch
ExclusiveArch: %{rust_arches}
- rust-gethostname
ExclusiveArch: %{rust_arches}
- rust-getopts
ExclusiveArch: %{rust_arches}
- rust-getrandom
ExclusiveArch: %{rust_arches}
- rust-getrandom0.1
ExclusiveArch: %{rust_arches}
- rust-getset
ExclusiveArch: %{rust_arches}
- rust-gettext-rs
ExclusiveArch: %{rust_arches}
- rust-gettext-sys
ExclusiveArch: %{rust_arches}
- rust-gh-emoji
ExclusiveArch: %{rust_arches}
- rust-ghash
ExclusiveArch: %{rust_arches}
- rust-ghost
ExclusiveArch: %{rust_arches}
- rust-gif
ExclusiveArch: %{rust_arches}
- rust-gimli
ExclusiveArch: %{rust_arches}
- rust-gio
ExclusiveArch: %{rust_arches}
- rust-gio-sys
ExclusiveArch: %{rust_arches}
- rust-gir-format-check
ExclusiveArch: %{rust_arches}
- rust-git-delta
ExclusiveArch: %{rust_arches}
- rust-git-version
ExclusiveArch: %{rust_arches}
- rust-git-version-macro
ExclusiveArch: %{rust_arches}
- rust-git2
ExclusiveArch: %{rust_arches}
- rust-git2-curl
ExclusiveArch: %{rust_arches}
- rust-git2_0.13
ExclusiveArch: %{rust_arches}
- rust-gitui
ExclusiveArch: %{rust_arches}
- rust-gl_generator
ExclusiveArch: %{rust_arches}
- rust-glam
ExclusiveArch: %{rust_arches}
- rust-glib
ExclusiveArch: %{rust_arches}
- rust-glib-macros
ExclusiveArch: %{rust_arches}
- rust-glib-sys
ExclusiveArch: %{rust_arches}
- rust-glob
ExclusiveArch: %{rust_arches}
- rust-globset
ExclusiveArch: %{rust_arches}
- rust-globwalk
ExclusiveArch: %{rust_arches}
- rust-glutin
ExclusiveArch: %{rust_arches}
- rust-glutin_egl_sys
ExclusiveArch: %{rust_arches}
- rust-glutin_glx_sys
ExclusiveArch: %{rust_arches}
- rust-gmp-mpfr-sys
ExclusiveArch: %{rust_arches}
- rust-gobject-sys
ExclusiveArch: %{rust_arches}
- rust-goblin
ExclusiveArch: %{rust_arches}
- rust-gptman
ExclusiveArch: %{rust_arches}
- rust-graphene-rs
ExclusiveArch: %{rust_arches}
- rust-graphene-sys
ExclusiveArch: %{rust_arches}
- rust-greetd_ipc
ExclusiveArch: %{rust_arches}
- rust-grep
ExclusiveArch: %{rust_arches}
- rust-grep-cli
ExclusiveArch: %{rust_arches}
- rust-grep-matcher
ExclusiveArch: %{rust_arches}
- rust-grep-pcre2
ExclusiveArch: %{rust_arches}
- rust-grep-printer
ExclusiveArch: %{rust_arches}
- rust-grep-regex
ExclusiveArch: %{rust_arches}
- rust-grep-searcher
ExclusiveArch: %{rust_arches}
- rust-groupable
ExclusiveArch: %{rust_arches}
- rust-gsk4
ExclusiveArch: %{rust_arches}
- rust-gsk4-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer
ExclusiveArch: %{rust_arches}
- rust-gstreamer-audio
ExclusiveArch: %{rust_arches}
- rust-gstreamer-audio-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-base
ExclusiveArch: %{rust_arches}
- rust-gstreamer-base-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-editing-services
ExclusiveArch: %{rust_arches}
- rust-gstreamer-editing-services-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-pbutils
ExclusiveArch: %{rust_arches}
- rust-gstreamer-pbutils-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-player
ExclusiveArch: %{rust_arches}
- rust-gstreamer-player-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-video
ExclusiveArch: %{rust_arches}
- rust-gstreamer-video-sys
ExclusiveArch: %{rust_arches}
- rust-gtk
ExclusiveArch: %{rust_arches}
- rust-gtk-sys
ExclusiveArch: %{rust_arches}
- rust-gtk3-macros
ExclusiveArch: %{rust_arches}
- rust-gtk4
ExclusiveArch: %{rust_arches}
- rust-gtk4-macros
ExclusiveArch: %{rust_arches}
- rust-gtk4-sys
ExclusiveArch: %{rust_arches}
- rust-gzip-header
ExclusiveArch: %{rust_arches}
- rust-h2
ExclusiveArch: %{rust_arches}
- rust-h2_0.2
ExclusiveArch: %{rust_arches}
- rust-half
ExclusiveArch: %{rust_arches}
- rust-hamcrest2
ExclusiveArch: %{rust_arches}
- rust-handlebars
ExclusiveArch: %{rust_arches}
- rust-hashbrown
ExclusiveArch: %{rust_arches}
- rust-hashbrown0.11
ExclusiveArch: %{rust_arches}
- rust-hashbrown0.9
ExclusiveArch: %{rust_arches}
- rust-hashlink
ExclusiveArch: %{rust_arches}
- rust-headers
ExclusiveArch: %{rust_arches}
- rust-headers-core
ExclusiveArch: %{rust_arches}
- rust-heapsize
ExclusiveArch: %{rust_arches}
- rust-heatseeker
ExclusiveArch: %{rust_arches}
- rust-heck
ExclusiveArch: %{rust_arches}
- rust-heck0.3
ExclusiveArch: %{rust_arches}
- rust-helvum
ExclusiveArch: %{rust_arches}
- rust-hex
ExclusiveArch: %{rust_arches}
- rust-hex-literal
ExclusiveArch: %{rust_arches}
- rust-hex-literal-impl
ExclusiveArch: %{rust_arches}
- rust-hex-literal0.2
ExclusiveArch: %{rust_arches}
- rust-hexyl
ExclusiveArch: %{rust_arches}
- rust-hidapi
ExclusiveArch: %{rust_arches}
- rust-hkdf
ExclusiveArch: %{rust_arches}
- rust-hkdf0.11
ExclusiveArch: %{rust_arches}
- rust-hmac
ExclusiveArch: %{rust_arches}
- rust-hmac0.11
ExclusiveArch: %{rust_arches}
- rust-home
ExclusiveArch: %{rust_arches}
- rust-hostname
ExclusiveArch: %{rust_arches}
- rust-hostname-validator
ExclusiveArch: %{rust_arches}
- rust-html-escape
ExclusiveArch: %{rust_arches}
- rust-html2pango
ExclusiveArch: %{rust_arches}
- rust-html5ever
ExclusiveArch: %{rust_arches}
- rust-http
ExclusiveArch: %{rust_arches}
- rust-http-body
ExclusiveArch: %{rust_arches}
- rust-http-body0.3
ExclusiveArch: %{rust_arches}
- rust-http0.1
ExclusiveArch: %{rust_arches}
- rust-httparse
ExclusiveArch: %{rust_arches}
- rust-httpdate
ExclusiveArch: %{rust_arches}
- rust-human-panic
ExclusiveArch: %{rust_arches}
- rust-human-sort
ExclusiveArch: %{rust_arches}
- rust-humansize
ExclusiveArch: %{rust_arches}
- rust-humantime
ExclusiveArch: %{rust_arches}
- rust-humantime-serde
ExclusiveArch: %{rust_arches}
- rust-humantime1
ExclusiveArch: %{rust_arches}
- rust-hyper
ExclusiveArch: %{rust_arches}
- rust-hyper-native-tls
ExclusiveArch: %{rust_arches}
- rust-hyper-rustls
ExclusiveArch: %{rust_arches}
- rust-hyper-staticfile
ExclusiveArch: %{rust_arches}
- rust-hyper-tls
ExclusiveArch: %{rust_arches}
- rust-hyper-tls0.4
ExclusiveArch: %{rust_arches}
- rust-hyper0.10
ExclusiveArch: %{rust_arches}
- rust-hyper0.13
ExclusiveArch: %{rust_arches}
- rust-hyperfine
ExclusiveArch: %{rust_arches}
- rust-i18n-config
ExclusiveArch: %{rust_arches}
- rust-i18n-embed
ExclusiveArch: %{rust_arches}
- rust-i18n-embed-fl
ExclusiveArch: %{rust_arches}
- rust-i18n-embed-impl
ExclusiveArch: %{rust_arches}
- rust-i3ipc
ExclusiveArch: %{rust_arches}
- rust-iai
ExclusiveArch: %{rust_arches}
- rust-id-arena
ExclusiveArch: %{rust_arches}
- rust-ident_case
ExclusiveArch: %{rust_arches}
- rust-idna
ExclusiveArch: %{rust_arches}
- rust-idna0.1
ExclusiveArch: %{rust_arches}
- rust-ifcfg-devname
ExclusiveArch: %{rust_arches}
- rust-ignition-config
ExclusiveArch: %{rust_arches}
- rust-ignore
ExclusiveArch: %{rust_arches}
- rust-im-rc
ExclusiveArch: %{rust_arches}
- rust-image
ExclusiveArch: %{rust_arches}
- rust-imgref
ExclusiveArch: %{rust_arches}
- rust-impls
ExclusiveArch: %{rust_arches}
- rust-indenter
ExclusiveArch: %{rust_arches}
- rust-indexmap
ExclusiveArch: %{rust_arches}
- rust-indicatif
ExclusiveArch: %{rust_arches}
- rust-indicatif0.15
ExclusiveArch: %{rust_arches}
- rust-indoc
ExclusiveArch: %{rust_arches}
- rust-infer
ExclusiveArch: %{rust_arches}
- rust-inferno
ExclusiveArch: %{rust_arches}
- rust-inlinable_string
ExclusiveArch: %{rust_arches}
- rust-inotify
ExclusiveArch: %{rust_arches}
- rust-inotify-sys
ExclusiveArch: %{rust_arches}
- rust-inout
ExclusiveArch: %{rust_arches}
- rust-input_buffer
ExclusiveArch: %{rust_arches}
- rust-insta
ExclusiveArch: %{rust_arches}
- rust-instant
ExclusiveArch: %{rust_arches}
- rust-integer-encoding
ExclusiveArch: %{rust_arches}
- rust-interpolate_name
ExclusiveArch: %{rust_arches}
- rust-intervaltree
ExclusiveArch: %{rust_arches}
- rust-intl-memoizer
ExclusiveArch: %{rust_arches}
- rust-intl_pluralrules
ExclusiveArch: %{rust_arches}
- rust-invalidstring
ExclusiveArch: %{rust_arches}
- rust-inventory
ExclusiveArch: %{rust_arches}
- rust-inventory-impl
ExclusiveArch: %{rust_arches}
- rust-inventory0.1
ExclusiveArch: %{rust_arches}
- rust-io-extras
ExclusiveArch: %{rust_arches}
- rust-io-lifetimes
ExclusiveArch: %{rust_arches}
- rust-ioctl-rs
ExclusiveArch: %{rust_arches}
- rust-iocuddle
ExclusiveArch: %{rust_arches}
- rust-iovec
ExclusiveArch: %{rust_arches}
- rust-ipnet
ExclusiveArch: %{rust_arches}
- rust-ipnetwork
ExclusiveArch: %{rust_arches}
- rust-ipnetwork0.17
ExclusiveArch: %{rust_arches}
- rust-iptables
ExclusiveArch: %{rust_arches}
- rust-iron
ExclusiveArch: %{rust_arches}
- rust-is-terminal
ExclusiveArch: %{rust_arches}
- rust-is_ci
ExclusiveArch: %{rust_arches}
- rust-is_debug
ExclusiveArch: %{rust_arches}
- rust-is_executable
ExclusiveArch: %{rust_arches}
- rust-iso8601
ExclusiveArch: %{rust_arches}
- rust-iter-read
ExclusiveArch: %{rust_arches}
- rust-itertools
ExclusiveArch: %{rust_arches}
- rust-itertools-num
ExclusiveArch: %{rust_arches}
- rust-itertools0.8
ExclusiveArch: %{rust_arches}
- rust-itertools0.9
ExclusiveArch: %{rust_arches}
- rust-itoa
ExclusiveArch: %{rust_arches}
- rust-itoa0.4
ExclusiveArch: %{rust_arches}
- rust-ivf
ExclusiveArch: %{rust_arches}
- rust-jieba-rs
ExclusiveArch: %{rust_arches}
- rust-jobserver
ExclusiveArch: %{rust_arches}
- rust-josekit
ExclusiveArch: %{rust_arches}
- rust-jpeg-decoder
ExclusiveArch: %{rust_arches}
- rust-jql
ExclusiveArch: %{rust_arches}
- rust-js-sys
ExclusiveArch: %{rust_arches}
- rust-json
ExclusiveArch: %{rust_arches}
- rust-json5
ExclusiveArch: %{rust_arches}
- rust-json_value_merge
ExclusiveArch: %{rust_arches}
- rust-just
ExclusiveArch: %{rust_arches}
- rust-jwalk
ExclusiveArch: %{rust_arches}
- rust-k9
ExclusiveArch: %{rust_arches}
- rust-keccak
ExclusiveArch: %{rust_arches}
- rust-khronos_api
ExclusiveArch: %{rust_arches}
- rust-konst
ExclusiveArch: %{rust_arches}
- rust-konst_macro_rules
ExclusiveArch: %{rust_arches}
- rust-konst_proc_macros
ExclusiveArch: %{rust_arches}
- rust-krunvm
ExclusiveArch: x86_64 aarch64
- rust-kstring
ExclusiveArch: %{rust_arches}
- rust-kv-log-macro
ExclusiveArch: %{rust_arches}
- rust-kvm-bindings
ExclusiveArch: %{rust_arches}
- rust-kvm-ioctls
ExclusiveArch: x86_64 aarch64
- rust-lab
ExclusiveArch: %{rust_arches}
- rust-lalrpop
ExclusiveArch: %{rust_arches}
- rust-lalrpop-util
ExclusiveArch: %{rust_arches}
- rust-language-tags
ExclusiveArch: %{rust_arches}
- rust-language-tags0.2
ExclusiveArch: %{rust_arches}
- rust-lazy_static
ExclusiveArch: %{rust_arches}
- rust-lazycell
ExclusiveArch: %{rust_arches}
- rust-leb128
ExclusiveArch: %{rust_arches}
- rust-lev_distance
ExclusiveArch: %{rust_arches}
- rust-lexical-core
ExclusiveArch: %{rust_arches}
- rust-lexiclean
ExclusiveArch: %{rust_arches}
- rust-lexopt
ExclusiveArch: %{rust_arches}
- rust-libblkid-rs
ExclusiveArch: %{rust_arches}
- rust-libblkid-rs-sys
ExclusiveArch: %{rust_arches}
- rust-libbpf-cargo
ExclusiveArch: %{rust_arches}
- rust-libbpf-rs
ExclusiveArch: %{rust_arches}
- rust-libbpf-sys
ExclusiveArch: %{rust_arches}
- rust-libc
ExclusiveArch: %{rust_arches}
- rust-libcryptsetup-rs
ExclusiveArch: %{rust_arches}
- rust-libcryptsetup-rs-sys
ExclusiveArch: %{rust_arches}
- rust-libdbus-sys
ExclusiveArch: %{rust_arches}
- rust-libflate
ExclusiveArch: %{rust_arches}
- rust-libflate_lz77
ExclusiveArch: %{rust_arches}
- rust-libgit2-sys
ExclusiveArch: %{rust_arches}
- rust-libgit2-sys0.12
ExclusiveArch: %{rust_arches}
- rust-libhandy
ExclusiveArch: %{rust_arches}
- rust-libhandy-sys
ExclusiveArch: %{rust_arches}
- rust-libloading
ExclusiveArch: %{rust_arches}
- rust-libm
ExclusiveArch: %{rust_arches}
- rust-libmount
ExclusiveArch: %{rust_arches}
- rust-libnotcurses-sys
ExclusiveArch: %{rust_arches}
- rust-liboverdrop
ExclusiveArch: %{rust_arches}
- rust-libpulse-binding
ExclusiveArch: %{rust_arches}
- rust-libpulse-sys
ExclusiveArch: %{rust_arches}
- rust-libseccomp-sys
ExclusiveArch: %{rust_arches}
- rust-libslirp
ExclusiveArch: %{rust_arches}
- rust-libslirp-sys
ExclusiveArch: %{rust_arches}
- rust-libspa
ExclusiveArch: %{rust_arches}
- rust-libspa-sys
ExclusiveArch: %{rust_arches}
- rust-libsqlite3-sys
ExclusiveArch: %{rust_arches}
- rust-libssh2-sys
ExclusiveArch: %{rust_arches}
- rust-libsystemd
ExclusiveArch: %{rust_arches}
- rust-libudev
ExclusiveArch: %{rust_arches}
- rust-libudev-sys
ExclusiveArch: %{rust_arches}
- rust-libxml
ExclusiveArch: %{rust_arches}
- rust-libz-sys
ExclusiveArch: %{rust_arches}
- rust-line-wrap
ExclusiveArch: %{rust_arches}
- rust-link-cplusplus
ExclusiveArch: %{rust_arches}
- rust-linked-hash-map
ExclusiveArch: %{rust_arches}
- rust-linkify
ExclusiveArch: %{rust_arches}
- rust-linreg
ExclusiveArch: %{rust_arches}
- rust-linux-raw-sys
ExclusiveArch: %{rust_arches}
- rust-linux_proc
ExclusiveArch: %{rust_arches}
- rust-lipsum
ExclusiveArch: %{rust_arches}
- rust-listenfd
ExclusiveArch: %{rust_arches}
- rust-lmdb
ExclusiveArch: %{rust_arches}
- rust-lmdb-sys
ExclusiveArch: %{rust_arches}
- rust-local-channel
ExclusiveArch: %{rust_arches}
- rust-local-encoding
ExclusiveArch: %{rust_arches}
- rust-local-waker
ExclusiveArch: %{rust_arches}
- rust-local_ipaddress
ExclusiveArch: %{rust_arches}
- rust-locale
ExclusiveArch: %{rust_arches}
- rust-locale_config
ExclusiveArch: %{rust_arches}
- rust-lock_api
ExclusiveArch: %{rust_arches}
- rust-lockfree
ExclusiveArch: %{rust_arches}
- rust-log
ExclusiveArch: %{rust_arches}
- rust-log-mdc
ExclusiveArch: %{rust_arches}
- rust-log-panics
ExclusiveArch: %{rust_arches}
- rust-log0.3
ExclusiveArch: %{rust_arches}
- rust-loggerv
ExclusiveArch: %{rust_arches}
- rust-loopdev
ExclusiveArch: %{rust_arches}
- rust-lru-cache
ExclusiveArch: %{rust_arches}
- rust-lscolors
ExclusiveArch: %{rust_arches}
- rust-lsd
ExclusiveArch: %{rust_arches}
- rust-lzma-sys
ExclusiveArch: %{rust_arches}
- rust-lzw
ExclusiveArch: %{rust_arches}
- rust-mac
ExclusiveArch: %{rust_arches}
- rust-mac_address
ExclusiveArch: %{rust_arches}
- rust-macro-attr
ExclusiveArch: %{rust_arches}
- rust-madvr_parse
ExclusiveArch: %{rust_arches}
- rust-maildir
ExclusiveArch: %{rust_arches}
- rust-mailparse
ExclusiveArch: %{rust_arches}
- rust-man
ExclusiveArch: %{rust_arches}
- rust-maplit
ExclusiveArch: %{rust_arches}
- rust-markup5ever
ExclusiveArch: %{rust_arches}
- rust-markup5ever_rcdom
ExclusiveArch: %{rust_arches}
- rust-match_cfg
ExclusiveArch: %{rust_arches}
- rust-matches
ExclusiveArch: %{rust_arches}
- rust-matrixcompare
ExclusiveArch: %{rust_arches}
- rust-matrixcompare-core
ExclusiveArch: %{rust_arches}
- rust-matrixcompare-mock
ExclusiveArch: %{rust_arches}
- rust-matrixmultiply
ExclusiveArch: %{rust_arches}
- rust-maxminddb
ExclusiveArch: %{rust_arches}
- rust-maybe-owned
ExclusiveArch: %{rust_arches}
- rust-maybe-uninit
ExclusiveArch: %{rust_arches}
- rust-mbox
ExclusiveArch: %{rust_arches}
- rust-mbrman
ExclusiveArch: %{rust_arches}
- rust-md-5
ExclusiveArch: %{rust_arches}
- rust-md-5_0.9
ExclusiveArch: %{rust_arches}
- rust-md5
ExclusiveArch: %{rust_arches}
- rust-mdl
ExclusiveArch: %{rust_arches}
- rust-memcached-rs
ExclusiveArch: %{rust_arches}
- rust-memchr
ExclusiveArch: %{rust_arches}
- rust-memfd
ExclusiveArch: %{rust_arches}
- rust-memmap
ExclusiveArch: %{rust_arches}
- rust-memmap2
ExclusiveArch: %{rust_arches}
- rust-memmap2_0.3
ExclusiveArch: %{rust_arches}
- rust-memmem
ExclusiveArch: %{rust_arches}
- rust-memoffset
ExclusiveArch: %{rust_arches}
- rust-memoffset0.5
ExclusiveArch: %{rust_arches}
- rust-memsec
ExclusiveArch: %{rust_arches}
- rust-micro-timer
ExclusiveArch: %{rust_arches}
- rust-micro-timer-macros
ExclusiveArch: %{rust_arches}
- rust-miette
ExclusiveArch: %{rust_arches}
- rust-miette-derive
ExclusiveArch: %{rust_arches}
- rust-mime
ExclusiveArch: %{rust_arches}
- rust-mime0.2
ExclusiveArch: %{rust_arches}
- rust-mime_guess
ExclusiveArch: %{rust_arches}
- rust-mime_guess1
ExclusiveArch: %{rust_arches}
- rust-minify-html
ExclusiveArch: %{rust_arches}
- rust-minimad
ExclusiveArch: %{rust_arches}
- rust-minimal-lexical
ExclusiveArch: %{rust_arches}
- rust-miniz-sys
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide0.3
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide_c_api
ExclusiveArch: %{rust_arches}
- rust-mint
ExclusiveArch: %{rust_arches}
- rust-mio
ExclusiveArch: %{rust_arches}
- rust-mio-extras
ExclusiveArch: %{rust_arches}
- rust-mio-uds
ExclusiveArch: %{rust_arches}
- rust-mio0.6
ExclusiveArch: %{rust_arches}
- rust-mio0.7
ExclusiveArch: %{rust_arches}
- rust-mktemp
ExclusiveArch: %{rust_arches}
- rust-mnt
ExclusiveArch: %{rust_arches}
- rust-mockall
ExclusiveArch: %{rust_arches}
- rust-mockall_derive
ExclusiveArch: %{rust_arches}
- rust-mockall_double
ExclusiveArch: %{rust_arches}
- rust-mockito
ExclusiveArch: %{rust_arches}
- rust-modifier
ExclusiveArch: %{rust_arches}
- rust-more-asserts
ExclusiveArch: %{rust_arches}
- rust-mptcp-pm
ExclusiveArch: %{rust_arches}
- rust-muldiv
ExclusiveArch: %{rust_arches}
- rust-multer
ExclusiveArch: %{rust_arches}
- rust-multimap
ExclusiveArch: %{rust_arches}
- rust-multipart
ExclusiveArch: %{rust_arches}
- rust-mustache
ExclusiveArch: %{rust_arches}
- rust-nalgebra
ExclusiveArch: %{rust_arches}
- rust-nalgebra-macros
ExclusiveArch: %{rust_arches}
- rust-nasm-rs
ExclusiveArch: %{rust_arches}
- rust-native-tls
ExclusiveArch: %{rust_arches}
- rust-natord
ExclusiveArch: %{rust_arches}
- rust-navi
ExclusiveArch: %{rust_arches}
- rust-nb-connect
ExclusiveArch: %{rust_arches}
- rust-ncurses
ExclusiveArch: %{rust_arches}
- rust-net2
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-core
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-generic
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-route
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-utils
ExclusiveArch: %{rust_arches}
- rust-netlink-proto
ExclusiveArch: %{rust_arches}
- rust-netlink-sys
ExclusiveArch: %{rust_arches}
- rust-netmap_sys
ExclusiveArch: %{rust_arches}
- rust-nettle
ExclusiveArch: %{rust_arches}
- rust-nettle-sys
ExclusiveArch: %{rust_arches}
- rust-new_debug_unreachable
ExclusiveArch: %{rust_arches}
- rust-newtype_derive
ExclusiveArch: %{rust_arches}
- rust-nibble_vec
ExclusiveArch: %{rust_arches}
- rust-nix
ExclusiveArch: %{rust_arches}
- rust-nix0.14
ExclusiveArch: %{rust_arches}
- rust-nix0.17
ExclusiveArch: %{rust_arches}
- rust-nix0.18
ExclusiveArch: %{rust_arches}
- rust-nix0.20
ExclusiveArch: %{rust_arches}
- rust-nix0.22
ExclusiveArch: %{rust_arches}
- rust-nix0.23
ExclusiveArch: %{rust_arches}
- rust-no-panic
ExclusiveArch: %{rust_arches}
- rust-nodrop
ExclusiveArch: %{rust_arches}
- rust-nohash-hasher
ExclusiveArch: %{rust_arches}
- rust-nom
ExclusiveArch: %{rust_arches}
- rust-nom4
ExclusiveArch: %{rust_arches}
- rust-nom5
ExclusiveArch: %{rust_arches}
- rust-noop_proc_macro
ExclusiveArch: %{rust_arches}
- rust-normalize-line-endings
ExclusiveArch: %{rust_arches}
- rust-notify
ExclusiveArch: %{rust_arches}
- rust-notify-rust
ExclusiveArch: %{rust_arches}
- rust-nu-ansi-term
ExclusiveArch: %{rust_arches}
- rust-nu-engine
ExclusiveArch: %{rust_arches}
- rust-nu-glob
ExclusiveArch: %{rust_arches}
- rust-nu-json
ExclusiveArch: %{rust_arches}
- rust-nu-parser
ExclusiveArch: %{rust_arches}
- rust-nu-path
ExclusiveArch: %{rust_arches}
- rust-nu-protocol
ExclusiveArch: %{rust_arches}
- rust-nu-utils
ExclusiveArch: %{rust_arches}
- rust-num
ExclusiveArch: %{rust_arches}
- rust-num-bigint
ExclusiveArch: %{rust_arches}
- rust-num-bigint-dig
ExclusiveArch: %{rust_arches}
- rust-num-bigint0.3
ExclusiveArch: %{rust_arches}
- rust-num-complex
ExclusiveArch: %{rust_arches}
- rust-num-complex0.3
ExclusiveArch: %{rust_arches}
- rust-num-derive
ExclusiveArch: %{rust_arches}
- rust-num-format
ExclusiveArch: %{rust_arches}
- rust-num-integer
ExclusiveArch: %{rust_arches}
- rust-num-iter
ExclusiveArch: %{rust_arches}
- rust-num-rational
ExclusiveArch: %{rust_arches}
- rust-num-rational0.3
ExclusiveArch: %{rust_arches}
- rust-num-traits
ExclusiveArch: %{rust_arches}
- rust-num-traits0.1
ExclusiveArch: %{rust_arches}
- rust-num0.3
ExclusiveArch: %{rust_arches}
- rust-num_cpus
ExclusiveArch: %{rust_arches}
- rust-num_enum
ExclusiveArch: %{rust_arches}
- rust-num_enum_derive
ExclusiveArch: %{rust_arches}
- rust-num_threads
ExclusiveArch: %{rust_arches}
- rust-number_prefix
ExclusiveArch: %{rust_arches}
- rust-numtoa
ExclusiveArch: %{rust_arches}
- rust-oauth2
ExclusiveArch: %{rust_arches}
- rust-object
ExclusiveArch: %{rust_arches}
- rust-odds
ExclusiveArch: %{rust_arches}
- rust-oid
ExclusiveArch: %{rust_arches}
- rust-once_cell
ExclusiveArch: %{rust_arches}
- rust-onig
ExclusiveArch: %{rust_arches}
- rust-onig_sys
ExclusiveArch: %{rust_arches}
- rust-oorandom
ExclusiveArch: %{rust_arches}
- rust-opaque-debug
ExclusiveArch: %{rust_arches}
- rust-open
ExclusiveArch: %{rust_arches}
- rust-open1
ExclusiveArch: %{rust_arches}
- rust-openat
ExclusiveArch: %{rust_arches}
- rust-openat-ext
ExclusiveArch: %{rust_arches}
- rust-opener
ExclusiveArch: %{rust_arches}
- rust-openssh-keys
ExclusiveArch: %{rust_arches}
- rust-openssl
ExclusiveArch: %{rust_arches}
- rust-openssl-kdf
ExclusiveArch: %{rust_arches}
- rust-openssl-macros
ExclusiveArch: %{rust_arches}
- rust-openssl-probe
ExclusiveArch: %{rust_arches}
- rust-openssl-sys
ExclusiveArch: %{rust_arches}
- rust-option-operations
ExclusiveArch: %{rust_arches}
- rust-ord_subset
ExclusiveArch: %{rust_arches}
- rust-ordered-float
ExclusiveArch: %{rust_arches}
- rust-ordered-float2
ExclusiveArch: %{rust_arches}
- rust-ordered-multimap
ExclusiveArch: %{rust_arches}
- rust-ordered-stream
ExclusiveArch: %{rust_arches}
- rust-os-release
ExclusiveArch: %{rust_arches}
- rust-os_display
ExclusiveArch: %{rust_arches}
- rust-os_info
ExclusiveArch: %{rust_arches}
- rust-os_pipe
ExclusiveArch: %{rust_arches}
- rust-os_pipe0.9
ExclusiveArch: %{rust_arches}
- rust-os_str_bytes
ExclusiveArch: %{rust_arches}
- rust-os_type
ExclusiveArch: %{rust_arches}
- rust-osmesa-sys
ExclusiveArch: %{rust_arches}
- rust-osstrtools
ExclusiveArch: %{rust_arches}
- rust-ouroboros
ExclusiveArch: %{rust_arches}
- rust-ouroboros_macro
ExclusiveArch: %{rust_arches}
- rust-overload
ExclusiveArch: %{rust_arches}
- rust-owned-alloc
ExclusiveArch: %{rust_arches}
- rust-owning_ref
ExclusiveArch: %{rust_arches}
- rust-owo-colors
ExclusiveArch: %{rust_arches}
- rust-packaging
ExclusiveArch: %{rust_arches}
- rust-pad
ExclusiveArch: %{rust_arches}
- rust-page_size
ExclusiveArch: %{rust_arches}
- rust-pager
ExclusiveArch: %{rust_arches}
- rust-palette
ExclusiveArch: %{rust_arches}
- rust-palette_derive
ExclusiveArch: %{rust_arches}
- rust-pam
ExclusiveArch: %{rust_arches}
- rust-pam-sys
ExclusiveArch: %{rust_arches}
- rust-pancurses
ExclusiveArch: %{rust_arches}
- rust-pango
ExclusiveArch: %{rust_arches}
- rust-pango-sys
ExclusiveArch: %{rust_arches}
- rust-pangocairo
ExclusiveArch: %{rust_arches}
- rust-pangocairo-sys
ExclusiveArch: %{rust_arches}
- rust-paris
ExclusiveArch: %{rust_arches}
- rust-parity-wasm
ExclusiveArch: %{rust_arches}
- rust-parking
ExclusiveArch: %{rust_arches}
- rust-parking_lot
ExclusiveArch: %{rust_arches}
- rust-parking_lot0.11
ExclusiveArch: %{rust_arches}
- rust-parking_lot_core
ExclusiveArch: %{rust_arches}
- rust-parking_lot_core0.8
ExclusiveArch: %{rust_arches}
- rust-parse-zoneinfo
ExclusiveArch: %{rust_arches}
- rust-parse_cfg
ExclusiveArch: %{rust_arches}
- rust-parsec-client
ExclusiveArch: %{rust_arches}
- rust-parsec-interface
ExclusiveArch: %{rust_arches}
- rust-partial-io
ExclusiveArch: %{rust_arches}
- rust-partition-identity
ExclusiveArch: %{rust_arches}
- rust-passwd
ExclusiveArch: %{rust_arches}
- rust-password-hash
ExclusiveArch: %{rust_arches}
- rust-paste
ExclusiveArch: %{rust_arches}
- rust-path-absolutize
ExclusiveArch: %{rust_arches}
- rust-path-dedot
ExclusiveArch: %{rust_arches}
- rust-path-slash
ExclusiveArch: %{rust_arches}
- rust-pathdiff
ExclusiveArch: %{rust_arches}
- rust-pathfinder_geometry
ExclusiveArch: %{rust_arches}
- rust-pathfinder_simd
ExclusiveArch: %{rust_arches}
- rust-pbkdf2
ExclusiveArch: %{rust_arches}
- rust-pbr
ExclusiveArch: %{rust_arches}
- rust-pcap
ExclusiveArch: %{rust_arches}
- rust-pcre2
ExclusiveArch: %{rust_arches}
- rust-pcre2-sys
ExclusiveArch: %{rust_arches}
- rust-peeking_take_while
ExclusiveArch: %{rust_arches}
- rust-peg
ExclusiveArch: %{rust_arches}
- rust-peg-macros
ExclusiveArch: %{rust_arches}
- rust-peg-runtime
ExclusiveArch: %{rust_arches}
- rust-peg0.5
ExclusiveArch: %{rust_arches}
- rust-pem
ExclusiveArch: %{rust_arches}
- rust-pem-rfc7468
ExclusiveArch: %{rust_arches}
- rust-pem0.8
ExclusiveArch: %{rust_arches}
- rust-percent-encoding
ExclusiveArch: %{rust_arches}
- rust-percent-encoding1
ExclusiveArch: %{rust_arches}
- rust-peresil
ExclusiveArch: %{rust_arches}
- rust-permutate
ExclusiveArch: %{rust_arches}
- rust-permutohedron
ExclusiveArch: %{rust_arches}
- rust-pest
ExclusiveArch: %{rust_arches}
- rust-pest_derive
ExclusiveArch: %{rust_arches}
- rust-pest_generator
ExclusiveArch: %{rust_arches}
- rust-pest_meta
ExclusiveArch: %{rust_arches}
- rust-petgraph
ExclusiveArch: %{rust_arches}
- rust-petgraph0.5
ExclusiveArch: %{rust_arches}
- rust-phf
ExclusiveArch: %{rust_arches}
- rust-phf0.7
ExclusiveArch: %{rust_arches}
- rust-phf0.8
ExclusiveArch: %{rust_arches}
- rust-phf_codegen
ExclusiveArch: %{rust_arches}
- rust-phf_codegen0.7
ExclusiveArch: %{rust_arches}
- rust-phf_generator
ExclusiveArch: %{rust_arches}
- rust-phf_generator0.7
ExclusiveArch: %{rust_arches}
- rust-phf_generator0.8
ExclusiveArch: %{rust_arches}
- rust-phf_macros
ExclusiveArch: %{rust_arches}
- rust-phf_macros0.7
ExclusiveArch: %{rust_arches}
- rust-phf_macros0.8
ExclusiveArch: %{rust_arches}
- rust-phf_shared
ExclusiveArch: %{rust_arches}
- rust-phf_shared0.7
ExclusiveArch: %{rust_arches}
- rust-phf_shared0.8
ExclusiveArch: %{rust_arches}
- rust-picky-asn1
ExclusiveArch: %{rust_arches}
- rust-picky-asn1-der
ExclusiveArch: %{rust_arches}
- rust-picky-asn1-x509
ExclusiveArch: %{rust_arches}
- rust-pico-args
ExclusiveArch: %{rust_arches}
- rust-pid
ExclusiveArch: %{rust_arches}
- rust-pin-project
ExclusiveArch: %{rust_arches}
- rust-pin-project-internal
ExclusiveArch: %{rust_arches}
- rust-pin-project-internal0.4
ExclusiveArch: %{rust_arches}
- rust-pin-project-lite
ExclusiveArch: %{rust_arches}
- rust-pin-project-lite0.1
ExclusiveArch: %{rust_arches}
- rust-pin-project0.4
ExclusiveArch: %{rust_arches}
- rust-pin-utils
ExclusiveArch: %{rust_arches}
- rust-pipe
ExclusiveArch: %{rust_arches}
- rust-piper
ExclusiveArch: %{rust_arches}
- rust-pipewire
ExclusiveArch: %{rust_arches}
- rust-pipewire-sys
ExclusiveArch: %{rust_arches}
- rust-pkcs1
ExclusiveArch: %{rust_arches}
- rust-pkcs5
ExclusiveArch: %{rust_arches}
- rust-pkcs8
ExclusiveArch: %{rust_arches}
- rust-pkg-config
ExclusiveArch: %{rust_arches}
- rust-plain
ExclusiveArch: %{rust_arches}
- rust-pleaser
ExclusiveArch: %{rust_arches}
- rust-plist
ExclusiveArch: %{rust_arches}
- rust-plotlib
ExclusiveArch: %{rust_arches}
- rust-plotters
ExclusiveArch: %{rust_arches}
- rust-plotters-backend
ExclusiveArch: %{rust_arches}
- rust-plotters-bitmap
ExclusiveArch: %{rust_arches}
- rust-plotters-svg
ExclusiveArch: %{rust_arches}
- rust-plugin
ExclusiveArch: %{rust_arches}
- rust-pnet_base
ExclusiveArch: %{rust_arches}
- rust-pnet_datalink
ExclusiveArch: %{rust_arches}
- rust-pnet_sys
ExclusiveArch: %{rust_arches}
- rust-png
ExclusiveArch: %{rust_arches}
- rust-png0.16
ExclusiveArch: %{rust_arches}
- rust-podio
ExclusiveArch: %{rust_arches}
- rust-polling
ExclusiveArch: %{rust_arches}
- rust-polyval
ExclusiveArch: %{rust_arches}
- rust-pom
ExclusiveArch: %{rust_arches}
- rust-pommes
ExclusiveArch: %{rust_arches}
- rust-ppv-lite86
ExclusiveArch: %{rust_arches}
- rust-pq-sys
ExclusiveArch: %{rust_arches}
- rust-precomputed-hash
ExclusiveArch: %{rust_arches}
- rust-predicates
ExclusiveArch: %{rust_arches}
- rust-predicates-core
ExclusiveArch: %{rust_arches}
- rust-predicates-tree
ExclusiveArch: %{rust_arches}
- rust-predicates1
ExclusiveArch: %{rust_arches}
- rust-pretty
ExclusiveArch: %{rust_arches}
- rust-pretty-git-prompt
ExclusiveArch: %{rust_arches}
- rust-pretty-hex
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions0.6
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions0.7
ExclusiveArch: %{rust_arches}
- rust-pretty_env_logger
ExclusiveArch: %{rust_arches}
- rust-prettytable-rs
ExclusiveArch: %{rust_arches}
- rust-print_bytes
ExclusiveArch: %{rust_arches}
- rust-proc-macro-crate
ExclusiveArch: %{rust_arches}
- rust-proc-macro-crate0.1
ExclusiveArch: %{rust_arches}
- rust-proc-macro-error
ExclusiveArch: %{rust_arches}
- rust-proc-macro-error-attr
ExclusiveArch: %{rust_arches}
- rust-proc-macro-hack
ExclusiveArch: %{rust_arches}
- rust-proc-macro2
ExclusiveArch: %{rust_arches}
- rust-proc-macro2-0.4
ExclusiveArch: %{rust_arches}
- rust-proc-maps
ExclusiveArch: %{rust_arches}
- rust-proc-mounts
ExclusiveArch: %{rust_arches}
- rust-proc-quote-impl
ExclusiveArch: %{rust_arches}
- rust-process_control
ExclusiveArch: %{rust_arches}
- rust-process_path
ExclusiveArch: %{rust_arches}
- rust-procfs
ExclusiveArch: %{rust_arches}
- rust-procfs0.9
ExclusiveArch: %{rust_arches}
- rust-procs
ExclusiveArch: %{rust_arches}
- rust-progress-streams
ExclusiveArch: %{rust_arches}
- rust-prometheus
ExclusiveArch: %{rust_arches}
- rust-proptest
ExclusiveArch: %{rust_arches}
- rust-proptest-derive
ExclusiveArch: %{rust_arches}
- rust-proptest0.10
ExclusiveArch: %{rust_arches}
- rust-prost
ExclusiveArch: %{rust_arches}
- rust-prost-build
ExclusiveArch: %{rust_arches}
- rust-prost-derive
ExclusiveArch: %{rust_arches}
- rust-prost-derive0.8
ExclusiveArch: %{rust_arches}
- rust-prost-types
ExclusiveArch: %{rust_arches}
- rust-prost0.8
ExclusiveArch: %{rust_arches}
- rust-protobuf
ExclusiveArch: %{rust_arches}
- rust-protobuf-codegen
ExclusiveArch: %{rust_arches}
- rust-protobuf-codegen-pure
ExclusiveArch: %{rust_arches}
- rust-protoc
ExclusiveArch: %{rust_arches}
- rust-protoc-rust
ExclusiveArch: %{rust_arches}
- rust-psa-crypto
ExclusiveArch: %{rust_arches}
- rust-psa-crypto-sys
ExclusiveArch: %{rust_arches}
- rust-psl-types
ExclusiveArch: %{rust_arches}
- rust-psm
ExclusiveArch: %{rust_arches}
- rust-ptr_meta
ExclusiveArch: %{rust_arches}
- rust-ptr_meta_derive
ExclusiveArch: %{rust_arches}
- rust-publicsuffix
ExclusiveArch: %{rust_arches}
- rust-publicsuffix1
ExclusiveArch: %{rust_arches}
- rust-pulldown-cmark
ExclusiveArch: %{rust_arches}
- rust-pulse
ExclusiveArch: %{rust_arches}
- rust-pure-rust-locales
ExclusiveArch: %{rust_arches}
- rust-pwd
ExclusiveArch: %{rust_arches}
- rust-pyo3
ExclusiveArch: %{rust_arches}
- rust-pyo3-build-config
ExclusiveArch: %{rust_arches}
- rust-pyo3-macros
ExclusiveArch: %{rust_arches}
- rust-pyo3-macros-backend
ExclusiveArch: %{rust_arches}
- rust-python-launcher
ExclusiveArch: %{rust_arches}
- rust-python3-sys
ExclusiveArch: %{rust_arches}
- rust-qr2term
ExclusiveArch: %{rust_arches}
- rust-qrcode
ExclusiveArch: %{rust_arches}
- rust-qstring
ExclusiveArch: %{rust_arches}
- rust-quantiles
ExclusiveArch: %{rust_arches}
- rust-quick-error
ExclusiveArch: %{rust_arches}
- rust-quick-error1
ExclusiveArch: %{rust_arches}
- rust-quick-xml
ExclusiveArch: %{rust_arches}
- rust-quick-xml0.22
ExclusiveArch: %{rust_arches}
- rust-quickcheck
ExclusiveArch: %{rust_arches}
- rust-quickcheck0.6
ExclusiveArch: %{rust_arches}
- rust-quickcheck0.9
ExclusiveArch: %{rust_arches}
- rust-quickcheck_macros
ExclusiveArch: %{rust_arches}
- rust-quickersort
ExclusiveArch: %{rust_arches}
- rust-quicli
ExclusiveArch: %{rust_arches}
- rust-quote
ExclusiveArch: %{rust_arches}
- rust-quote0.3
ExclusiveArch: %{rust_arches}
- rust-quote0.6
ExclusiveArch: %{rust_arches}
- rust-quoted_printable
ExclusiveArch: %{rust_arches}
- rust-r2d2
ExclusiveArch: %{rust_arches}
- rust-radium
ExclusiveArch: %{rust_arches}
- rust-radix_trie
ExclusiveArch: %{rust_arches}
- rust-rand
ExclusiveArch: %{rust_arches}
- rust-rand0.4
ExclusiveArch: %{rust_arches}
- rust-rand0.5
ExclusiveArch: %{rust_arches}
- rust-rand0.6
ExclusiveArch: %{rust_arches}
- rust-rand0.7
ExclusiveArch: %{rust_arches}
- rust-rand_chacha
ExclusiveArch: %{rust_arches}
- rust-rand_chacha0.1
ExclusiveArch: %{rust_arches}
- rust-rand_chacha0.2
ExclusiveArch: %{rust_arches}
- rust-rand_core
ExclusiveArch: %{rust_arches}
- rust-rand_core0.3
ExclusiveArch: %{rust_arches}
- rust-rand_core0.4
ExclusiveArch: %{rust_arches}
- rust-rand_core0.5
ExclusiveArch: %{rust_arches}
- rust-rand_distr
ExclusiveArch: %{rust_arches}
- rust-rand_hc
ExclusiveArch: %{rust_arches}
- rust-rand_hc0.1
ExclusiveArch: %{rust_arches}
- rust-rand_isaac
ExclusiveArch: %{rust_arches}
- rust-rand_isaac0.1
ExclusiveArch: %{rust_arches}
- rust-rand_jitter
ExclusiveArch: %{rust_arches}
- rust-rand_jitter0.1
ExclusiveArch: %{rust_arches}
- rust-rand_os
ExclusiveArch: %{rust_arches}
- rust-rand_os0.1
ExclusiveArch: %{rust_arches}
- rust-rand_pcg
ExclusiveArch: %{rust_arches}
- rust-rand_pcg0.1
ExclusiveArch: %{rust_arches}
- rust-rand_pcg0.2
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift0.1
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift0.2
ExclusiveArch: %{rust_arches}
- rust-rand_xoshiro
ExclusiveArch: %{rust_arches}
- rust-random
ExclusiveArch: %{rust_arches}
- rust-random-fast-rng
ExclusiveArch: %{rust_arches}
- rust-random-trait
ExclusiveArch: %{rust_arches}
- rust-randomize
ExclusiveArch: %{rust_arches}
- rust-rav1e
ExclusiveArch: %{rust_arches}
- rust-raw-window-handle
ExclusiveArch: %{rust_arches}
- rust-rawpointer
ExclusiveArch: %{rust_arches}
- rust-rawslice
ExclusiveArch: %{rust_arches}
- rust-rayon
ExclusiveArch: %{rust_arches}
- rust-rayon-core
ExclusiveArch: %{rust_arches}
- rust-rbspy
ExclusiveArch: %{rust_arches}
- rust-rbspy-ruby-structs
ExclusiveArch: %{rust_arches}
- rust-rbspy-testdata
ExclusiveArch: %{rust_arches}
- rust-rd-agent
ExclusiveArch: %{rust_arches}
- rust-rd-agent-intf
ExclusiveArch: %{rust_arches}
- rust-rd-hashd
ExclusiveArch: %{rust_arches}
- rust-rd-hashd-intf
ExclusiveArch: %{rust_arches}
- rust-rd-util
ExclusiveArch: %{rust_arches}
- rust-read-process-memory
ExclusiveArch: %{rust_arches}
- rust-read_input
ExclusiveArch: %{rust_arches}
- rust-readwrite
ExclusiveArch: %{rust_arches}
- rust-recycler
ExclusiveArch: %{rust_arches}
- rust-ref-cast
ExclusiveArch: %{rust_arches}
- rust-ref-cast-impl
ExclusiveArch: %{rust_arches}
- rust-regalloc
ExclusiveArch: %{rust_arches}
- rust-regex
ExclusiveArch: %{rust_arches}
- rust-regex-automata
ExclusiveArch: %{rust_arches}
- rust-regex-syntax
ExclusiveArch: %{rust_arches}
- rust-region
ExclusiveArch: %{rust_arches}
- rust-relative-path
ExclusiveArch: %{rust_arches}
- rust-relay
ExclusiveArch: %{rust_arches}
- rust-remoteprocess
ExclusiveArch: %{rust_arches}
- rust-remove_dir_all
ExclusiveArch: %{rust_arches}
- rust-rend
ExclusiveArch: %{rust_arches}
- rust-reqwest
ExclusiveArch: %{rust_arches}
- rust-reqwest0.10
ExclusiveArch: %{rust_arches}
- rust-resctl-bench
ExclusiveArch: %{rust_arches}
- rust-resctl-bench-intf
ExclusiveArch: %{rust_arches}
- rust-resctl-demo
ExclusiveArch: %{rust_arches}
- rust-resize
ExclusiveArch: %{rust_arches}
- rust-resolv-conf
ExclusiveArch: %{rust_arches}
- rust-retry
ExclusiveArch: %{rust_arches}
- rust-rgb
ExclusiveArch: %{rust_arches}
- rust-ring
ExclusiveArch: %{rust_arches}
- rust-ripgrep
ExclusiveArch: %{rust_arches}
- rust-rkyv
ExclusiveArch: %{rust_arches}
- rust-rkyv_derive
ExclusiveArch: %{rust_arches}
- rust-rle-decode-fast
ExclusiveArch: %{rust_arches}
- rust-rmp
ExclusiveArch: %{rust_arches}
- rust-rmp-serde
ExclusiveArch: %{rust_arches}
- rust-rmpv
ExclusiveArch: %{rust_arches}
- rust-roff
ExclusiveArch: %{rust_arches}
- rust-ron
ExclusiveArch: %{rust_arches}
- rust-roxmltree
ExclusiveArch: %{rust_arches}
- rust-rpassword
ExclusiveArch: %{rust_arches}
- rust-rpick
ExclusiveArch: %{rust_arches}
- rust-rsa
ExclusiveArch: %{rust_arches}
- rust-rspec
ExclusiveArch: %{rust_arches}
- rust-rtnetlink
ExclusiveArch: %{rust_arches}
- rust-rusqlite
ExclusiveArch: %{rust_arches}
- rust-rust-embed
ExclusiveArch: %{rust_arches}
- rust-rust-embed-impl
ExclusiveArch: %{rust_arches}
- rust-rust-embed-utils
ExclusiveArch: %{rust_arches}
- rust-rust-ini
ExclusiveArch: %{rust_arches}
- rust-rust-stemmers
ExclusiveArch: %{rust_arches}
- rust-rust_decimal
ExclusiveArch: %{rust_arches}
- rust-rust_hawktracer
ExclusiveArch: %{rust_arches}
- rust-rust_hawktracer_normal_macro
ExclusiveArch: %{rust_arches}
- rust-rust_hawktracer_proc_macro
ExclusiveArch: %{rust_arches}
- rust-rust_hawktracer_sys
ExclusiveArch: %{rust_arches}
- rust-rustbus
ExclusiveArch: %{rust_arches}
- rust-rustbus_derive
ExclusiveArch: %{rust_arches}
- rust-rustc-demangle
ExclusiveArch: %{rust_arches}
- rust-rustc-hash
ExclusiveArch: %{rust_arches}
- rust-rustc-serialize
ExclusiveArch: %{rust_arches}
- rust-rustc-test
ExclusiveArch: %{rust_arches}
- rust-rustc_tools_util
ExclusiveArch: %{rust_arches}
- rust-rustc_version
ExclusiveArch: %{rust_arches}
- rust-rustc_version0.3
ExclusiveArch: %{rust_arches}
- rust-rustcat
ExclusiveArch: %{rust_arches}
- rust-rustdoc-stripper
ExclusiveArch: %{rust_arches}
- rust-rustfilt
ExclusiveArch: %{rust_arches}
- rust-rustfix
ExclusiveArch: %{rust_arches}
- rust-rustix
ExclusiveArch: %{rust_arches}
- rust-rustls
ExclusiveArch: %{rust_arches}
- rust-rustls-native-certs
ExclusiveArch: %{rust_arches}
- rust-rustls-pemfile
ExclusiveArch: %{rust_arches}
- rust-rustversion
ExclusiveArch: %{rust_arches}
- rust-rusty-fork
ExclusiveArch: %{rust_arches}
- rust-rustyline
ExclusiveArch: %{rust_arches}
- rust-rustyline-derive
ExclusiveArch: %{rust_arches}
- rust-ryu
ExclusiveArch: %{rust_arches}
- rust-safe-transmute
ExclusiveArch: %{rust_arches}
- rust-safe_arch
ExclusiveArch: %{rust_arches}
- rust-safemem
ExclusiveArch: %{rust_arches}
- rust-salsa20
ExclusiveArch: %{rust_arches}
- rust-same-file
ExclusiveArch: %{rust_arches}
- rust-sass-rs
ExclusiveArch: %{rust_arches}
- rust-sass-sys
ExclusiveArch: %{rust_arches}
- rust-scan_fmt
ExclusiveArch: %{rust_arches}
- rust-scheduled-thread-pool
ExclusiveArch: %{rust_arches}
- rust-scoped-tls
ExclusiveArch: %{rust_arches}
- rust-scoped-tls-hkt
ExclusiveArch: %{rust_arches}
- rust-scoped_threadpool
ExclusiveArch: %{rust_arches}
- rust-scopeguard
ExclusiveArch: %{rust_arches}
- rust-scopetime
ExclusiveArch: %{rust_arches}
- rust-scratch
ExclusiveArch: %{rust_arches}
- rust-scroll
ExclusiveArch: %{rust_arches}
- rust-scroll_derive
ExclusiveArch: %{rust_arches}
- rust-scrypt
ExclusiveArch: %{rust_arches}
- rust-sct
ExclusiveArch: %{rust_arches}
- rust-sd
ExclusiveArch: %{rust_arches}
- rust-sd-notify
ExclusiveArch: %{rust_arches}
- rust-seahash
ExclusiveArch: %{rust_arches}
- rust-seahash3
ExclusiveArch: %{rust_arches}
- rust-secrecy
ExclusiveArch: %{rust_arches}
- rust-secret-service
ExclusiveArch: %{rust_arches}
- rust-self_cell
ExclusiveArch: %{rust_arches}
- rust-semver
ExclusiveArch: %{rust_arches}
- rust-semver-parser
ExclusiveArch: %{rust_arches}
- rust-semver-parser0.9
ExclusiveArch: %{rust_arches}
- rust-semver0.11
ExclusiveArch: %{rust_arches}
- rust-sequoia-autocrypt
ExclusiveArch: %{rust_arches}
- rust-sequoia-ipc
ExclusiveArch: %{rust_arches}
- rust-sequoia-keyring-linter
ExclusiveArch: %{rust_arches}
- rust-sequoia-net
ExclusiveArch: %{rust_arches}
- rust-sequoia-octopus-librnp
ExclusiveArch: %{rust_arches}
- rust-sequoia-openpgp
ExclusiveArch: %{rust_arches}
- rust-sequoia-openpgp-mt
ExclusiveArch: %{rust_arches}
- rust-sequoia-sop
ExclusiveArch: %{rust_arches}
- rust-sequoia-sq
ExclusiveArch: %{rust_arches}
- rust-sequoia-sqv
ExclusiveArch: %{rust_arches}
- rust-serde
ExclusiveArch: %{rust_arches}
- rust-serde-big-array
ExclusiveArch: %{rust_arches}
- rust-serde-pickle
ExclusiveArch: %{rust_arches}
- rust-serde-value
ExclusiveArch: %{rust_arches}
- rust-serde-xml-rs
ExclusiveArch: %{rust_arches}
- rust-serde_bser
ExclusiveArch: %{rust_arches}
- rust-serde_bytes
ExclusiveArch: %{rust_arches}
- rust-serde_cbor
ExclusiveArch: %{rust_arches}
- rust-serde_derive
ExclusiveArch: %{rust_arches}
- rust-serde_fmt
ExclusiveArch: %{rust_arches}
- rust-serde_ignored
ExclusiveArch: %{rust_arches}
- rust-serde_json
ExclusiveArch: %{rust_arches}
- rust-serde_qs
ExclusiveArch: %{rust_arches}
- rust-serde_repr
ExclusiveArch: %{rust_arches}
- rust-serde_stacker
ExclusiveArch: %{rust_arches}
- rust-serde_test
ExclusiveArch: %{rust_arches}
- rust-serde_url_params
ExclusiveArch: %{rust_arches}
- rust-serde_urlencoded
ExclusiveArch: %{rust_arches}
- rust-serde_with
ExclusiveArch: %{rust_arches}
- rust-serde_with_macros
ExclusiveArch: %{rust_arches}
- rust-serde_yaml
ExclusiveArch: %{rust_arches}
- rust-serial-core
ExclusiveArch: %{rust_arches}
- rust-serial_test
ExclusiveArch: %{rust_arches}
- rust-serial_test0.5
ExclusiveArch: %{rust_arches}
- rust-serial_test_derive
ExclusiveArch: %{rust_arches}
- rust-serial_test_derive0.5
ExclusiveArch: %{rust_arches}
- rust-servo-fontconfig
ExclusiveArch: %{rust_arches}
- rust-servo-fontconfig-sys
ExclusiveArch: %{rust_arches}
- rust-sev
ExclusiveArch: %{rust_arches}
- rust-sevctl
ExclusiveArch: x86_64
- rust-sha-1
ExclusiveArch: %{rust_arches}
- rust-sha-1_0.9
ExclusiveArch: %{rust_arches}
- rust-sha1
ExclusiveArch: %{rust_arches}
- rust-sha1_0.6
ExclusiveArch: %{rust_arches}
- rust-sha1_smol
ExclusiveArch: %{rust_arches}
- rust-sha1collisiondetection
ExclusiveArch: %{rust_arches}
- rust-sha2
ExclusiveArch: %{rust_arches}
- rust-sha2_0.9
ExclusiveArch: %{rust_arches}
- rust-sha3
ExclusiveArch: %{rust_arches}
- rust-sha3_0.9
ExclusiveArch: %{rust_arches}
- rust-shadow-rs
ExclusiveArch: %{rust_arches}
- rust-sharded-slab
ExclusiveArch: %{rust_arches}
- rust-shared_child
ExclusiveArch: %{rust_arches}
- rust-shared_library
ExclusiveArch: %{rust_arches}
- rust-shell-escape
ExclusiveArch: %{rust_arches}
- rust-shell-words
ExclusiveArch: %{rust_arches}
- rust-shellexpand
ExclusiveArch: %{rust_arches}
- rust-shellwords
ExclusiveArch: %{rust_arches}
- rust-shlex
ExclusiveArch: %{rust_arches}
- rust-signal
ExclusiveArch: %{rust_arches}
- rust-signal-hook
ExclusiveArch: %{rust_arches}
- rust-signal-hook-mio
ExclusiveArch: %{rust_arches}
- rust-signal-hook-registry
ExclusiveArch: %{rust_arches}
- rust-signal-hook0.1
ExclusiveArch: %{rust_arches}
- rust-silver
ExclusiveArch: %{rust_arches}
- rust-simba
ExclusiveArch: %{rust_arches}
- rust-simd_helpers
ExclusiveArch: %{rust_arches}
- rust-simdutf8
ExclusiveArch: %{rust_arches}
- rust-similar
ExclusiveArch: %{rust_arches}
- rust-similar-asserts
ExclusiveArch: %{rust_arches}
- rust-simple-error
ExclusiveArch: %{rust_arches}
- rust-simple_asn1
ExclusiveArch: %{rust_arches}
- rust-simple_logger
ExclusiveArch: %{rust_arches}
- rust-simplelog
ExclusiveArch: %{rust_arches}
- rust-siphasher
ExclusiveArch: %{rust_arches}
- rust-size
ExclusiveArch: %{rust_arches}
- rust-sized-chunks
ExclusiveArch: %{rust_arches}
- rust-skeptic
ExclusiveArch: %{rust_arches}
- rust-skim
ExclusiveArch: %{rust_arches}
- rust-slab
ExclusiveArch: %{rust_arches}
- rust-slice-deque
ExclusiveArch: %{rust_arches}
- rust-slog
ExclusiveArch: %{rust_arches}
- rust-slog-async
ExclusiveArch: %{rust_arches}
- rust-slog-scope
ExclusiveArch: %{rust_arches}
- rust-slog-term
ExclusiveArch: %{rust_arches}
- rust-slotmap
ExclusiveArch: %{rust_arches}
- rust-slug
ExclusiveArch: %{rust_arches}
- rust-sluice
ExclusiveArch: %{rust_arches}
- rust-smallbitvec
ExclusiveArch: %{rust_arches}
- rust-smallstr
ExclusiveArch: %{rust_arches}
- rust-smallvec
ExclusiveArch: %{rust_arches}
- rust-smart-default
ExclusiveArch: %{rust_arches}
- rust-smawk
ExclusiveArch: %{rust_arches}
- rust-smithay-client-toolkit
ExclusiveArch: %{rust_arches}
- rust-smithay-clipboard
ExclusiveArch: %{rust_arches}
- rust-smol_str
ExclusiveArch: %{rust_arches}
- rust-snafu
ExclusiveArch: %{rust_arches}
- rust-snafu-derive
ExclusiveArch: %{rust_arches}
- rust-snake_case
ExclusiveArch: %{rust_arches}
- rust-socket2
ExclusiveArch: %{rust_arches}
- rust-socket2_0.3
ExclusiveArch: %{rust_arches}
- rust-sop
ExclusiveArch: %{rust_arches}
- rust-spin
ExclusiveArch: %{rust_arches}
- rust-spin0.5
ExclusiveArch: %{rust_arches}
- rust-spin_on
ExclusiveArch: %{rust_arches}
- rust-spinning_top
ExclusiveArch: %{rust_arches}
- rust-spki
ExclusiveArch: %{rust_arches}
- rust-spmc
ExclusiveArch: %{rust_arches}
- rust-ssh-key-dir
ExclusiveArch: %{rust_arches}
- rust-stable_deref_trait
ExclusiveArch: %{rust_arches}
- rust-stacker
ExclusiveArch: %{rust_arches}
- rust-standback
ExclusiveArch: %{rust_arches}
- rust-starship
ExclusiveArch: %{rust_arches}
- rust-starship-battery
ExclusiveArch: %{rust_arches}
- rust-starship_module_config_derive
ExclusiveArch: %{rust_arches}
- rust-static_assertions
ExclusiveArch: %{rust_arches}
- rust-statistical
ExclusiveArch: %{rust_arches}
- rust-statrs
ExclusiveArch: %{rust_arches}
- rust-stb_truetype
ExclusiveArch: %{rust_arches}
- rust-stderrlog
ExclusiveArch: %{rust_arches}
- rust-stfu8
ExclusiveArch: %{rust_arches}
- rust-str_stack
ExclusiveArch: %{rust_arches}
- rust-stratisd_proc_macros
ExclusiveArch: %{rust_arches}
- rust-streaming-stats
ExclusiveArch: %{rust_arches}
- rust-streebog
ExclusiveArch: %{rust_arches}
- rust-streebog0.9
ExclusiveArch: %{rust_arches}
- rust-strict
ExclusiveArch: %{rust_arches}
- rust-string
ExclusiveArch: %{rust_arches}
- rust-string_cache
ExclusiveArch: %{rust_arches}
- rust-string_cache_codegen
ExclusiveArch: %{rust_arches}
- rust-string_cache_shared
ExclusiveArch: %{rust_arches}
- rust-strings
ExclusiveArch: %{rust_arches}
- rust-strip-ansi-escapes
ExclusiveArch: %{rust_arches}
- rust-strsim
ExclusiveArch: %{rust_arches}
- rust-structopt
ExclusiveArch: %{rust_arches}
- rust-structopt-derive
ExclusiveArch: %{rust_arches}
- rust-structopt-derive0.2
ExclusiveArch: %{rust_arches}
- rust-structopt0.2
ExclusiveArch: %{rust_arches}
- rust-strum
ExclusiveArch: %{rust_arches}
- rust-strum0.21
ExclusiveArch: %{rust_arches}
- rust-strum_macros
ExclusiveArch: %{rust_arches}
- rust-strum_macros0.21
ExclusiveArch: %{rust_arches}
- rust-subprocess
ExclusiveArch: %{rust_arches}
- rust-subtle
ExclusiveArch: %{rust_arches}
- rust-sudo_plugin
ExclusiveArch: %{rust_arches}
- rust-sudo_plugin-sys
ExclusiveArch: %{rust_arches}
- rust-supports-color
ExclusiveArch: %{rust_arches}
- rust-supports-hyperlinks
ExclusiveArch: %{rust_arches}
- rust-supports-unicode
ExclusiveArch: %{rust_arches}
- rust-sval
ExclusiveArch: %{rust_arches}
- rust-sval_derive
ExclusiveArch: %{rust_arches}
- rust-sval_json
ExclusiveArch: %{rust_arches}
- rust-svg
ExclusiveArch: %{rust_arches}
- rust-svg_metadata
ExclusiveArch: %{rust_arches}
- rust-svgtypes
ExclusiveArch: %{rust_arches}
- rust-sxd-document
ExclusiveArch: %{rust_arches}
- rust-syn
ExclusiveArch: %{rust_arches}
- rust-syn0.15
ExclusiveArch: %{rust_arches}
- rust-synom
ExclusiveArch: %{rust_arches}
- rust-synstructure
ExclusiveArch: %{rust_arches}
- rust-syntect
ExclusiveArch: %{rust_arches}
- rust-syntect4
ExclusiveArch: %{rust_arches}
- rust-sys-info
ExclusiveArch: %{rust_arches}
- rust-sys-locale
ExclusiveArch: %{rust_arches}
- rust-sysctl
ExclusiveArch: %{rust_arches}
- rust-sysinfo
ExclusiveArch: %{rust_arches}
- rust-sysinfo0.19
ExclusiveArch: %{rust_arches}
- rust-syslog
ExclusiveArch: %{rust_arches}
- rust-system-deps
ExclusiveArch: %{rust_arches}
- rust-system-interface
ExclusiveArch: %{rust_arches}
- rust-system76_ectool
ExclusiveArch: %{rust_arches}
- rust-tabular
ExclusiveArch: %{rust_arches}
- rust-tabwriter
ExclusiveArch: %{rust_arches}
- rust-take
ExclusiveArch: %{rust_arches}
- rust-take_mut
ExclusiveArch: %{rust_arches}
- rust-tap
ExclusiveArch: %{rust_arches}
- rust-tar
ExclusiveArch: %{rust_arches}
- rust-target
ExclusiveArch: %{rust_arches}
- rust-target-lexicon
ExclusiveArch: %{rust_arches}
- rust-tealdeer
ExclusiveArch: %{rust_arches}
- rust-teloxide
ExclusiveArch: %{rust_arches}
- rust-teloxide-macros
ExclusiveArch: %{rust_arches}
- rust-temp_testdir
ExclusiveArch: %{rust_arches}
- rust-tempdir
ExclusiveArch: %{rust_arches}
- rust-tempfile
ExclusiveArch: %{rust_arches}
- rust-temporary
ExclusiveArch: %{rust_arches}
- rust-temptree
ExclusiveArch: %{rust_arches}
- rust-tendril
ExclusiveArch: %{rust_arches}
- rust-tera
ExclusiveArch: %{rust_arches}
- rust-term
ExclusiveArch: %{rust_arches}
- rust-term0.6
ExclusiveArch: %{rust_arches}
- rust-term_grid
ExclusiveArch: %{rust_arches}
- rust-term_size
ExclusiveArch: %{rust_arches}
- rust-termbg
ExclusiveArch: %{rust_arches}
- rust-termcolor
ExclusiveArch: %{rust_arches}
- rust-terminal_size
ExclusiveArch: %{rust_arches}
- rust-terminfo
ExclusiveArch: %{rust_arches}
- rust-termion
ExclusiveArch: %{rust_arches}
- rust-termios
ExclusiveArch: %{rust_arches}
- rust-termwiz
ExclusiveArch: %{rust_arches}
- rust-test-assembler
ExclusiveArch: %{rust_arches}
- rust-test-case
ExclusiveArch: %{rust_arches}
- rust-tester
ExclusiveArch: %{rust_arches}
- rust-testing_logger
ExclusiveArch: %{rust_arches}
- rust-textwrap
ExclusiveArch: %{rust_arches}
- rust-textwrap0.11
ExclusiveArch: %{rust_arches}
- rust-textwrap0.14
ExclusiveArch: %{rust_arches}
- rust-thiserror
ExclusiveArch: %{rust_arches}
- rust-thiserror-impl
ExclusiveArch: %{rust_arches}
- rust-thread-id
ExclusiveArch: %{rust_arches}
- rust-thread-tree
ExclusiveArch: %{rust_arches}
- rust-thread_local
ExclusiveArch: %{rust_arches}
- rust-threadpool
ExclusiveArch: %{rust_arches}
- rust-tiff
ExclusiveArch: %{rust_arches}
- rust-tiger
ExclusiveArch: %{rust_arches}
- rust-time
ExclusiveArch: %{rust_arches}
- rust-time-macros
ExclusiveArch: %{rust_arches}
- rust-time-macros-impl
ExclusiveArch: %{rust_arches}
- rust-time-macros0.1
ExclusiveArch: %{rust_arches}
- rust-time0.1
ExclusiveArch: %{rust_arches}
- rust-time0.2
ExclusiveArch: %{rust_arches}
- rust-timebomb
ExclusiveArch: %{rust_arches}
- rust-timer
ExclusiveArch: %{rust_arches}
- rust-timerfd
ExclusiveArch: %{rust_arches}
- rust-tiny-keccak
ExclusiveArch: %{rust_arches}
- rust-tiny_http
ExclusiveArch: %{rust_arches}
- rust-tiny_http0.6
ExclusiveArch: %{rust_arches}
- rust-tinystr
ExclusiveArch: %{rust_arches}
- rust-tinytemplate
ExclusiveArch: %{rust_arches}
- rust-tinyvec
ExclusiveArch: %{rust_arches}
- rust-tinyvec_macros
ExclusiveArch: %{rust_arches}
- rust-tokei
ExclusiveArch: %{rust_arches}
- rust-tokio
ExclusiveArch: %{rust_arches}
- rust-tokio-codec
ExclusiveArch: %{rust_arches}
- rust-tokio-compat
ExclusiveArch: %{rust_arches}
- rust-tokio-core
ExclusiveArch: %{rust_arches}
- rust-tokio-current-thread
ExclusiveArch: %{rust_arches}
- rust-tokio-executor
ExclusiveArch: %{rust_arches}
- rust-tokio-fs
ExclusiveArch: %{rust_arches}
- rust-tokio-io
ExclusiveArch: %{rust_arches}
- rust-tokio-macros
ExclusiveArch: %{rust_arches}
- rust-tokio-macros0.2
ExclusiveArch: %{rust_arches}
- rust-tokio-mock-task
ExclusiveArch: %{rust_arches}
- rust-tokio-native-tls
ExclusiveArch: %{rust_arches}
- rust-tokio-openssl
ExclusiveArch: %{rust_arches}
- rust-tokio-openssl0.4
ExclusiveArch: %{rust_arches}
- rust-tokio-reactor
ExclusiveArch: %{rust_arches}
- rust-tokio-rustls
ExclusiveArch: %{rust_arches}
- rust-tokio-socks
ExclusiveArch: %{rust_arches}
- rust-tokio-socks0.3
ExclusiveArch: %{rust_arches}
- rust-tokio-stream
ExclusiveArch: %{rust_arches}
- rust-tokio-sync
ExclusiveArch: %{rust_arches}
- rust-tokio-tcp
ExclusiveArch: %{rust_arches}
- rust-tokio-test
ExclusiveArch: %{rust_arches}
- rust-tokio-threadpool
ExclusiveArch: %{rust_arches}
- rust-tokio-timer
ExclusiveArch: %{rust_arches}
- rust-tokio-tls
ExclusiveArch: %{rust_arches}
- rust-tokio-tls0.2
ExclusiveArch: %{rust_arches}
- rust-tokio-tungstenite
ExclusiveArch: %{rust_arches}
- rust-tokio-udp
ExclusiveArch: %{rust_arches}
- rust-tokio-uds
ExclusiveArch: %{rust_arches}
- rust-tokio-util
ExclusiveArch: %{rust_arches}
- rust-tokio-util0.3
ExclusiveArch: %{rust_arches}
- rust-tokio-util0.6
ExclusiveArch: %{rust_arches}
- rust-tokio0.1
ExclusiveArch: %{rust_arches}
- rust-tokio0.2
ExclusiveArch: %{rust_arches}
- rust-toml
ExclusiveArch: %{rust_arches}
- rust-toml0.4
ExclusiveArch: %{rust_arches}
- rust-toml_edit
ExclusiveArch: %{rust_arches}
- rust-totp-lite
ExclusiveArch: %{rust_arches}
- rust-tower-layer
ExclusiveArch: %{rust_arches}
- rust-tower-service
ExclusiveArch: %{rust_arches}
- rust-tower-test
ExclusiveArch: %{rust_arches}
- rust-tower-util
ExclusiveArch: %{rust_arches}
- rust-tpm2-policy
ExclusiveArch: %{rust_arches}
- rust-tracing
ExclusiveArch: %{rust_arches}
- rust-tracing-attributes
ExclusiveArch: %{rust_arches}
- rust-tracing-core
ExclusiveArch: %{rust_arches}
- rust-tracing-futures
ExclusiveArch: %{rust_arches}
- rust-tracing-log
ExclusiveArch: %{rust_arches}
- rust-traitobject
ExclusiveArch: %{rust_arches}
- rust-trash
ExclusiveArch: %{rust_arches}
- rust-tree-sitter
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-cli
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-config
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-highlight
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-loader
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-tags
ExclusiveArch: %{rust_arches}
- rust-treebitmap
ExclusiveArch: %{rust_arches}
- rust-treeline
ExclusiveArch: %{rust_arches}
- rust-trust-dns-native-tls
ExclusiveArch: %{rust_arches}
- rust-trust-dns-native-tls0.19
ExclusiveArch: %{rust_arches}
- rust-trust-dns-openssl
ExclusiveArch: %{rust_arches}
- rust-trust-dns-openssl0.19
ExclusiveArch: %{rust_arches}
- rust-trust-dns-proto
ExclusiveArch: %{rust_arches}
- rust-trust-dns-proto0.19
ExclusiveArch: %{rust_arches}
- rust-trust-dns-proto0.20
ExclusiveArch: %{rust_arches}
- rust-trust-dns-resolver
ExclusiveArch: %{rust_arches}
- rust-trust-dns-resolver0.19
ExclusiveArch: %{rust_arches}
- rust-trust-dns-resolver0.20
ExclusiveArch: %{rust_arches}
- rust-try-lock
ExclusiveArch: %{rust_arches}
- rust-trybuild
ExclusiveArch: %{rust_arches}
- rust-tss-esapi
ExclusiveArch: %{rust_arches}
- rust-tss-esapi-sys
ExclusiveArch: %{rust_arches}
- rust-ttf-parser
ExclusiveArch: %{rust_arches}
- rust-ttf-parser0.12
ExclusiveArch: %{rust_arches}
- rust-tui
ExclusiveArch: %{rust_arches}
- rust-tui-react
ExclusiveArch: %{rust_arches}
- rust-tui0.11
ExclusiveArch: %{rust_arches}
- rust-tui0.9
ExclusiveArch: %{rust_arches}
- rust-tuikit
ExclusiveArch: %{rust_arches}
- rust-tungstenite
ExclusiveArch: %{rust_arches}
- rust-twoway
ExclusiveArch: %{rust_arches}
- rust-twox-hash
ExclusiveArch: %{rust_arches}
- rust-type-map
ExclusiveArch: %{rust_arches}
- rust-typeable
ExclusiveArch: %{rust_arches}
- rust-typed-arena
ExclusiveArch: %{rust_arches}
- rust-typed-arena1
ExclusiveArch: %{rust_arches}
- rust-typed-builder
ExclusiveArch: %{rust_arches}
- rust-typemap
ExclusiveArch: %{rust_arches}
- rust-typenum
ExclusiveArch: %{rust_arches}
- rust-typetag
ExclusiveArch: %{rust_arches}
- rust-typetag-impl
ExclusiveArch: %{rust_arches}
- rust-tzfile
ExclusiveArch: %{rust_arches}
- rust-ubyte
ExclusiveArch: %{rust_arches}
- rust-ucd-parse
ExclusiveArch: %{rust_arches}
- rust-ucd-trie
ExclusiveArch: %{rust_arches}
- rust-ucd-util
ExclusiveArch: %{rust_arches}
- rust-uefi-run
ExclusiveArch: %{rust_arches}
- rust-umask
ExclusiveArch: %{rust_arches}
- rust-uncased
ExclusiveArch: %{rust_arches}
- rust-unchecked-index
ExclusiveArch: %{rust_arches}
- rust-unescape
ExclusiveArch: %{rust_arches}
- rust-unic-char-property
ExclusiveArch: %{rust_arches}
- rust-unic-char-range
ExclusiveArch: %{rust_arches}
- rust-unic-common
ExclusiveArch: %{rust_arches}
- rust-unic-langid
ExclusiveArch: %{rust_arches}
- rust-unic-langid-impl
ExclusiveArch: %{rust_arches}
- rust-unic-langid-macros
ExclusiveArch: %{rust_arches}
- rust-unic-langid-macros-impl
ExclusiveArch: %{rust_arches}
- rust-unic-locale
ExclusiveArch: %{rust_arches}
- rust-unic-locale-impl
ExclusiveArch: %{rust_arches}
- rust-unic-locale-macros
ExclusiveArch: %{rust_arches}
- rust-unic-locale-macros-impl
ExclusiveArch: %{rust_arches}
- rust-unic-segment
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-category
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-common
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-segment
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-version
ExclusiveArch: %{rust_arches}
- rust-unicase
ExclusiveArch: %{rust_arches}
- rust-unicase1
ExclusiveArch: %{rust_arches}
- rust-unicode-bidi
ExclusiveArch: %{rust_arches}
- rust-unicode-ident
ExclusiveArch: %{rust_arches}
- rust-unicode-linebreak
ExclusiveArch: %{rust_arches}
- rust-unicode-normalization
ExclusiveArch: %{rust_arches}
- rust-unicode-segmentation
ExclusiveArch: %{rust_arches}
- rust-unicode-truncate
ExclusiveArch: %{rust_arches}
- rust-unicode-width
ExclusiveArch: %{rust_arches}
- rust-unicode-xid
ExclusiveArch: %{rust_arches}
- rust-unicode-xid0.1
ExclusiveArch: %{rust_arches}
- rust-unicode_categories
ExclusiveArch: %{rust_arches}
- rust-unindent
ExclusiveArch: %{rust_arches}
- rust-universal-hash
ExclusiveArch: %{rust_arches}
- rust-unix_socket
ExclusiveArch: %{rust_arches}
- rust-unreachable
ExclusiveArch: %{rust_arches}
- rust-unsafe-any
ExclusiveArch: %{rust_arches}
- rust-untrusted
ExclusiveArch: %{rust_arches}
- rust-uom
ExclusiveArch: %{rust_arches}
- rust-url
ExclusiveArch: %{rust_arches}
- rust-url1
ExclusiveArch: %{rust_arches}
- rust-url_serde
ExclusiveArch: %{rust_arches}
- rust-urlencoding
ExclusiveArch: %{rust_arches}
- rust-urlocator
ExclusiveArch: %{rust_arches}
- rust-urlshortener
ExclusiveArch: %{rust_arches}
- rust-userfaultfd
ExclusiveArch: %{rust_arches}
- rust-userfaultfd-sys
ExclusiveArch: %{rust_arches}
- rust-users
ExclusiveArch: %{rust_arches}
- rust-users0.10
ExclusiveArch: %{rust_arches}
- rust-utf-8
ExclusiveArch: %{rust_arches}
- rust-utf8-ranges
ExclusiveArch: %{rust_arches}
- rust-utf8-width
ExclusiveArch: %{rust_arches}
- rust-utf8parse
ExclusiveArch: %{rust_arches}
- rust-uucore_procs
ExclusiveArch: %{rust_arches}
- rust-uuid
ExclusiveArch: %{rust_arches}
- rust-uuid0.7
ExclusiveArch: %{rust_arches}
- rust-uuid0.8
ExclusiveArch: %{rust_arches}
- rust-v_frame
ExclusiveArch: %{rust_arches}
- rust-value-bag
ExclusiveArch: %{rust_arches}
- rust-varbincode
ExclusiveArch: %{rust_arches}
- rust-varlink
ExclusiveArch: %{rust_arches}
- rust-varlink-cli
ExclusiveArch: %{rust_arches}
- rust-varlink_generator
ExclusiveArch: %{rust_arches}
- rust-varlink_parser
ExclusiveArch: %{rust_arches}
- rust-varlink_stdinterfaces
ExclusiveArch: %{rust_arches}
- rust-vcsgraph
ExclusiveArch: %{rust_arches}
- rust-vec_map
ExclusiveArch: %{rust_arches}
- rust-vergen
ExclusiveArch: %{rust_arches}
- rust-vergen3
ExclusiveArch: %{rust_arches}
- rust-version
ExclusiveArch: %{rust_arches}
- rust-version-compare
ExclusiveArch: %{rust_arches}
- rust-version-sync
ExclusiveArch: %{rust_arches}
- rust-version-sync0.8
ExclusiveArch: %{rust_arches}
- rust-version_check
ExclusiveArch: %{rust_arches}
- rust-versions
ExclusiveArch: %{rust_arches}
- rust-vhost
ExclusiveArch: %{rust_arches}
- rust-vhost-user-backend
ExclusiveArch: %{rust_arches}
- rust-virtio-bindings
ExclusiveArch: x86_64 aarch64 ppc64le
- rust-virtio-queue
ExclusiveArch: %{rust_arches}
- rust-vm-memory
ExclusiveArch: %{rust_arches}
- rust-vmm-sys-util
ExclusiveArch: x86_64 aarch64 ppc64le
- rust-vmw_backdoor
ExclusiveArch: %{rust_arches}
- rust-void
ExclusiveArch: %{rust_arches}
- rust-vsprintf
ExclusiveArch: %{rust_arches}
- rust-vte
ExclusiveArch: %{rust_arches}
- rust-vte_generate_state_changes
ExclusiveArch: %{rust_arches}
- rust-vtparse
ExclusiveArch: %{rust_arches}
- rust-wait-timeout
ExclusiveArch: %{rust_arches}
- rust-waker-fn
ExclusiveArch: %{rust_arches}
- rust-walkdir
ExclusiveArch: %{rust_arches}
- rust-want
ExclusiveArch: %{rust_arches}
- rust-warp
ExclusiveArch: %{rust_arches}
- rust-wasm-bindgen
ExclusiveArch: %{rust_arches}
- rust-wasm-bindgen-backend
ExclusiveArch: %{rust_arches}
- rust-wasm-bindgen-macro
ExclusiveArch: %{rust_arches}
- rust-wasm-bindgen-macro-support
ExclusiveArch: %{rust_arches}
- rust-wasm-bindgen-shared
ExclusiveArch: %{rust_arches}
- rust-wasmer_enumset
ExclusiveArch: %{rust_arches}
- rust-wasmer_enumset_derive
ExclusiveArch: %{rust_arches}
- rust-wasmparser
ExclusiveArch: %{rust_arches}
- rust-wasmtime
ExclusiveArch: x86_64 aarch64 s390x
- rust-wasmtime-cache
ExclusiveArch: %{rust_arches}
- rust-wasmtime-cranelift
ExclusiveArch: x86_64 aarch64 s390x
- rust-wasmtime-environ
ExclusiveArch: %{rust_arches}
- rust-wasmtime-fiber
ExclusiveArch: x86_64 aarch64 s390x
- rust-wasmtime-jit
ExclusiveArch: x86_64 aarch64 s390x
- rust-wasmtime-jit-debug
ExclusiveArch: %{rust_arches}
- rust-wasmtime-runtime
ExclusiveArch: x86_64 aarch64 s390x
- rust-wasmtime-types
ExclusiveArch: %{rust_arches}
- rust-wasmtime-wast
ExclusiveArch: x86_64 aarch64 s390x
- rust-wast
ExclusiveArch: %{rust_arches}
- rust-wat
ExclusiveArch: %{rust_arches}
- rust-watchman_client
ExclusiveArch: %{rust_arches}
- rust-wayland-client
ExclusiveArch: %{rust_arches}
- rust-wayland-commons
ExclusiveArch: %{rust_arches}
- rust-wayland-cursor
ExclusiveArch: %{rust_arches}
- rust-wayland-egl
ExclusiveArch: %{rust_arches}
- rust-wayland-protocols
ExclusiveArch: %{rust_arches}
- rust-wayland-scanner
ExclusiveArch: %{rust_arches}
- rust-wayland-server
ExclusiveArch: %{rust_arches}
- rust-wayland-sys
ExclusiveArch: %{rust_arches}
- rust-web-sys
ExclusiveArch: %{rust_arches}
- rust-webbrowser
ExclusiveArch: %{rust_arches}
- rust-webpki
ExclusiveArch: %{rust_arches}
- rust-webpki-roots
ExclusiveArch: %{rust_arches}
- rust-websocket
ExclusiveArch: %{rust_arches}
- rust-websocket-base
ExclusiveArch: %{rust_arches}
- rust-weezl
ExclusiveArch: %{rust_arches}
- rust-which
ExclusiveArch: %{rust_arches}
- rust-wide
ExclusiveArch: %{rust_arches}
- rust-wiggle
ExclusiveArch: x86_64 aarch64 s390x
- rust-wiggle-generate
ExclusiveArch: %{rust_arches}
- rust-wiggle-macro
ExclusiveArch: %{rust_arches}
- rust-wild
ExclusiveArch: %{rust_arches}
- rust-winit
ExclusiveArch: %{rust_arches}
- rust-witx
ExclusiveArch: %{rust_arches}
- rust-ws
ExclusiveArch: %{rust_arches}
- rust-wyz
ExclusiveArch: %{rust_arches}
- rust-x11
ExclusiveArch: %{rust_arches}
- rust-x11-clipboard
ExclusiveArch: %{rust_arches}
- rust-x11-dl
ExclusiveArch: %{rust_arches}
- rust-xattr
ExclusiveArch: %{rust_arches}
- rust-xcb
ExclusiveArch: %{rust_arches}
- rust-xcursor
ExclusiveArch: %{rust_arches}
- rust-xdg
ExclusiveArch: %{rust_arches}
- rust-xi-unicode
ExclusiveArch: %{rust_arches}
- rust-xkbcommon
ExclusiveArch: %{rust_arches}
- rust-xml-rs
ExclusiveArch: %{rust_arches}
- rust-xml5ever
ExclusiveArch: %{rust_arches}
- rust-xmlparser
ExclusiveArch: %{rust_arches}
- rust-xmlwriter
ExclusiveArch: %{rust_arches}
- rust-xxhash-c-sys
ExclusiveArch: %{rust_arches}
- rust-xxhash-rust
ExclusiveArch: %{rust_arches}
- rust-xz2
ExclusiveArch: %{rust_arches}
- rust-y4m
ExclusiveArch: %{rust_arches}
- rust-yaml-rust
ExclusiveArch: %{rust_arches}
- rust-yaml-rust0.3
ExclusiveArch: %{rust_arches}
- rust-yansi
ExclusiveArch: %{rust_arches}
- rust-ybaas
ExclusiveArch: %{rust_arches}
- rust-yubibomb
ExclusiveArch: %{rust_arches}
- rust-zbase32
ExclusiveArch: %{rust_arches}
- rust-zbus
ExclusiveArch: %{rust_arches}
- rust-zbus1
ExclusiveArch: %{rust_arches}
- rust-zbus_macros
ExclusiveArch: %{rust_arches}
- rust-zbus_macros1
ExclusiveArch: %{rust_arches}
- rust-zbus_names
ExclusiveArch: %{rust_arches}
- rust-zeroize
ExclusiveArch: %{rust_arches}
- rust-zeroize_derive
ExclusiveArch: %{rust_arches}
- rust-zincati
ExclusiveArch: %{rust_arches}
- rust-zip
ExclusiveArch: %{rust_arches}
- rust-zmq
ExclusiveArch: %{rust_arches}
- rust-zmq-sys
ExclusiveArch: %{rust_arches}
- rust-zoneinfo_compiled
ExclusiveArch: %{rust_arches}
- rust-zoxide
ExclusiveArch: %{rust_arches}
- rust-zram-generator
ExclusiveArch: %{rust_arches}
- rust-zstd
ExclusiveArch: %{rust_arches}
- rust-zstd-safe
ExclusiveArch: %{rust_arches}
- rust-zstd-sys
ExclusiveArch: %{rust_arches}
- rust-zvariant
ExclusiveArch: %{rust_arches}
- rust-zvariant2
ExclusiveArch: %{rust_arches}
- rust-zvariant_derive
ExclusiveArch: %{rust_arches}
- rust-zvariant_derive2
ExclusiveArch: %{rust_arches}
- s390utils
ExclusiveArch: s390 s390x
- sac
ExclusiveArch: %{java_arches} noarch
- safetyblanket
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- sagemath
ExclusiveArch: aarch64 x86_64
- sat4j
ExclusiveArch: %{java_arches} noarch
- sbcl
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- sbd
ExclusiveArch: i686 x86_64 s390x aarch64 ppc64le
- sblim-cim-client
ExclusiveArch: %{java_arches} noarch
- sblim-cim-client2
ExclusiveArch: %{java_arches} noarch
- sbsigntools
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- scala
ExclusiveArch: %{java_arches} noarch
- scalacheck
ExclusiveArch: %{java_arches} noarch
- scannotation
ExclusiveArch: %{java_arches} noarch
- sdljava
ExclusiveArch: %{java_arches}
- sdsl-lite
ExclusiveArch: %{power64} x86_64 aarch64
- seabios
ExclusiveArch: x86_64
- seadrive-gui
ExclusiveArch: %{qt5_qtwebengine_arches}
- seafile-client
ExclusiveArch: %{qt5_qtwebengine_arches}
- seamonkey
ExclusiveArch: x86_64
- seqan3
ExclusiveArch: %{power64} x86_64 aarch64
- sequence-library
ExclusiveArch: %{java_arches} noarch
- serp
ExclusiveArch: %{java_arches} noarch
- servicelog
ExclusiveArch: ppc %{power64}
- sgabios
ExclusiveArch: %{ix86} x86_64
- shaman
ExclusiveArch: %{java_arches} noarch
- sharpfont
ExclusiveArch: %mono_arches
- sharpziplib
ExclusiveArch: %{mono_arches}
- shim
ExclusiveArch: %{efi}
- shim-unsigned-aarch64
ExclusiveArch: aarch64
- shim-unsigned-x64
ExclusiveArch: x86_64
- sigul
ExclusiveArch: x86_64
- sisu
ExclusiveArch: %{java_arches} noarch
- sisu-mojos
ExclusiveArch: %{java_arches} noarch
- skopeo
ExclusiveArch: %{go_arches}
- skychart
ExclusiveArch: %{fpc_arches}
- slf4j
ExclusiveArch: %{java_arches} noarch
- snakeyaml
ExclusiveArch: %{java_arches} noarch
- snapd
ExclusiveArch: %{?golang_arches}%{!?golang_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x}
- snip
ExclusiveArch: %{java_arches} noarch
- soup-sharp
ExclusiveArch: %{mono_arches}
- sparkleshare
ExclusiveArch: %{mono_arches}
- spec-version-maven-plugin
ExclusiveArch: %{java_arches} noarch
- spicctrl
ExclusiveArch: %{ix86} x86_64
- spice
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- spice-parent
ExclusiveArch: %{java_arches} noarch
- springlobby
ExclusiveArch: %{ix86} x86_64
- sqljet
ExclusiveArch: %{java_arches} noarch
- squeekboard
ExclusiveArch: %{rust_arches}
- startdde
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- statsd
ExclusiveArch: %{nodejs_arches} noarch
- stratis-cli
ExclusiveArch: %{rust_arches} noarch
- stratisd
ExclusiveArch: %{rust_arches}
ExclusiveArch: %{rust_arches}
- string-template-maven-plugin
ExclusiveArch: %{java_arches} noarch
- stringtemplate
ExclusiveArch: %{java_arches} noarch
- stringtemplate4
ExclusiveArch: %{java_arches} noarch
- stripesnoop
ExclusiveArch: %{ix86} x86_64
- supercollider
ExclusiveArch: %{qt5_qtwebengine_arches}
- supermin
ExclusiveArch: %{kernel_arches}
- svnkit
ExclusiveArch: %{java_arches} noarch
- svt-av1
ExclusiveArch: x86_64
- svt-vp9
ExclusiveArch: x86_64
- swift-lang
ExclusiveArch: x86_64 aarch64
- swing-layout
ExclusiveArch: %{java_arches} noarch
- sysbench
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64le s390x
- syslinux
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- system-rules
ExclusiveArch: %{java_arches} noarch
- system76-keyboard-configurator
ExclusiveArch: %{rust_arches}
- t-digest
ExclusiveArch: %{java_arches} noarch
- taggle
ExclusiveArch: %{java_arches} noarch
- taglib-sharp
ExclusiveArch: %{mono_arches}
- tagsoup
ExclusiveArch: %{java_arches} noarch
- tarantool
ExclusiveArch: %{ix86} x86_64
- tboot
ExclusiveArch: %{ix86} x86_64
- tdlib
ExclusiveArch: x86_64 aarch64
- templates_parser
ExclusiveArch: %GPRbuild_arches
- ternimal
ExclusiveArch: %{rust_arches}
- test-interface
ExclusiveArch: %{java_arches} noarch
- testcloud
ExclusiveArch: %{kernel_arches} noarch
- testng
ExclusiveArch: %{java_arches} noarch
- texlive
ExclusiveArch: %{java_arches} noarch
- themonospot-base
ExclusiveArch: %mono_arches
- themonospot-console
ExclusiveArch: %mono_arches
- themonospot-gui-gtk
ExclusiveArch: %mono_arches
- themonospot-plugin-avi
ExclusiveArch: %mono_arches
- themonospot-plugin-mkv
ExclusiveArch: %mono_arches
- thermald
ExclusiveArch: %{ix86} x86_64
- tilix
ExclusiveArch: %{ldc_arches}
- tomboy
ExclusiveArch: %{mono_arches}
- tomcat
ExclusiveArch: %{java_arches} noarch
- tomcat-taglibs-parent
ExclusiveArch: %{java_arches} noarch
- tomcatjss
ExclusiveArch: %{java_arches} noarch
- torbrowser-launcher
ExclusiveArch: %{ix86} x86_64
- treelayout
ExclusiveArch: %{java_arches} noarch
- trilead-ssh2
ExclusiveArch: %{java_arches} noarch
- truth
ExclusiveArch: %{java_arches} noarch
- tuned-profiles-nfv-host-bin
ExclusiveArch: %{ix86} x86_64
- uClibc
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
- ucx
ExclusiveArch: aarch64 ppc64le x86_64
- uglify-js
ExclusiveArch: %{nodejs_arches} noarch
- unetbootin
ExclusiveArch: %{ix86} x86_64
- univocity-parsers
ExclusiveArch: %{java_arches} noarch
- uom-parent
ExclusiveArch: %{java_arches} noarch
- ursa-major
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- usd
ExclusiveArch: aarch64 x86_64
- v8-314
ExclusiveArch: %{ix86} x86_64 %{arm} mips mipsel ppc ppc64
- valgrind
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
- vboot-utils
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- vecmath1.2
ExclusiveArch: %{java_arches} noarch
- velocity
ExclusiveArch: %{java_arches} noarch
- vim-go
ExclusiveArch: %{?golang_arches}%{!?golang_arches:%{ix86} x86_64 %{arm}}
- vim-syntastic
ExclusiveArch: %{java_arches} noarch
- virt-p2v
ExclusiveArch: x86_64
- virt-v2v
ExclusiveArch: x86_64
- virtiofsd
ExclusiveArch: %{rust_arches}
- virtualbox-guest-additions
ExclusiveArch: i686 x86_64
- vkd3d
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- vmaf
ExclusiveArch: x86_64
- vmemcache
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64
- voms-api-java
ExclusiveArch: %{java_arches} noarch
- voms-clients-java
ExclusiveArch: %{java_arches} noarch
- vrq
ExclusiveArch: %{ix86} x86_64
- wangle
ExclusiveArch: x86_64 aarch64 ppc64le
- warsow
ExclusiveArch: %{ix86} x86_64 %{arm}
- warsow-data
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{ix86} x86_64 %{arm}
- wasmedge
ExclusiveArch: x86_64 aarch64
- watchman
ExclusiveArch: x86_64 aarch64 ppc64le
- wdt
ExclusiveArch: x86_64 aarch64 ppc64le
- webkit2-sharp
ExclusiveArch: %mono_arches
- weld-parent
ExclusiveArch: %{java_arches} noarch
- why3
ExclusiveArch: %{java_arches}
- wine
ExclusiveArch: %{ix86} x86_64 aarch64
ExclusiveArch: %{ix86}
- wine-dxvk
ExclusiveArch: %{ix86} x86_64
- winetricks
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- writer2latex
ExclusiveArch: %{java_arches}
- ws-commons-util
ExclusiveArch: %{java_arches} noarch
- wsdl4j
ExclusiveArch: %{java_arches} noarch
- wxMaxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
- x2goclient
ExclusiveArch: x86_64
- xalan-j2
ExclusiveArch: %{java_arches} noarch
- xbean
ExclusiveArch: %{java_arches} noarch
- xe-guest-utilities-latest
ExclusiveArch: %{ix86} x86_64
- xen
ExclusiveArch: x86_64 aarch64
- xerces-j2
ExclusiveArch: %{java_arches} noarch
- xjparse
ExclusiveArch: %{java_arches} noarch
- xml-commons-apis
ExclusiveArch: %{java_arches} noarch
- xml-commons-resolver
ExclusiveArch: %{java_arches} noarch
- xml-maven-plugin
ExclusiveArch: %{java_arches} noarch
- xmlada
ExclusiveArch: %{GPRbuild_arches}
- xmlgraphics-commons
ExclusiveArch: %{java_arches} noarch
- xmlpull
ExclusiveArch: %{java_arches} noarch
- xmlstreambuffer
ExclusiveArch: %{java_arches} noarch
- xmltool
ExclusiveArch: %{java_arches} noarch
- xmlunit
ExclusiveArch: %{java_arches} noarch
- xmpcore
ExclusiveArch: %{java_arches} noarch
- xmvn
ExclusiveArch: %{java_arches} noarch
- xmvn-connector-ivy
ExclusiveArch: %{java_arches} noarch
- xorg-x11-drv-armsoc
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-intel
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-openchrome
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vesa
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vmware
ExclusiveArch: %{ix86} x86_64 ia64
- xsp
ExclusiveArch: %mono_arches
- xstream
ExclusiveArch: %{java_arches} noarch
- xz-java
ExclusiveArch: %{java_arches} noarch
- yarnpkg
ExclusiveArch: %{nodejs_arches} noarch
- yuicompressor
ExclusiveArch: %{java_arches} noarch
- zcfan
ExclusiveArch: x86_64
- zeal
ExclusiveArch: %{qt5_qtwebengine_arches}
- zenon
ExclusiveArch: %{java_arches}
- zeromq-ada
ExclusiveArch: %{GPRbuild_arches}
- zig
ExclusiveArch: %{zig_arches}
- zlib-ada
ExclusiveArch: %{GPRbuild_arches}
- zlib-ng
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64
- zola
ExclusiveArch: %{rust_arches}
1 year, 10 months
Architecture specific change in rpms/grubby.git
by githook-noreply@fedoraproject.org
The package rpms/grubby.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/grubby.git/commit/?id=79765ad0d78...
https://src.fedoraproject.org/cgit/rpms/grubby.git/commit/?id=59ba93105a2....
Change:
+ExcludeArch: %{ix86}
-%ifnarch aarch64 %{arm}
Thanks.
Full change:
============
commit 1faea2de0a46e339913c4e6a1598062d1fffe2e7
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Tue Aug 2 20:09:04 2022 +0000
Handle updating /etc/kernel/cmdline
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby-bls b/grubby-bls
index af0d82d..0571a0b 100755
--- a/grubby-bls
+++ b/grubby-bls
@@ -502,6 +502,16 @@ update_bls_fragment() {
opts="$(echo "$opts" | sed -e 's/\//\\\//g')"
sed -i -e "s/^GRUB_CMDLINE_LINUX.*/GRUB_CMDLINE_LINUX=\\\"${opts}\\\"/" "${grub_etc_default}"
fi
+
+ if [[ -f /etc/kernel/cmdline ]]; then
+ sed -i "s/\(root=[^ ]*\) .*/\1 ${opts}/" /etc/kernel/cmdline
+ else
+ # grub2-mkconfig creates this. Do that now.
+ grub2-mkconfig -o /etc/grub2.cfg
+ fi
+ if [[ ! -f /etc/kernel/cmdline ]]; then
+ echo "No /etc/kernel/cmdline; please report a bug";
+ fi
fi
old_args="$(grub2-editenv "${env}" list | grep kernelopts | sed -e "s/kernelopts=//")"
@@ -528,6 +538,20 @@ update_bls_fragment() {
fi
done
+ if [[ $param = "ALL" && $bootloader = zipl ]] && [[ -n $remove_args || -n $add_args ]]; then
+ if [[ ! -f /etc/kernel/cmdline ]]; then
+ # anaconda could pre-populate this file, but until then, most of
+ # the time we'll just want the most recent one. This is pretty
+ # close to the current almost-correct behavior of falling back to
+ # /proc/cmdline anyhow.
+ echo "$(get_bls_args -1)" > /etc/kernel/cmdline
+ fi
+
+ read old_args < /etc/kernel/cmdline
+ local new_args="$(update_args "${old_args}" "${remove_args}" "${add_args}")"
+ echo "$new_args" > /etc/kernel/cmdline
+ fi
+
update_grubcfg
}
diff --git a/grubby.spec b/grubby.spec
index a44afa7..a6ef7ca 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 63%{?dist}
+Release: 64%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,6 +83,9 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
+* Tue Aug 02 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-64
+- Handle updating /etc/kernel/cmdline
+
* Thu Jul 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 8.40-63
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
commit c8241463d75b15c35b23d3c7f785746cd19cac7a
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jul 21 13:06:10 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/grubby.spec b/grubby.spec
index 995771b..a44afa7 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 62%{?dist}
+Release: 63%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,6 +83,9 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
+* Thu Jul 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 8.40-63
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
+
* Tue Jul 19 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-62
- Clarify that grub files aren't used on s390x in man page
commit 29fb24f2057b0f4a9228f9faef65bb7198756424
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Tue Jul 19 19:26:03 2022 +0000
Clarify that grub files aren't used on s390x in man page
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby.8 b/grubby.8
index 314c4f8..e9a8e7b 100644
--- a/grubby.8
+++ b/grubby.8
@@ -145,7 +145,8 @@ the only items that can be updated is the kernel argument list, which is
modified via the \fB-\-args\fR and \fB-\-remove-args\fR options. If the
\fBALL\fR argument is used the variable \fB GRUB_CMDLINE_LINUX\fR in
\fB/etc/default/grub\fR is updated with the latest kernel argument list,
-unless the \fB-\-no-etc-grub-update\fR option is used.
+unless the \fB-\-no-etc-grub-update\fR option is used or the file does not
+exist (e.g., on s390x).
.TP
\fB-\-zipl\fR
diff --git a/grubby.spec b/grubby.spec
index c2fdb2f..995771b 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 61%{?dist}
+Release: 62%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,6 +83,9 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
+* Tue Jul 19 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-62
+- Clarify that grub files aren't used on s390x in man page
+
* Wed Jun 22 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-61
- Revert previous change
commit 810b5eee5ab449318cc97f3706e0023a273d8a1b
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Wed Jun 22 14:43:48 2022 -0400
Update spec file for previous change
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby.spec b/grubby.spec
index 4938666..c2fdb2f 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 59%{?dist}
+Release: 61%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,6 +83,12 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
+* Wed Jun 22 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-61
+- Revert previous change
+
+* Tue May 31 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-60
+- Additionally write to /etc/kernel/cmdline
+
* Wed Apr 27 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-59
- Remove upstream and layers of indirection around -bls
commit 78927fa5edbb8647aeab9ec864e2789829fb9649
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Wed Jun 22 14:42:14 2022 -0400
Revert "Additionally write to /etc/kernel/cmdline"
This reverts commit 599a2e1a99114516f54179346f6654c9868bd20b.
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby-bls b/grubby-bls
index f70aceb..af0d82d 100755
--- a/grubby-bls
+++ b/grubby-bls
@@ -513,19 +513,6 @@ update_bls_fragment() {
opts="$(grub2-editenv "${env}" list | grep kernelopts | sed -e "s/kernelopts=//")"
fi
- # systemd decide that what we needed was *another* place to configure this
- # stuff (after our two, plus BLS). Two, actually, but configuration
- # doesn't live in /usr. If we don't do this, kernel-install
- # (90-loaderentry.install) will read arguments from /proc/cmdline (instead
- # of our actual configuration...), causing future kernel installs to use
- # the current kernel's arguments - which depending on when the system
- # reboots, may or may not be what the user wanted...
- if [[ $param = "ALL" && -e /etc/default/grub ]]; then
- opts="$(source /etc/default/grub; echo ${GRUB_CMDLINE_LINUX})"
- root="$(tr -s "$IFS" '\n' </proc/cmdline | grep root= | tr -d '\n')"
- echo "$root $opts" > /etc/kernel/cmdline
- fi
-
for i in ${indexes[*]}; do
if [[ -n $remove_args || -n $add_args ]]; then
local old_args="$(get_bls_args "$i")"
diff --git a/grubby.spec b/grubby.spec
index 8b319c8..4938666 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 60%{?dist}
+Release: 59%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,9 +83,6 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
-* Tue May 31 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-60
-- Additionally write to /etc/kernel/cmdline
-
* Wed Apr 27 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-59
- Remove upstream and layers of indirection around -bls
commit 599a2e1a99114516f54179346f6654c9868bd20b
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Tue May 31 17:23:49 2022 +0000
Additionally write to /etc/kernel/cmdline
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby-bls b/grubby-bls
index af0d82d..f70aceb 100755
--- a/grubby-bls
+++ b/grubby-bls
@@ -513,6 +513,19 @@ update_bls_fragment() {
opts="$(grub2-editenv "${env}" list | grep kernelopts | sed -e "s/kernelopts=//")"
fi
+ # systemd decide that what we needed was *another* place to configure this
+ # stuff (after our two, plus BLS). Two, actually, but configuration
+ # doesn't live in /usr. If we don't do this, kernel-install
+ # (90-loaderentry.install) will read arguments from /proc/cmdline (instead
+ # of our actual configuration...), causing future kernel installs to use
+ # the current kernel's arguments - which depending on when the system
+ # reboots, may or may not be what the user wanted...
+ if [[ $param = "ALL" && -e /etc/default/grub ]]; then
+ opts="$(source /etc/default/grub; echo ${GRUB_CMDLINE_LINUX})"
+ root="$(tr -s "$IFS" '\n' </proc/cmdline | grep root= | tr -d '\n')"
+ echo "$root $opts" > /etc/kernel/cmdline
+ fi
+
for i in ${indexes[*]}; do
if [[ -n $remove_args || -n $add_args ]]; then
local old_args="$(get_bls_args "$i")"
diff --git a/grubby.spec b/grubby.spec
index 4938666..8b319c8 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -3,7 +3,7 @@
Name: grubby
Version: 8.40
-Release: 59%{?dist}
+Release: 60%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
Source1: grubby-bls
@@ -83,6 +83,9 @@ fi
%{_mandir}/man8/grubby.8*
%changelog
+* Tue May 31 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-60
+- Additionally write to /etc/kernel/cmdline
+
* Wed Apr 27 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-59
- Remove upstream and layers of indirection around -bls
commit 79765ad0d78ac88d56f78bc0d10b8ef8746b7e17
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Wed Apr 27 13:13:57 2022 -0400
Stop building on ia32
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby.spec b/grubby.spec
index b4c1faa..4938666 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -22,7 +22,7 @@ BuildRequires: pkgconfig
BuildRequires: popt-devel
BuildRequires: rpm-devel
BuildRequires: sed
-%ifarch aarch64 i686 x86_64 %{power64}
+%ifarch aarch64 x86_64 %{power64}
BuildRequires: grub2-tools-minimal
Requires: grub2-tools-minimal
Requires: grub2-tools
@@ -33,6 +33,7 @@ Requires: s390utils-core
Requires: findutils
Requires: util-linux
+ExcludeArch: %{ix86}
Conflicts: uboot-tools < 2021.01-0.1.rc2
Obsoletes: %{name}-bls < %{version}-%{release}
commit aaefddefe8fa964909ac5e2e9330cb21f615a4c3
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Wed Apr 27 13:08:31 2022 -0400
rpm-sort: fix missing include and sort
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/rpm-sort.c b/rpm-sort.c
index f196356..274bcb1 100644
--- a/rpm-sort.c
+++ b/rpm-sort.c
@@ -1,13 +1,14 @@
#define _GNU_SOURCE
+#include <argp.h>
+#include <assert.h>
+#include <err.h>
+#include <errno.h>
+#include <rpm/rpmlib.h>
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
-#include <errno.h>
-#include <assert.h>
-#include <argp.h>
-#include <rpm/rpmlib.h>
-#include <err.h>
typedef enum {
RPMNVRCMP,
commit 415ad451de22ef60820f2704d783a87b712af744
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Wed Apr 27 15:28:15 2022 +0000
Remove upstream and layers of indirection around -bls
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/0001-remove-the-old-crufty-u-boot-support.patch b/0001-remove-the-old-crufty-u-boot-support.patch
deleted file mode 100644
index f6f5e97..0000000
--- a/0001-remove-the-old-crufty-u-boot-support.patch
+++ /dev/null
@@ -1,235 +0,0 @@
-From aa4472dbc10f3d669e24ac07293d7ac19e606866 Mon Sep 17 00:00:00 2001
-From: Dennis Gilmore <dennis(a)ausil.us>
-Date: Wed, 30 Aug 2017 14:03:45 -0500
-Subject: [PATCH 1/8] remove the old crufty u-boot support
-
-Fedora has only supported extlinux.conf for a few releases now
-as a result it should be the only way we boot systems. Remove
-the no longer needed uboot file
-
-Signed-off-by: Dennis Gilmore <dennis(a)ausil.us>
----
- new-kernel-pkg | 116 -------------------------------------------------
- uboot | 43 ------------------
- 2 files changed, 159 deletions(-)
- delete mode 100644 uboot
-
-diff --git a/new-kernel-pkg b/new-kernel-pkg
-index b634388a83f..962008e3c9d 100755
---- a/new-kernel-pkg
-+++ b/new-kernel-pkg
-@@ -37,7 +37,6 @@ else
- fi
-
- [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
--[ -f /etc/sysconfig/uboot ] && . /etc/sysconfig/uboot
-
- cfgGrub2=""
- cfgGrub2Efi=""
-@@ -50,7 +49,6 @@ grubConfig=""
- grub2Config=""
- grub2EfiConfig=""
- extlinuxConfig=""
--ubootScript="/boot/boot.scr"
-
- ARCH=$(uname -m)
-
-@@ -84,13 +82,6 @@ elif [[ ${ARCH} =~ armv[5|7].*l ]] ; then
- liloConfig=""
- bootPrefix=/boot
- extlinuxConfig=$(readlink -f /etc/extlinux.conf 2>/dev/null)
-- ubootDir=${UBOOT_DIR:-"/boot"}
-- ubootScript=$ubootDir/${UBOOT_SCR:-"boot.scr"}
-- ubootKList=${UBOOT_KLIST:-"klist.txt"}
-- ubootDevice=/dev/${UBOOT_DEVICE:-"mmcblk0p1"}
-- ubootDefaultImage=${UBOOT_UIMAGE:-"uImage"}
-- ubootDefaultInitrd=${UBOOT_UINITRD:-"uInitrd"}
-- ubootAddress=${UBOOT_IMGADDR:-"0x00008000"}
- mounted=""
- liloFlag=""
- isx86=""
-@@ -382,53 +373,6 @@ remove() {
- [ -n "$verbose" ] && echo "$liloConfig does not exist, not running grubby"
- fi
-
-- if [ -n "$cfguBoot" ]; then
-- [ -n "$verbose" ] && echo "removing $version from $ubootDir..."
--
-- if [ -f $ubootDir/$ubootKList ]; then
-- tmpKList=`mktemp $ubootDir/$ubootKList.XXXX`
-- curversion=`tail -n1 $ubootDir/$ubootKList`
-- sed "/$version$/d" $ubootDir/$ubootKList > $tmpKList
-- newversion=`tail -n1 $tmpKList`
-- if [ -f $ubootDir/uImage-$newversion ] && [ -f $ubootDir/uInitrd-$newversion ]; then
-- if [ "$curversion" != "$newversion" ]; then
-- cp -fp $ubootDir/uImage-$newversion $ubootDir/${ubootDefaultImage}
-- if [ $? -ne 0 ]; then
-- [ -n "$verbose" ] && echo "copy uImage-$newversion error, default kernel not replaced!" && exit
-- fi
-- cp -fp $ubootDir/uInitrd-$newversion $ubootDir/${ubootDefaultInitrd}
-- if [ $? -ne 0 ]; then
-- [ -n "$verbose" ] && echo "copy uInitrd-$newversion error, default Initrd not replaced!" && exit
-- fi
-- fi
--
-- [ -n "$verbose" ] && echo "removing uImage-$version"
-- if [ -f $ubootDir/uImage-$version ]; then
-- rm -f $ubootDir/uImage-$version
-- else
-- [ -n "$verbose" ] && echo "uImage-$version did not exist!"
-- fi
--
-- [ -n "$verbose" ] && echo "removing uInitrd-$version"
-- if [ -f $ubootDir/uInitrd-$version ]; then
-- rm -f $ubootDir/uInitrd-$version
-- else
-- [ -n "$verbose" ] && echo "uInitrd-$version did not exist!"
-- fi
--
-- mv $tmpKList $ubootDir/$ubootKList
-- [ -x /sbin/a-b-c ] && /sbin/a-b-c
-- else
-- [ -n "$verbose" ] && echo "uImage $newversion does not exist!"
-- [ -f $tmpKList ] && rm -f $tmpKList
-- fi
-- else
-- [ -n "$verbose" ] && echo "No previous kernel version. U-Boot images not removed!"
-- fi
-- else
-- [ -n "$verbose" ] && echo "$ubootScript does not exist, not modifying $ubootDir"
-- fi
--
- if [ -n "$cfgExtlinux" ]; then
- [ -n "$verbose" ] && echo "removing $version from $extlinuxConfig"
- $grubby --extlinux -c $extlinuxConfig \
-@@ -530,36 +474,6 @@ update() {
- [ -n "$verbose" ] && echo "$liloConfig does not exist, not running grubby"
- fi
-
-- if [ -n "$cfguBoot" ]; then
-- [ -n "$verbose" ] && echo "adding $version to $ubootDir..."
--
-- [ -n "$verbose" ] && echo "creating uImage-$version"
-- mkimage -A arm -O linux -T kernel -C none -a $ubootAddress \
-- -e $ubootAddress -n $version \
-- -d $kernelImage $ubootDir/uImage-$version
--
-- [ -n "$verbose" ] && echo "creating uInitrd-$version"
-- mkimage -A arm -O linux -T ramdisk -C none -a 0 -e 0 \
-- -n initramfs -d $initrdfile $ubootDir/uInitrd-$version
--
-- if [ -f $ubootDir/uImage-$version ] && [ -f $ubootDir/uInitrd-$version ]; then
-- cp -fp $ubootDir/uImage-$version $ubootDir/${ubootDefaultImage}
-- if [ $? -ne 0 ]; then
-- [ -n "$verbose" ] && echo "copy uImage-$version error, kernel not installed!" && exit
-- fi
-- cp -fp $ubootDir/uInitrd-$version $ubootDir/${ubootDefaultInitrd}
-- if [ $? -ne 0 ]; then
-- [ -n "$verbose" ] && echo "copy uInitrd-$version error, kernel not installed!" && exit
-- fi
-- echo $version >> $ubootDir/$ubootKList
-- [ -x /sbin/a-b-c ] && /sbin/a-b-c
-- else
-- [ -n "$verbose" ] && echo "cannot make $version the default"
-- fi
-- else
-- [ -n "$verbose" ] && echo "$ubootScript does not exist, not setting up $ubootDir"
-- fi
--
- if [ -n "$cfgExtlinux" ]; then
- [ -n "$verbose" ] && echo "updating $version from $extlinuxConfig"
- ARGS="--extlinux -c $extlinuxConfig --update-kernel=$kernelImage \
-@@ -877,33 +791,6 @@ fi
- [ -n "$liloConfig" ] && [ -f "$liloConfig" ] && cfgLilo=1;
- [ -n "$extlinuxConfig" ] && [ -f "$extlinuxConfig" ] && cfgExtlinux=1;
-
--# if we have a U-Boot directory, but no boot script, check if the directory
--# is mounted. If not, mount it, and then check if a boot script exists.
--if [ -n "$ubootDir" ]; then
-- if [ -f "$ubootScript" ]; then
-- cfguBoot=1
-- else
-- mountEntry=`mount | grep $ubootDir`
-- if [ -z "$mountEntry" ]; then
-- mount $ubootDevice $ubootDir
-- mounted=1
-- fi
-- [ -f "$ubootScript" ] && cfguBoot=1;
-- fi
--fi
--
--# if we're using U-Boot, check if the default load address should change
--if [ -n "$cfguBoot" -a -z "$UBOOT_IMGADDR" ]; then
-- [[ $version =~ .([^.]*)$ ]]
-- platform=${BASH_REMATCH[1]}
-- # A few platforms use an alternate kernel load address
-- if [ "$platform" = "omap" ]; then
-- ubootAddress=0x80008000
-- elif [ "$platform" = "imx" ]; then
-- ubootAddress=0x90008000
-- fi
--fi
--
- # if we have a lilo config on an x86 box, see if the default boot loader
- # is lilo to determine if it should be run
- if [ -n "$cfgLilo" -a -n "$isx86" ]; then
-@@ -920,7 +807,4 @@ elif [ "$mode" == "--rpmposttrans" ]; then
- rpmposttrans
- fi
-
--# if we mounted the U-Boot directory, unmount it.
--[ -n "$mounted" ] && umount $ubootDir
--
- exit 0
-diff --git a/uboot b/uboot
-deleted file mode 100644
-index 07d8671822f..00000000000
---- a/uboot
-+++ /dev/null
-@@ -1,43 +0,0 @@
--# Settings for uBoot setup in /sbin/new-kernel-pkg
--#
--# Default values are provided below (as comments)
--#
--# WARNING: These values affect where grubby installs and removes
--# uBoot kernel images. Changing these _after_ kernels have
--# been installed may cause removing a kernel image to fail.
--
--# directory where uBoot images and scripts are found
--#UBOOT_DIR=/boot
--
--# Override the load address when running mkimage on the kernel.
--# OMAP such as Beagleboard and Pandaboard: Use 0x80008000
--# Tegra such as Trimslice: Use 0x00008000
--# IMX such as Efika mx51 smarttop: Use 0x90008000
--# Kirkwood such as Dreamplug, Guruplug, Sheevaplug: Use 0x00008000
--# If left undefined grubby will use defults for Tegra or OMAP depending
--# upon the contents of /proc/cpuinfo.
--#UBOOT_IMGADDR=0x0x00008000
--
--# name of the text file containing the list of installed kernel versions
--# NOTE: The versions are in order of installation. The last entry should
--# always be the default boot kernel version.
--#UBOOT_KLIST=klist.txt
--
--# device partition where uBoot images reside; mounted on $UBOOT_DIR
--#UBOOT_DEVICE=mmcblk0p1
--
--
--# NOTE: Both of the following files are automatically overwritte
--# when a kernel package is installed or removed.
--
--# default kernel uImage file name
--#UBOOT_UIMAGE=uImage
--
--# default initrd uInitrd file name
--#UBOOT_UINITRD=uInitrd
--
--# defualt for platform shipping an onboard dtb.
--#SHIPSDTB=no
--
--# option to tell new-kernel-pkg a specific dtb file to load in extlinux.conf
--#dtbfile=foo.dtb
---
-2.17.1
-
diff --git a/0002-Change-return-type-in-getRootSpecifier.patch b/0002-Change-return-type-in-getRootSpecifier.patch
deleted file mode 100644
index f2a1978..0000000
--- a/0002-Change-return-type-in-getRootSpecifier.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-From 3afc4c0ed28d443bb71956b07fd45c8cfb07566f Mon Sep 17 00:00:00 2001
-From: Nathaniel McCallum <npmccallum(a)redhat.com>
-Date: Fri, 2 Mar 2018 14:59:32 -0500
-Subject: [PATCH 2/8] Change return type in getRootSpecifier()
-
-Rather than returning a new allocation of the prefix, just return the
-length of the prefix. This change accomplishes a couple things. First,
-it reduces some memory leaks since the return value was often never
-freed. Second, it simplifies the caller who is usually only interested
-in the length of the prefix.
----
- grubby.c | 54 +++++++++++++++++++++++++++---------------------------
- 1 file changed, 27 insertions(+), 27 deletions(-)
-
-diff --git a/grubby.c b/grubby.c
-index d4ebb86168d..a062ef8e567 100644
---- a/grubby.c
-+++ b/grubby.c
-@@ -675,7 +675,7 @@ static int lineWrite(FILE * out, struct singleLine * line,
- struct configFileInfo * cfi);
- static int getNextLine(char ** bufPtr, struct singleLine * line,
- struct configFileInfo * cfi);
--static char * getRootSpecifier(char * str);
-+static size_t getRootSpecifier(const char *str);
- static void requote(struct singleLine *line, struct configFileInfo * cfi);
- static void insertElement(struct singleLine * line,
- const char * item, int insertHere,
-@@ -1840,7 +1840,7 @@ int suitableImage(struct singleEntry * entry, const char * bootPrefix,
- char * fullName;
- int i;
- char * dev;
-- char * rootspec;
-+ size_t rs;
- char * rootdev;
-
- if (skipRemoved && entry->skip) {
-@@ -1866,12 +1866,11 @@ int suitableImage(struct singleEntry * entry, const char * bootPrefix,
-
- fullName = alloca(strlen(bootPrefix) +
- strlen(line->elements[1].item) + 1);
-- rootspec = getRootSpecifier(line->elements[1].item);
-- int rootspec_offset = rootspec ? strlen(rootspec) : 0;
-+ rs = getRootSpecifier(line->elements[1].item);
- int hasslash = endswith(bootPrefix, '/') ||
-- beginswith(line->elements[1].item + rootspec_offset, '/');
-+ beginswith(line->elements[1].item + rs, '/');
- sprintf(fullName, "%s%s%s", bootPrefix, hasslash ? "" : "/",
-- line->elements[1].item + rootspec_offset);
-+ line->elements[1].item + rs);
- if (access(fullName, R_OK)) {
- notSuitablePrintf(entry, 0, "access to %s failed\n", fullName);
- return 0;
-@@ -1952,7 +1951,6 @@ struct singleEntry * findEntryByPath(struct grubConfig * config,
- struct singleLine * line;
- int i;
- char * chptr;
-- char * rootspec = NULL;
- enum lineType_e checkType = LT_KERNEL;
-
- if (isdigit(*kernel)) {
-@@ -2044,11 +2042,10 @@ struct singleEntry * findEntryByPath(struct grubConfig * config,
-
- if (line && line->type != LT_MENUENTRY &&
- line->numElements >= 2) {
-- rootspec = getRootSpecifier(line->elements[1].item);
-- if (!strcmp(line->elements[1].item +
-- ((rootspec != NULL) ? strlen(rootspec) : 0),
-- kernel + strlen(prefix)))
-- break;
-+ if (!strcmp(line->elements[1].item +
-+ getRootSpecifier(line->elements[1].item),
-+ kernel + strlen(prefix)))
-+ break;
- }
- if(line->type == LT_MENUENTRY &&
- !strcmp(line->elements[1].item, kernel))
-@@ -2797,11 +2794,11 @@ struct singleLine * addLineTmpl(struct singleEntry * entry,
-
- /* but try to keep the rootspec from the template... sigh */
- if (tmplLine->type & (LT_HYPER|LT_KERNEL|LT_MBMODULE|LT_INITRD|LT_KERNEL_EFI|LT_INITRD_EFI|LT_KERNEL_16|LT_INITRD_16)) {
-- char * rootspec = getRootSpecifier(tmplLine->elements[1].item);
-- if (rootspec != NULL) {
-- free(newLine->elements[1].item);
-- newLine->elements[1].item =
-- sdupprintf("%s%s", rootspec, val);
-+ size_t rs = getRootSpecifier(tmplLine->elements[1].item);
-+ if (rs > 0) {
-+ free(newLine->elements[1].item);
-+ newLine->elements[1].item = sdupprintf("%.*s%s", (int) rs,
-+ tmplLine->elements[1].item, val);
- }
- }
- }
-@@ -3729,15 +3726,19 @@ int checkForElilo(struct grubConfig * config) {
- return 1;
- }
-
--static char * getRootSpecifier(char * str) {
-- char * idx, * rootspec = NULL;
-+static size_t getRootSpecifier(const char *str)
-+{
-+ size_t rs = 0;
-
- if (*str == '(') {
-- idx = rootspec = strdup(str);
-- while(*idx && (*idx != ')') && (!isspace(*idx))) idx++;
-- *(++idx) = '\0';
-+ for (; str[rs] != ')' && !isspace(str[rs]); rs++) {
-+ if (!str[rs])
-+ return rs;
-+ }
-+ rs++;
- }
-- return rootspec;
-+
-+ return rs;
- }
-
- static char * getInitrdVal(struct grubConfig * config,
-@@ -4616,7 +4617,7 @@ int main(int argc, const char ** argv) {
- if (displayDefault) {
- struct singleLine * line;
- struct singleEntry * entry;
-- char * rootspec;
-+ size_t rs;
-
- if (config->defaultImage == -1) return 0;
- if (config->defaultImage == DEFAULT_SAVED_GRUB2 &&
-@@ -4629,9 +4630,8 @@ int main(int argc, const char ** argv) {
- line = getLineByType(LT_KERNEL|LT_HYPER|LT_KERNEL_EFI|LT_KERNEL_16, entry->lines);
- if (!line) return 0;
-
-- rootspec = getRootSpecifier(line->elements[1].item);
-- printf("%s%s\n", bootPrefix, line->elements[1].item +
-- ((rootspec != NULL) ? strlen(rootspec) : 0));
-+ rs = getRootSpecifier(line->elements[1].item);
-+ printf("%s%s\n", bootPrefix, line->elements[1].item + rs);
-
- return 0;
-
---
-2.17.1
-
diff --git a/0003-Add-btrfs-subvolume-support-for-grub2.patch b/0003-Add-btrfs-subvolume-support-for-grub2.patch
deleted file mode 100644
index 583c5de..0000000
--- a/0003-Add-btrfs-subvolume-support-for-grub2.patch
+++ /dev/null
@@ -1,209 +0,0 @@
-From 112b6e5fc690b2a73b6ad8c92dc4645db08503b6 Mon Sep 17 00:00:00 2001
-From: Nathaniel McCallum <npmccallum(a)redhat.com>
-Date: Fri, 2 Mar 2018 08:40:18 -0500
-Subject: [PATCH 3/8] Add btrfs subvolume support for grub2
-
-In order to find the subvolume prefix from a given path, we parse
-/proc/mounts. In cases where /proc/mounts doesn't contain the
-filesystem, the caller can use the --mounts option to specify his own
-mounts file.
-
-Btrfs subvolumes are already supported by grub2 and by grub2-mkconfig.
-
-Fixes #22
----
- grubby.c | 148 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
- 1 file changed, 143 insertions(+), 5 deletions(-)
-
-diff --git a/grubby.c b/grubby.c
-index a062ef8e567..96d252a0a83 100644
---- a/grubby.c
-+++ b/grubby.c
-@@ -68,6 +68,8 @@ int isEfi = 0;
-
- char *saved_command_line = NULL;
-
-+const char *mounts = "/proc/mounts";
-+
- /* comments get lumped in with indention */
- struct lineElement {
- char * item;
-@@ -1834,6 +1836,129 @@ static int endswith(const char *s, char c)
- return s[slen] == c;
- }
-
-+typedef struct {
-+ const char *start;
-+ size_t chars;
-+} field;
-+
-+static int iscomma(int c)
-+{
-+ return c == ',';
-+}
-+
-+static int isequal(int c)
-+{
-+ return c == '=';
-+}
-+
-+static field findField(const field *in, typeof(isspace) *isdelim, field *out)
-+{
-+ field nxt = {};
-+ size_t off = 0;
-+
-+ while (off < in->chars && isdelim(in->start[off]))
-+ off++;
-+
-+ if (off == in->chars)
-+ return nxt;
-+
-+ out->start = &in->start[off];
-+ out->chars = 0;
-+
-+ while (off + out->chars < in->chars && !isdelim(out->start[out->chars]))
-+ out->chars++;
-+
-+ nxt.start = out->start + out->chars;
-+ nxt.chars = in->chars - off - out->chars;
-+ return nxt;
-+}
-+
-+static int fieldEquals(const field *in, const char *str)
-+{
-+ return in->chars == strlen(str) &&
-+ strncmp(in->start, str, in->chars) == 0;
-+}
-+
-+/* Parse /proc/mounts to determine the subvolume prefix. */
-+static size_t subvolPrefix(const char *str)
-+{
-+ FILE *file = NULL;
-+ char *line = NULL;
-+ size_t prfx = 0;
-+ size_t size = 0;
-+
-+ file = fopen(mounts, "r");
-+ if (!file)
-+ return 0;
-+
-+ for (ssize_t s; (s = getline(&line, &size, file)) >= 0; ) {
-+ field nxt = { line, s };
-+ field dev = {};
-+ field path = {};
-+ field type = {};
-+ field opts = {};
-+ field opt = {};
-+
-+ nxt = findField(&nxt, isspace, &dev);
-+ if (!nxt.start)
-+ continue;
-+
-+ nxt = findField(&nxt, isspace, &path);
-+ if (!nxt.start)
-+ continue;
-+
-+ nxt = findField(&nxt, isspace, &type);
-+ if (!nxt.start)
-+ continue;
-+
-+ nxt = findField(&nxt, isspace, &opts);
-+ if (!nxt.start)
-+ continue;
-+
-+ if (!fieldEquals(&type, "btrfs"))
-+ continue;
-+
-+ /* We have found a btrfs mount point. */
-+
-+ nxt = opts;
-+ while ((nxt = findField(&nxt, iscomma, &opt)).start) {
-+ field key = {};
-+ field val = {};
-+
-+ opt = findField(&opt, isequal, &key);
-+ if (!opt.start)
-+ continue;
-+
-+ opt = findField(&opt, isequal, &val);
-+ if (!opt.start)
-+ continue;
-+
-+ if (!fieldEquals(&key, "subvol"))
-+ continue;
-+
-+ /* We have found a btrfs subvolume mount point. */
-+
-+ if (strncmp(val.start, str, val.chars))
-+ continue;
-+
-+ if (val.start[val.chars - 1] != '/' &&
-+ str[val.chars] != '/')
-+ continue;
-+
-+ /* The subvolume mount point matches our input. */
-+
-+ if (prfx < val.chars)
-+ prfx = val.chars;
-+ }
-+ }
-+
-+ dbgPrintf("%s(): str: '%s', prfx: '%s'\n", __FUNCTION__, str, prfx);
-+
-+ fclose(file);
-+ free(line);
-+ return prfx;
-+}
-+
- int suitableImage(struct singleEntry * entry, const char * bootPrefix,
- int skipRemoved, int flags) {
- struct singleLine * line;
-@@ -2794,12 +2919,22 @@ struct singleLine * addLineTmpl(struct singleEntry * entry,
-
- /* but try to keep the rootspec from the template... sigh */
- if (tmplLine->type & (LT_HYPER|LT_KERNEL|LT_MBMODULE|LT_INITRD|LT_KERNEL_EFI|LT_INITRD_EFI|LT_KERNEL_16|LT_INITRD_16)) {
-- size_t rs = getRootSpecifier(tmplLine->elements[1].item);
-+ const char *prfx = tmplLine->elements[1].item;
-+ size_t rs = getRootSpecifier(prfx);
-+ if (isinitrd(tmplLine->type)) {
-+ for (struct singleLine *l = entry->lines;
-+ rs == 0 && l; l = l->next) {
-+ if (iskernel(l->type)) {
-+ prfx = l->elements[1].item;
-+ rs = getRootSpecifier(prfx);
-+ }
-+ }
-+ }
- if (rs > 0) {
- free(newLine->elements[1].item);
-- newLine->elements[1].item = sdupprintf("%.*s%s", (int) rs,
-- tmplLine->elements[1].item, val);
-- }
-+ newLine->elements[1].item = sdupprintf("%.*s%s",
-+ (int) rs, prfx, val);
-+ }
- }
- }
-
-@@ -3738,7 +3873,7 @@ static size_t getRootSpecifier(const char *str)
- rs++;
- }
-
-- return rs;
-+ return rs + subvolPrefix(str + rs);
- }
-
- static char * getInitrdVal(struct grubConfig * config,
-@@ -4253,6 +4388,9 @@ int main(int argc, const char ** argv) {
- { "mbargs", 0, POPT_ARG_STRING, &newMBKernelArgs, 0,
- _("default arguments for the new multiboot kernel or "
- "new arguments for multiboot kernel being updated"), NULL },
-+ { "mounts", 0, POPT_ARG_STRING, &mounts, 0,
-+ _("path to fake /proc/mounts file (for testing only)"),
-+ _("mounts") },
- { "bad-image-okay", 0, 0, &badImageOkay, 0,
- _("don't sanity check images in boot entries (for testing only)"),
- NULL },
---
-2.17.1
-
diff --git a/0004-Add-tests-for-btrfs-support.patch b/0004-Add-tests-for-btrfs-support.patch
deleted file mode 100644
index f4b8ec8..0000000
--- a/0004-Add-tests-for-btrfs-support.patch
+++ /dev/null
@@ -1,1871 +0,0 @@
-From e319f73ca691b9cc138def3a9c19f1cb6e581475 Mon Sep 17 00:00:00 2001
-From: Gene Czarcinski <gczarcinski(a)gmail.com>
-Date: Mon, 9 Jun 2014 21:11:37 -0400
-Subject: [PATCH 4/8] Add tests for btrfs support
-
-The tests performed are:
-- add kernel with /boot on btrfs subvol (20)
-- update kernel/add initrd with /boot on btrfs subvol (21)
-- add kernel with rootfs on btrfs subvol and /boot a directory (22)
-- update kernel/add initrd with rootfs on btrfs subvol and
- /boot a directory (23)
-- add kernel and initrd with /boot on btrfs subvol (24)
-- add kernel and initrd with rootfs on btrfs subvol and /boot
- a directory (25)
----
- test.sh | 40 +++++++
- test/grub2-support_files/g2.20-mounts | 2 +
- test/grub2-support_files/g2.21-mounts | 1 +
- test/grub2-support_files/g2.22-mounts | 1 +
- test/grub2-support_files/g2.23-mounts | 1 +
- test/grub2-support_files/g2.24-mounts | 1 +
- test/grub2-support_files/g2.25-mounts | 1 +
- test/grub2.20 | 126 ++++++++++++++++++++++
- test/grub2.21 | 140 +++++++++++++++++++++++++
- test/grub2.22 | 128 +++++++++++++++++++++++
- test/grub2.23 | 143 +++++++++++++++++++++++++
- test/grub2.24 | 126 ++++++++++++++++++++++
- test/grub2.25 | 128 +++++++++++++++++++++++
- test/results/add/g2-1.20 | 140 +++++++++++++++++++++++++
- test/results/add/g2-1.21 | 141 +++++++++++++++++++++++++
- test/results/add/g2-1.22 | 143 +++++++++++++++++++++++++
- test/results/add/g2-1.23 | 144 ++++++++++++++++++++++++++
- test/results/add/g2-1.24 | 141 +++++++++++++++++++++++++
- test/results/add/g2-1.25 | 144 ++++++++++++++++++++++++++
- 19 files changed, 1691 insertions(+)
- create mode 100644 test/grub2-support_files/g2.20-mounts
- create mode 120000 test/grub2-support_files/g2.21-mounts
- create mode 100644 test/grub2-support_files/g2.22-mounts
- create mode 120000 test/grub2-support_files/g2.23-mounts
- create mode 120000 test/grub2-support_files/g2.24-mounts
- create mode 120000 test/grub2-support_files/g2.25-mounts
- create mode 100644 test/grub2.20
- create mode 100644 test/grub2.21
- create mode 100644 test/grub2.22
- create mode 100644 test/grub2.23
- create mode 100644 test/grub2.24
- create mode 100644 test/grub2.25
- create mode 100644 test/results/add/g2-1.20
- create mode 100644 test/results/add/g2-1.21
- create mode 100644 test/results/add/g2-1.22
- create mode 100644 test/results/add/g2-1.23
- create mode 100644 test/results/add/g2-1.24
- create mode 100644 test/results/add/g2-1.25
-
-diff --git a/test.sh b/test.sh
-index 6379698c6de..c35bfca1c89 100755
---- a/test.sh
-+++ b/test.sh
-@@ -629,6 +629,46 @@ if [ "$testgrub2" == "y" ]; then
- --initrd /boot/initramfs-0-rescue-5a94251776a14678911d4ae0949500f5.img \
- --copy-default --title "Fedora 21 Rescue" --args=root=/fooooo \
- --remove-kernel=wtf --boot-filesystem=/boot/
-+
-+ testing="GRUB2 add kernel with boot on btrfs subvol"
-+ grub2Test grub2.20 add/g2-1.20 --add-kernel=/boot/new-kernel.img \
-+ --title='title' \
-+ --boot-filesystem=/boot/ \
-+ --copy-default \
-+ --mounts='test/grub2-support_files/g2.20-mounts'
-+
-+ testing="GRUB2 add initrd with boot on btrfs subvol"
-+ grub2Test grub2.21 add/g2-1.21 --update-kernel=/boot/new-kernel.img \
-+ --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
-+ --mounts='test/grub2-support_files/g2.21-mounts'
-+
-+ testing="GRUB2 add kernel with rootfs on btrfs subvol and boot directory"
-+ grub2Test grub2.22 add/g2-1.22 --add-kernel=/boot/new-kernel.img \
-+ --title='title' \
-+ --boot-filesystem= \
-+ --copy-default \
-+ --mounts='test/grub2-support_files/g2.22-mounts'
-+
-+ testing="GRUB2 add initrd with rootfs on btrfs subvol and boot directory"
-+ grub2Test grub2.23 add/g2-1.23 --update-kernel=/boot/new-kernel.img \
-+ --initrd=/boot/new-initrd --boot-filesystem= \
-+ --mounts='test/grub2-support_files/g2.23-mounts'
-+
-+ testing="GRUB2 add kernel and initrd with boot on btrfs subvol"
-+ grub2Test grub2.24 add/g2-1.24 --add-kernel=/boot/new-kernel.img \
-+ --title='title' \
-+ --initrd=/boot/new-initrd \
-+ --boot-filesystem=/boot/ \
-+ --copy-default \
-+ --mounts='test/grub2-support_files/g2.24-mounts'
-+
-+ testing="GRUB2 add kernel and initrd with rootfs on btrfs subvol and boot directory"
-+ grub2Test grub2.25 add/g2-1.25 --add-kernel=/boot/new-kernel.img \
-+ --title='title' \
-+ --initrd=/boot/new-initrd \
-+ --boot-filesystem= \
-+ --copy-default \
-+ --mounts='test/grub2-support_files/g2.25-mounts'
- fi
- fi
-
-diff --git a/test/grub2-support_files/g2.20-mounts b/test/grub2-support_files/g2.20-mounts
-new file mode 100644
-index 00000000000..00bdb48e4ab
---- /dev/null
-+++ b/test/grub2-support_files/g2.20-mounts
-@@ -0,0 +1,2 @@
-+/dev/sda / btrfs subvol=/root6,defaults 0 0
-+/dev/sda /boot btrfs subvol=/boot6,defaults 0 0
-diff --git a/test/grub2-support_files/g2.21-mounts b/test/grub2-support_files/g2.21-mounts
-new file mode 120000
-index 00000000000..42ef3fd4272
---- /dev/null
-+++ b/test/grub2-support_files/g2.21-mounts
-@@ -0,0 +1 @@
-+g2.20-mounts
-\ No newline at end of file
-diff --git a/test/grub2-support_files/g2.22-mounts b/test/grub2-support_files/g2.22-mounts
-new file mode 100644
-index 00000000000..5b664e72519
---- /dev/null
-+++ b/test/grub2-support_files/g2.22-mounts
-@@ -0,0 +1 @@
-+/dev/sda / btrfs defaults,subvol=/root4,ro 0 0
-diff --git a/test/grub2-support_files/g2.23-mounts b/test/grub2-support_files/g2.23-mounts
-new file mode 120000
-index 00000000000..74f036fc4a3
---- /dev/null
-+++ b/test/grub2-support_files/g2.23-mounts
-@@ -0,0 +1 @@
-+g2.22-mounts
-\ No newline at end of file
-diff --git a/test/grub2-support_files/g2.24-mounts b/test/grub2-support_files/g2.24-mounts
-new file mode 120000
-index 00000000000..42ef3fd4272
---- /dev/null
-+++ b/test/grub2-support_files/g2.24-mounts
-@@ -0,0 +1 @@
-+g2.20-mounts
-\ No newline at end of file
-diff --git a/test/grub2-support_files/g2.25-mounts b/test/grub2-support_files/g2.25-mounts
-new file mode 120000
-index 00000000000..74f036fc4a3
---- /dev/null
-+++ b/test/grub2-support_files/g2.25-mounts
-@@ -0,0 +1 @@
-+g2.22-mounts
-\ No newline at end of file
-diff --git a/test/grub2.20 b/test/grub2.20
-new file mode 100644
-index 00000000000..23b75fa8d3c
---- /dev/null
-+++ b/test/grub2.20
-@@ -0,0 +1,126 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/grub2.21 b/test/grub2.21
-new file mode 100644
-index 00000000000..579c2f6744a
---- /dev/null
-+++ b/test/grub2.21
-@@ -0,0 +1,140 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/new-kernel.img root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/grub2.22 b/test/grub2.22
-new file mode 100644
-index 00000000000..9466bc35153
---- /dev/null
-+++ b/test/grub2.22
-@@ -0,0 +1,128 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/grub2.23 b/test/grub2.23
-new file mode 100644
-index 00000000000..5cb240fc1de
---- /dev/null
-+++ b/test/grub2.23
-@@ -0,0 +1,143 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/new-kernel.img root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/grub2.24 b/test/grub2.24
-new file mode 100644
-index 00000000000..23b75fa8d3c
---- /dev/null
-+++ b/test/grub2.24
-@@ -0,0 +1,126 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/grub2.25 b/test/grub2.25
-new file mode 100644
-index 00000000000..9466bc35153
---- /dev/null
-+++ b/test/grub2.25
-@@ -0,0 +1,128 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.20 b/test/results/add/g2-1.20
-new file mode 100644
-index 00000000000..579c2f6744a
---- /dev/null
-+++ b/test/results/add/g2-1.20
-@@ -0,0 +1,140 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/new-kernel.img root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.21 b/test/results/add/g2-1.21
-new file mode 100644
-index 00000000000..c0dded9724c
---- /dev/null
-+++ b/test/results/add/g2-1.21
-@@ -0,0 +1,141 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/new-kernel.img root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/new-initrd
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.22 b/test/results/add/g2-1.22
-new file mode 100644
-index 00000000000..5cb240fc1de
---- /dev/null
-+++ b/test/results/add/g2-1.22
-@@ -0,0 +1,143 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/new-kernel.img root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.23 b/test/results/add/g2-1.23
-new file mode 100644
-index 00000000000..c3e87cf7897
---- /dev/null
-+++ b/test/results/add/g2-1.23
-@@ -0,0 +1,144 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/new-kernel.img root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/new-initrd
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.24 b/test/results/add/g2-1.24
-new file mode 100644
-index 00000000000..c0dded9724c
---- /dev/null
-+++ b/test/results/add/g2-1.24
-@@ -0,0 +1,141 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/new-kernel.img root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/new-initrd
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-81378818f7a24478b496ebef90e1dd69' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ else
-+ search --no-floppy --fs-uuid --set=root 1bab15a4-93ce-4373-8d7d-b77f907fd0c6
-+ fi
-+ linux16 /boot6/vmlinuz-0-rescue-81378818f7a24478b496ebef90e1dd69 root=UUID=1bab15a4-93ce-4373-8d7d-b77f907fd0c6 ro rootflags=subvol=root6 rhgb quiet
-+ initrd16 /boot6/initramfs-0-rescue-81378818f7a24478b496ebef90e1dd69.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+### END /etc/grub.d/30_os-prober ###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
-diff --git a/test/results/add/g2-1.25 b/test/results/add/g2-1.25
-new file mode 100644
-index 00000000000..c3e87cf7897
---- /dev/null
-+++ b/test/results/add/g2-1.25
-@@ -0,0 +1,144 @@
-+#
-+# DO NOT EDIT THIS FILE
-+#
-+# It is automatically generated by grub2-mkconfig using templates
-+# from /etc/grub.d and settings from /etc/default/grub
-+#
-+
-+### BEGIN /etc/grub.d/00_header ###
-+set pager=1
-+
-+if [ -s $prefix/grubenv ]; then
-+ load_env
-+fi
-+if [ "${next_entry}" ] ; then
-+ set default="${next_entry}"
-+ set next_entry=
-+ save_env next_entry
-+ set boot_once=true
-+else
-+ set default="${saved_entry}"
-+fi
-+
-+if [ x"${feature_menuentry_id}" = xy ]; then
-+ menuentry_id_option="--id"
-+else
-+ menuentry_id_option=""
-+fi
-+
-+export menuentry_id_option
-+
-+if [ "${prev_saved_entry}" ]; then
-+ set saved_entry="${prev_saved_entry}"
-+ save_env saved_entry
-+ set prev_saved_entry=
-+ save_env prev_saved_entry
-+ set boot_once=true
-+fi
-+
-+function savedefault {
-+ if [ -z "${boot_once}" ]; then
-+ saved_entry="${chosen}"
-+ save_env saved_entry
-+ fi
-+}
-+
-+function load_video {
-+ if [ x$feature_all_video_module = xy ]; then
-+ insmod all_video
-+ else
-+ insmod efi_gop
-+ insmod efi_uga
-+ insmod ieee1275_fb
-+ insmod vbe
-+ insmod vga
-+ insmod video_bochs
-+ insmod video_cirrus
-+ fi
-+}
-+
-+terminal_output console
-+if [ x$feature_timeout_style = xy ] ; then
-+ set timeout_style=menu
-+ set timeout=15
-+# Fallback normal timeout code in case the timeout_style feature is
-+# unavailable.
-+else
-+ set timeout=15
-+fi
-+### END /etc/grub.d/00_header ###
-+
-+### BEGIN /etc/grub.d/10_linux ###
-+menuentry 'title' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/new-kernel.img root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/new-initrd
-+}
-+menuentry 'Fedora, with Linux 3.15.0-0.rc7.git2.1.fc21.x86_64' --class gnu-linux --class gnu --class os {
-+ load_video
-+ set gfxpayload=keep
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-3.15.0-0.rc7.git2.1.fc21.x86_64 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-3.15.0-0.rc7.git2.1.fc21.x86_64.img
-+}
-+menuentry 'Fedora, with Linux 0-rescue-20e7024f4e9c4b70b1042b91acd434c6' --class gnu-linux --class gnu --class os {
-+ load_video
-+ insmod gzio
-+ insmod part_msdos
-+ insmod part_msdos
-+ insmod btrfs
-+ set root='hd0,msdos1'
-+ if [ x$feature_platform_search_hint = xy ]; then
-+ search --no-floppy --fs-uuid --set=root --hint='hd0,msdos1' --hint='hd1,msdos3' 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ else
-+ search --no-floppy --fs-uuid --set=root 54c6abc2-b1e7-4987-aa73-c79927be69eb
-+ fi
-+ linux16 /root4/boot/vmlinuz-0-rescue-20e7024f4e9c4b70b1042b91acd434c6 root=UUID=54c6abc2-b1e7-4987-aa73-c79927be69eb ro rootflags=subvol=root4 rhgb quiet
-+ initrd16 /root4/boot/initramfs-0-rescue-20e7024f4e9c4b70b1042b91acd434c6.img
-+}
-+
-+### END /etc/grub.d/10_linux ###
-+
-+### BEGIN /etc/grub.d/20_linux_xen ###
-+
-+### END /etc/grub.d/20_linux_xen ###
-+
-+### BEGIN /etc/grub.d/20_ppc_terminfo ###
-+### END /etc/grub.d/20_ppc_terminfo ###
-+
-+### BEGIN /etc/grub.d/30_os-prober ###
-+###
-+
-+### BEGIN /etc/grub.d/40_custom ###
-+# This file provides an easy way to add custom menu entries. Simply type the
-+# menu entries you want to add after this comment. Be careful not to change
-+# the 'exec tail' line above.
-+### END /etc/grub.d/40_custom ###
-+
-+### BEGIN /etc/grub.d/41_custom ###
-+if [ -f ${config_directory}/custom.cfg ]; then
-+ source ${config_directory}/custom.cfg
-+elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
-+ source $prefix/custom.cfg;
-+fi
-+### END /etc/grub.d/41_custom ###
---
-2.17.1
-
diff --git a/0005-Use-system-LDFLAGS.patch b/0005-Use-system-LDFLAGS.patch
deleted file mode 100644
index 17954c4..0000000
--- a/0005-Use-system-LDFLAGS.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From e08c858af4d2b09e62441560f3ccecc9e750c87a Mon Sep 17 00:00:00 2001
-From: Rafael dos Santos <rdossant(a)redhat.com>
-Date: Tue, 29 May 2018 15:15:24 +0200
-Subject: [PATCH 5/8] Use system LDFLAGS
-
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index ac144046133..f0d13720db5 100644
---- a/Makefile
-+++ b/Makefile
-@@ -25,7 +25,7 @@ OBJECTS = grubby.o log.o
- CC = gcc
- RPM_OPT_FLAGS ?= -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector
- CFLAGS += $(RPM_OPT_FLAGS) -std=gnu99 -Wall -Werror -Wno-error=unused-function -Wno-unused-function -ggdb
--LDFLAGS :=
-+LDFLAGS := $(RPM_LD_FLAGS)
-
- grubby_LIBS = -lblkid -lpopt
-
---
-2.17.1
-
diff --git a/0006-Honor-sbindir.patch b/0006-Honor-sbindir.patch
deleted file mode 100644
index 0d947cc..0000000
--- a/0006-Honor-sbindir.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From db200499551e386e7616c621fcbd69e350081664 Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones(a)redhat.com>
-Date: Wed, 18 Jul 2018 13:41:02 -0400
-Subject: [PATCH 6/8] Honor sbindir
-
-Signed-off-by: Peter Jones <pjones(a)redhat.com>
----
- Makefile | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index f0d13720db5..cfa8e0d60ab 100644
---- a/Makefile
-+++ b/Makefile
-@@ -42,14 +42,14 @@ test: all
- @./test.sh
-
- install: all
-- mkdir -p $(DESTDIR)$(PREFIX)/sbin
-+ mkdir -p $(DESTDIR)$(PREFIX)$(sbindir)
- mkdir -p $(DESTDIR)/$(mandir)/man8
-- install -m 755 new-kernel-pkg $(DESTDIR)$(PREFIX)/sbin
-+ install -m 755 new-kernel-pkg $(DESTDIR)$(PREFIX)$(sbindir)
- install -m 644 new-kernel-pkg.8 $(DESTDIR)/$(mandir)/man8
-- install -m 755 installkernel $(DESTDIR)$(PREFIX)/sbin
-+ install -m 755 installkernel $(DESTDIR)$(PREFIX)$(sbindir)
- install -m 644 installkernel.8 $(DESTDIR)/$(mandir)/man8
- if [ -f grubby ]; then \
-- install -m 755 grubby $(DESTDIR)$(PREFIX)/sbin ; \
-+ install -m 755 grubby $(DESTDIR)$(PREFIX)$(sbindir) ; \
- install -m 644 grubby.8 $(DESTDIR)/$(mandir)/man8 ; \
- fi
-
---
-2.17.1
-
diff --git a/0007-Make-installkernel-to-use-kernel-install-scripts-on-.patch b/0007-Make-installkernel-to-use-kernel-install-scripts-on-.patch
deleted file mode 100644
index 727cab6..0000000
--- a/0007-Make-installkernel-to-use-kernel-install-scripts-on-.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From fa1bf7b54cb71fa193da16ffc404f8535d7d16ac Mon Sep 17 00:00:00 2001
-From: Javier Martinez Canillas <javierm(a)redhat.com>
-Date: Tue, 31 Jul 2018 17:43:53 +0200
-Subject: [PATCH 7/8] Make installkernel to use kernel-install scripts on BLS
- configuration
-
-The kernel make install target executes the arch/$ARCH/boot/install.sh
-that in turns executes the distro specific installkernel script. This
-script always uses new-kernel-pkg to install the kernel images.
-
-But on a BootLoaderSpec setup, the kernel-install scripts must be used
-instead. Check if the system uses a BLS setup, and call kernel-install
-add in that case instead of new-kernel-pkg.
-
-Reported-by: Hans de Goede <hdegoede(a)redhat.com>
-Signed-off-by: Javier Martinez Canillas <javierm(a)redhat.com>
----
- installkernel | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/installkernel b/installkernel
-index b887929c179..68dcfac16d2 100755
---- a/installkernel
-+++ b/installkernel
-@@ -20,6 +20,8 @@
- # Author(s): tyson(a)rwii.com
- #
-
-+[[ -f /etc/default/grub ]] && . /etc/default/grub
-+
- usage() {
- echo "Usage: `basename $0` <kernel_version> <bootimage> <mapfile>" >&2
- exit 1
-@@ -77,6 +79,11 @@ cp $MAPFILE $INSTALL_PATH/System.map-$KERNEL_VERSION
- ln -fs ${RELATIVE_PATH}$INSTALL_PATH/$KERNEL_NAME-$KERNEL_VERSION $LINK_PATH/$KERNEL_NAME
- ln -fs ${RELATIVE_PATH}$INSTALL_PATH/System.map-$KERNEL_VERSION $LINK_PATH/System.map
-
-+if [ "x${GRUB_ENABLE_BLSCFG}" = "xtrue" ] || [ ! -f /sbin/new-kernel-pkg ]; then
-+ kernel-install add $KERNEL_VERSION $INSTALL_PATH/$KERNEL_NAME-$KERNEL_VERSION
-+ exit $?
-+fi
-+
- if [ -n "$cfgLoader" ] && [ -x /sbin/new-kernel-pkg ]; then
- if [ -n "$(which dracut 2>/dev/null)" ]; then
- new-kernel-pkg --mkinitrd --dracut --host-only --depmod --install --kernel-name $KERNEL_NAME $KERNEL_VERSION
---
-2.17.1
-
diff --git a/0008-Add-usr-libexec-rpm-sort.patch b/0008-Add-usr-libexec-rpm-sort.patch
deleted file mode 100644
index b3e5faa..0000000
--- a/0008-Add-usr-libexec-rpm-sort.patch
+++ /dev/null
@@ -1,418 +0,0 @@
-From b8a581014170c6a9bb8ffb799090401a57a4bbe6 Mon Sep 17 00:00:00 2001
-From: Peter Jones <pjones(a)redhat.com>
-Date: Fri, 12 Oct 2018 16:39:37 -0400
-Subject: [PATCH 8/8] Add /usr/libexec/rpm-sort
-
-Signed-off-by: Peter Jones <pjones(a)redhat.com>
----
- rpm-sort.c | 355 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- Makefile | 9 +-
- .gitignore | 1 +
- 3 files changed, 363 insertions(+), 2 deletions(-)
- create mode 100644 rpm-sort.c
-
-diff --git a/rpm-sort.c b/rpm-sort.c
-new file mode 100644
-index 00000000000..f19635645ba
---- /dev/null
-+++ b/rpm-sort.c
-@@ -0,0 +1,355 @@
-+#define _GNU_SOURCE
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <unistd.h>
-+#include <errno.h>
-+#include <assert.h>
-+#include <argp.h>
-+#include <rpm/rpmlib.h>
-+#include <err.h>
-+
-+typedef enum {
-+ RPMNVRCMP,
-+ VERSNVRCMP,
-+ RPMVERCMP,
-+ STRVERSCMP,
-+} comparitors;
-+
-+static comparitors comparitor = RPMNVRCMP;
-+
-+static inline void *xmalloc(size_t sz)
-+{
-+ void *ret = malloc(sz);
-+
-+ assert(sz == 0 || ret != NULL);
-+ return ret;
-+}
-+
-+static inline void *xrealloc(void *p, size_t sz)
-+{
-+ void *ret = realloc(p, sz);
-+
-+ assert(sz == 0 || ret != NULL);
-+ return ret;
-+}
-+
-+static inline char *xstrdup(const char * const s)
-+{
-+ void *ret = strdup(s);
-+
-+ assert(s == NULL || ret != NULL);
-+ return ret;
-+}
-+
-+static size_t
-+read_file (const char *input, char **ret)
-+{
-+ FILE *in;
-+ size_t s;
-+ size_t sz = 2048;
-+ size_t offset = 0;
-+ char *text;
-+
-+ if (!strcmp(input, "-"))
-+ in = stdin;
-+ else
-+ in = fopen(input, "r");
-+
-+ text = xmalloc (sz);
-+
-+ if (!in)
-+ err(1, "cannot open `%s'", input);
-+
-+ while ((s = fread (text + offset, 1, sz - offset, in)) != 0)
-+ {
-+ offset += s;
-+ if (sz - offset == 0)
-+ {
-+ sz += 2048;
-+ text = xrealloc (text, sz);
-+ }
-+ }
-+
-+ text[offset] = '\0';
-+ *ret = text;
-+
-+ if (in != stdin)
-+ fclose(in);
-+
-+ return offset + 1;
-+}
-+
-+/* returns name/version/release */
-+/* NULL string pointer returned if nothing found */
-+static void
-+split_package_string (char *package_string, char **name,
-+ char **version, char **release)
-+{
-+ char *package_version, *package_release;
-+
-+ /* Release */
-+ package_release = strrchr (package_string, '-');
-+
-+ if (package_release != NULL)
-+ *package_release++ = '\0';
-+
-+ *release = package_release;
-+
-+ /* Version */
-+ package_version = strrchr(package_string, '-');
-+
-+ if (package_version != NULL)
-+ *package_version++ = '\0';
-+
-+ *version = package_version;
-+ /* Name */
-+ *name = package_string;
-+
-+ /* Bubble up non-null values from release to name */
-+ if (*name == NULL)
-+ {
-+ *name = (*version == NULL ? *release : *version);
-+ *version = *release;
-+ *release = NULL;
-+ }
-+ if (*version == NULL)
-+ {
-+ *version = *release;
-+ *release = NULL;
-+ }
-+}
-+
-+static int
-+cmprpmversp(const void *p1, const void *p2)
-+{
-+ return rpmvercmp(*(char * const *)p1, *(char * const *)p2);
-+}
-+
-+static int
-+cmpstrversp(const void *p1, const void *p2)
-+{
-+ return strverscmp(*(char * const *)p1, *(char * const *)p2);
-+}
-+
-+/*
-+ * package name-version-release comparator for qsort
-+ * expects p, q which are pointers to character strings (char *)
-+ * which will not be altered in this function
-+ */
-+static int
-+package_version_compare (const void *p, const void *q)
-+{
-+ char *local_p, *local_q;
-+ char *lhs_name, *lhs_version, *lhs_release;
-+ char *rhs_name, *rhs_version, *rhs_release;
-+ int vercmpflag = 0;
-+ int (*cmp)(const char *s1, const char *s2);
-+
-+ switch(comparitor)
-+ {
-+ default: /* just to shut up -Werror=maybe-uninitialized */
-+ case RPMNVRCMP:
-+ cmp = rpmvercmp;
-+ break;
-+ case VERSNVRCMP:
-+ cmp = strverscmp;
-+ break;
-+ case RPMVERCMP:
-+ return cmprpmversp(p, q);
-+ break;
-+ case STRVERSCMP:
-+ return cmpstrversp(p, q);
-+ break;
-+ }
-+
-+ local_p = alloca (strlen (*(char * const *)p) + 1);
-+ local_q = alloca (strlen (*(char * const *)q) + 1);
-+
-+ /* make sure these allocated */
-+ assert (local_p);
-+ assert (local_q);
-+
-+ strcpy (local_p, *(char * const *)p);
-+ strcpy (local_q, *(char * const *)q);
-+
-+ split_package_string (local_p, &lhs_name, &lhs_version, &lhs_release);
-+ split_package_string (local_q, &rhs_name, &rhs_version, &rhs_release);
-+
-+ /* Check Name and return if unequal */
-+ vercmpflag = cmp ((lhs_name == NULL ? "" : lhs_name),
-+ (rhs_name == NULL ? "" : rhs_name));
-+ if (vercmpflag != 0)
-+ return vercmpflag;
-+
-+ /* Check version and return if unequal */
-+ vercmpflag = cmp ((lhs_version == NULL ? "" : lhs_version),
-+ (rhs_version == NULL ? "" : rhs_version));
-+ if (vercmpflag != 0)
-+ return vercmpflag;
-+
-+ /* Check release and return the version compare value */
-+ vercmpflag = cmp ((lhs_release == NULL ? "" : lhs_release),
-+ (rhs_release == NULL ? "" : rhs_release));
-+
-+ return vercmpflag;
-+}
-+
-+static void
-+add_input (const char *filename, char ***package_names, size_t *n_package_names)
-+{
-+ char *orig_input_buffer = NULL;
-+ char *input_buffer;
-+ char *position_of_newline;
-+ char **names = *package_names;
-+ char **new_names = NULL;
-+ size_t n_names = *n_package_names;
-+
-+ if (!*package_names)
-+ new_names = names = xmalloc (sizeof (char *) * 2);
-+
-+ if (read_file (filename, &orig_input_buffer) < 2)
-+ {
-+ if (new_names)
-+ free (new_names);
-+ if (orig_input_buffer)
-+ free (orig_input_buffer);
-+ return;
-+ }
-+
-+ input_buffer = orig_input_buffer;
-+ while (input_buffer && *input_buffer &&
-+ (position_of_newline = strchrnul (input_buffer, '\n')))
-+ {
-+ size_t sz = position_of_newline - input_buffer;
-+ char *new;
-+
-+ if (sz == 0)
-+ {
-+ input_buffer = position_of_newline + 1;
-+ continue;
-+ }
-+
-+ new = xmalloc (sz+1);
-+ strncpy (new, input_buffer, sz);
-+ new[sz] = '\0';
-+
-+ names = xrealloc (names, sizeof (char *) * (n_names + 1));
-+ names[n_names] = new;
-+ n_names++;
-+
-+ /* move buffer ahead to next line */
-+ input_buffer = position_of_newline + 1;
-+ if (*position_of_newline == '\0')
-+ input_buffer = NULL;
-+ }
-+
-+ free (orig_input_buffer);
-+
-+ *package_names = names;
-+ *n_package_names = n_names;
-+}
-+
-+static char *
-+help_filter (int key, const char *text, void *input __attribute__ ((unused)))
-+{
-+ return (char *)text;
-+}
-+
-+static struct argp_option options[] = {
-+ { "comparitor", 'c', "COMPARITOR", 0, "[rpm-nvr-cmp|vers-nvr-cmp|rpmvercmp|strverscmp]", 0},
-+ { 0, }
-+};
-+
-+struct arguments
-+{
-+ size_t ninputs;
-+ size_t input_max;
-+ char **inputs;
-+};
-+
-+static error_t
-+argp_parser (int key, char *arg, struct argp_state *state)
-+{
-+ struct arguments *arguments = state->input;
-+ switch (key)
-+ {
-+ case 'c':
-+ if (!strcmp(arg, "rpm-nvr-cmp") || !strcmp(arg, "rpmnvrcmp"))
-+ comparitor = RPMNVRCMP;
-+ else if (!strcmp(arg, "vers-nvr-cmp") || !strcmp(arg, "versnvrcmp"))
-+ comparitor = VERSNVRCMP;
-+ else if (!strcmp(arg, "rpmvercmp"))
-+ comparitor = RPMVERCMP;
-+ else if (!strcmp(arg, "strverscmp"))
-+ comparitor = STRVERSCMP;
-+ else
-+ err(1, "Invalid comparitor \"%s\"", arg);
-+ break;
-+ case ARGP_KEY_ARG:
-+ assert (arguments->ninputs < arguments->input_max);
-+ arguments->inputs[arguments->ninputs++] = xstrdup (arg);
-+ break;
-+ default:
-+ return ARGP_ERR_UNKNOWN;
-+ }
-+ return 0;
-+}
-+
-+static struct argp argp = {
-+ options, argp_parser, "[INPUT_FILES]",
-+ "Sort a list of strings in RPM version sort order.",
-+ NULL, help_filter, NULL
-+};
-+
-+int
-+main (int argc, char *argv[])
-+{
-+ struct arguments arguments;
-+ char **package_names = NULL;
-+ size_t n_package_names = 0;
-+ int i;
-+
-+ memset (&arguments, 0, sizeof (struct arguments));
-+ arguments.input_max = argc+1;
-+ arguments.inputs = xmalloc ((arguments.input_max + 1)
-+ * sizeof (arguments.inputs[0]));
-+ memset (arguments.inputs, 0, (arguments.input_max + 1)
-+ * sizeof (arguments.inputs[0]));
-+
-+ /* Parse our arguments */
-+ if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0)
-+ errx(1, "%s", "Error in parsing command line arguments\n");
-+
-+ /* If there's no inputs in argv, add one for stdin */
-+ if (!arguments.ninputs)
-+ {
-+ arguments.ninputs = 1;
-+ arguments.inputs[0] = xmalloc (2);
-+ strcpy(arguments.inputs[0], "-");
-+ }
-+
-+ for (i = 0; i < arguments.ninputs; i++)
-+ add_input(arguments.inputs[i], &package_names, &n_package_names);
-+
-+ if (package_names == NULL || n_package_names < 1)
-+ errx(1, "Invalid input");
-+
-+ qsort (package_names, n_package_names, sizeof (char *),
-+ package_version_compare);
-+
-+ /* send sorted list to stdout */
-+ for (i = 0; i < n_package_names; i++)
-+ {
-+ fprintf (stdout, "%s\n", package_names[i]);
-+ free (package_names[i]);
-+ }
-+
-+ free (package_names);
-+ for (i = 0; i < arguments.ninputs; i++)
-+ free (arguments.inputs[i]);
-+
-+ free (arguments.inputs);
-+
-+ return 0;
-+}
-diff --git a/Makefile b/Makefile
-index cfa8e0d60ab..1ab58aeb039 100644
---- a/Makefile
-+++ b/Makefile
-@@ -29,7 +29,7 @@ LDFLAGS := $(RPM_LD_FLAGS)
-
- grubby_LIBS = -lblkid -lpopt
-
--all: grubby
-+all: grubby rpm-sort
-
- debug : clean
- $(MAKE) CFLAGS="${CFLAGS} -DDEBUG=1" all
-@@ -52,12 +52,17 @@ install: all
- install -m 755 grubby $(DESTDIR)$(PREFIX)$(sbindir) ; \
- install -m 644 grubby.8 $(DESTDIR)/$(mandir)/man8 ; \
- fi
-+ install -m 755 -d $(DESTDIR)$(PREFIX)$(libexecdir)/grubby/
-+ install -m 755 rpm-sort $(DESTDIR)$(PREFIX)$(libexecdir)/grubby/rpm-sort
-
- grubby:: $(OBJECTS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(grubby_LIBS)
-
-+rpm-sort::rpm-sort.o
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ -lrpm
-+
- clean:
-- rm -f *.o grubby *~
-+ rm -f *.o grubby rpm-sort *~
-
- GITTAG = $(VERSION)-1
-
-diff --git a/.gitignore b/.gitignore
-index e64d3bc0986..1a5a546eee3 100644
---- a/.gitignore
-+++ b/.gitignore
-@@ -1,3 +1,4 @@
- grubby
-+rpm-sort
- version.h
- *.o
---
-2.17.1
-
diff --git a/0009-Improve-man-page-for-info-option.patch b/0009-Improve-man-page-for-info-option.patch
deleted file mode 100644
index 742eb62..0000000
--- a/0009-Improve-man-page-for-info-option.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 64f91f29b03639b0726f0c46f004a20f11379e22 Mon Sep 17 00:00:00 2001
-From: Jan Stodola <jstodola(a)redhat.com>
-Date: Sat, 1 Dec 2018 02:33:23 +0100
-Subject: [PATCH] Improve man page for --info option
-
-1) commit 941d4a0b removed description of --info DEFAULT
-2) Add description of --info ALL
----
- grubby.8 | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/grubby.8 b/grubby.8
-index 355b6eb6908..9ffef895b0f 100644
---- a/grubby.8
-+++ b/grubby.8
-@@ -132,7 +132,10 @@ is the default on ia32 platforms.
-
- .TP
- \fB-\-info\fR=\fIkernel-path\fR
--Display information on all boot entries which match \fIkernel-path\fR. I
-+Display information on all boot entries which match \fIkernel-path\fR. If
-+\fIkernel-path\fR is \fBDEFAULT\fR, then information on the default kernel
-+is displayed. If \fIkernel-path\fR is \fBALL\fR, then information on all boot
-+entries are displayed.
-
- .TP
- \fB-\-initrd\fR=\fIinitrd-path\fR
---
-2.19.1
-
diff --git a/0010-Fix-GCC-warnings-about-possible-string-truncations-a.patch b/0010-Fix-GCC-warnings-about-possible-string-truncations-a.patch
deleted file mode 100644
index c4de866..0000000
--- a/0010-Fix-GCC-warnings-about-possible-string-truncations-a.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From 00241c65a5c0b4bb32a847a6abb5a86d0c704a8f Mon Sep 17 00:00:00 2001
-From: Javier Martinez Canillas <javierm(a)redhat.com>
-Date: Tue, 5 Feb 2019 20:08:43 +0100
-Subject: [PATCH] Fix GCC warnings about possible string truncations and buffer
- overflows
-
-Building with -Werror=stringop-truncation and -Werror=stringop-overflow
-leads to GCC complaining about possible string truncation and overflows.
-
-Fix this by using memcpy(), explicitly calculating the buffers lenghts
-and set a NUL byte terminator after copying the buffers.
-
-Signed-off-by: Javier Martinez Canillas <javierm(a)redhat.com>
----
- grubby.c | 35 +++++++++++++++++++++++++++--------
- 1 file changed, 27 insertions(+), 8 deletions(-)
-
-diff --git a/grubby.c b/grubby.c
-index 96d252a0a83..5ca689539cf 100644
---- a/grubby.c
-+++ b/grubby.c
-@@ -459,20 +459,26 @@ char *grub2ExtractTitle(struct singleLine * line) {
- snprintf(result, resultMaxSize, "%s", ++current);
-
- i++;
-+ int result_len = 0;
- for (; i < line->numElements; ++i) {
- current = line->elements[i].item;
- current_len = strlen(current);
- current_indent = line->elements[i].indent;
- current_indent_len = strlen(current_indent);
-
-- strncat(result, current_indent, current_indent_len);
-+ memcpy(result + result_len, current_indent, current_indent_len);
-+ result_len += current_indent_len;
-+
- if (!isquote(current[current_len-1])) {
-- strncat(result, current, current_len);
-+ memcpy(result + result_len, current_indent, current_indent_len);
-+ result_len += current_len;
- } else {
-- strncat(result, current, current_len - 1);
-+ memcpy(result + result_len, current_indent, current_indent_len);
-+ result_len += (current_len - 1);
- break;
- }
- }
-+ result[result_len] = '\0';
- return result;
- }
-
-@@ -1281,6 +1287,7 @@ static struct grubConfig * readConfig(const char * inName,
- extras = malloc(len + 1);
- *extras = '\0';
-
-+ int buf_len = 0;
- /* get title. */
- for (int i = 0; i < line->numElements; i++) {
- if (!strcmp(line->elements[i].item, "menuentry"))
-@@ -1292,13 +1299,18 @@ static struct grubConfig * readConfig(const char * inName,
-
- len = strlen(title);
- if (isquote(title[len-1])) {
-- strncat(buf, title,len-1);
-+ memcpy(buf + buf_len, title, len - 1);
-+ buf_len += (len - 1);
- break;
- } else {
-- strcat(buf, title);
-- strcat(buf, line->elements[i].indent);
-+ memcpy(buf + buf_len, title, len);
-+ buf_len += len;
-+ len = strlen(line->elements[i].indent);
-+ memcpy(buf + buf_len, line->elements[i].indent, len);
-+ buf_len += len;
- }
- }
-+ buf[buf_len] = '\0';
-
- /* get extras */
- int count = 0;
-@@ -4494,10 +4506,17 @@ int main(int argc, const char ** argv) {
- exit(1);
- }
- saved_command_line[0] = '\0';
-+ int cmdline_len = 0, arg_len;
- for (int j = 1; j < argc; j++) {
-- strcat(saved_command_line, argv[j]);
-- strncat(saved_command_line, j == argc -1 ? "" : " ", 1);
-+ arg_len = strlen(argv[j]);
-+ memcpy(saved_command_line + cmdline_len, argv[j], arg_len);
-+ cmdline_len += arg_len;
-+ if (j != argc - 1) {
-+ memcpy(saved_command_line + cmdline_len, " ", 1);
-+ cmdline_len++;
-+ }
- }
-+ saved_command_line[cmdline_len] = '\0';
-
- optCon = poptGetContext("grubby", argc, argv, options, 0);
- poptReadDefaultConfig(optCon, 1);
---
-2.20.1
-
diff --git a/0011-Fix-stringop-overflow-warning.patch b/0011-Fix-stringop-overflow-warning.patch
deleted file mode 100644
index 0fc4734..0000000
--- a/0011-Fix-stringop-overflow-warning.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From ed5e255c023c9b78120d9ff2246d6516f652d4b7 Mon Sep 17 00:00:00 2001
-From: Javier Martinez Canillas <javierm(a)redhat.com>
-Date: Mon, 10 Feb 2020 19:32:39 +0100
-Subject: [PATCH] Fix stringop-overflow warning
-
-GCC gives the following compile warning:
-
-grubby.c: In function 'main':
-grubby.c:4508:27: error: writing 1 byte into a region of size 0 [-Werror=stringop-overflow=]
- 4508 | saved_command_line[0] = '\0';
- | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~
-grubby.c:4503:26: note: at offset 0 to an object with size 0 allocated by 'malloc' here
- 4503 | saved_command_line = malloc(i);
- | ^~~~~~~~~
-cc1: all warnings being treated as errors
-make: *** [Makefile:38: grubby.o] Error 1
-
-Signed-off-by: Javier Martinez Canillas <javierm(a)redhat.com>
----
- grubby.c | 35 +++++++++++++++++++----------------
- 1 file changed, 19 insertions(+), 16 deletions(-)
-
-diff --git a/grubby.c b/grubby.c
-index 5ca689539cf..0c0f67a0ae5 100644
---- a/grubby.c
-+++ b/grubby.c
-@@ -4500,23 +4500,26 @@ int main(int argc, const char ** argv) {
- int i = 0;
- for (int j = 1; j < argc; j++)
- i += strlen(argv[j]) + 1;
-- saved_command_line = malloc(i);
-- if (!saved_command_line) {
-- fprintf(stderr, "grubby: %m\n");
-- exit(1);
-- }
-- saved_command_line[0] = '\0';
-- int cmdline_len = 0, arg_len;
-- for (int j = 1; j < argc; j++) {
-- arg_len = strlen(argv[j]);
-- memcpy(saved_command_line + cmdline_len, argv[j], arg_len);
-- cmdline_len += arg_len;
-- if (j != argc - 1) {
-- memcpy(saved_command_line + cmdline_len, " ", 1);
-- cmdline_len++;
-- }
-+
-+ if (i > 0) {
-+ saved_command_line = malloc(i);
-+ if (!saved_command_line) {
-+ fprintf(stderr, "grubby: %m\n");
-+ exit(1);
-+ }
-+ saved_command_line[0] = '\0';
-+ int cmdline_len = 0, arg_len;
-+ for (int j = 1; j < argc; j++) {
-+ arg_len = strlen(argv[j]);
-+ memcpy(saved_command_line + cmdline_len, argv[j], arg_len);
-+ cmdline_len += arg_len;
-+ if (j != argc - 1) {
-+ memcpy(saved_command_line + cmdline_len, " ", 1);
-+ cmdline_len++;
-+ }
-+ }
-+ saved_command_line[cmdline_len] = '\0';
- }
-- saved_command_line[cmdline_len] = '\0';
-
- optCon = poptGetContext("grubby", argc, argv, options, 0);
- poptReadDefaultConfig(optCon, 1);
---
-2.24.1
-
diff --git a/0012-Fix-maybe-uninitialized-warning.patch b/0012-Fix-maybe-uninitialized-warning.patch
deleted file mode 100644
index bcaa145..0000000
--- a/0012-Fix-maybe-uninitialized-warning.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From ee9f80190d4c458a09309fbd9a88d2756dc2d3fa Mon Sep 17 00:00:00 2001
-From: Javier Martinez Canillas <javierm(a)redhat.com>
-Date: Mon, 10 Feb 2020 20:13:13 +0100
-Subject: [PATCH] Fix maybe-uninitialized warning
-
-GCC gives the following compile warning:
-
-grubby.c: In function 'suseGrubConfGetBoot':
-grubby.c:2770:5: error: 'grubDevice' may be used uninitialized in this function [-Werror=maybe-uninitialized]
- 2770 | free(grubDevice);
- | ^~~~~~~~~~~~~~~~
-cc1: all warnings being treated as errors
-make: *** [Makefile:38: grubby.o] Error 1
-
-Signed-off-by: Javier Martinez Canillas <javierm(a)redhat.com>
----
- grubby.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/grubby.c b/grubby.c
-index 0c0f67a0ae5..779c25a2bf9 100644
---- a/grubby.c
-+++ b/grubby.c
-@@ -2755,7 +2755,7 @@ int grubGetBootFromDeviceMap(const char * device,
- }
-
- int suseGrubConfGetBoot(const char * path, char ** bootPtr) {
-- char * grubDevice;
-+ char * grubDevice = NULL;
-
- if (suseGrubConfGetInstallDevice(path, &grubDevice))
- dbgPrintf("error looking for grub installation device\n");
---
-2.24.1
-
diff --git a/0013-Fix-build-with-rpm-4.16.patch b/0013-Fix-build-with-rpm-4.16.patch
deleted file mode 100644
index 9c122b7..0000000
--- a/0013-Fix-build-with-rpm-4.16.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 1afddd618629a97479560bedbdcfa11b2c492a0e Mon Sep 17 00:00:00 2001
-From: Javier Martinez Canillas <javierm(a)redhat.com>
-Date: Fri, 26 Jun 2020 10:02:51 +0200
-Subject: [PATCH] Fix build with rpm-4.16
-
-rpmvercmp() was moved to librpmio, so link against this library instead.
-
-Signed-off-by: Javier Martinez Canillas <javierm(a)redhat.com>
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 1ab58aeb039..a54b053a30b 100644
---- a/Makefile
-+++ b/Makefile
-@@ -59,7 +59,7 @@ grubby:: $(OBJECTS)
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(grubby_LIBS)
-
- rpm-sort::rpm-sort.o
-- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ -lrpm
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ -lrpmio
-
- clean:
- rm -f *.o grubby rpm-sort *~
---
-2.26.2
-
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..f90922e
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/grubby.in b/grubby.in
deleted file mode 100644
index 023e595..0000000
--- a/grubby.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/bash
-if [[ -x @@LIBEXECDIR@@/grubby ]] ; then
- exec @@LIBEXECDIR@@/grubby "${@}"
-elif [[ -x @@LIBEXECDIR@@/grubby-bls ]] ; then
- exec @@LIBEXECDIR@@/grubby-bls "${@}"
-fi
-echo "Grubby is not installed correctly." >>/dev/stderr
-exit 1
diff --git a/grubby.spec b/grubby.spec
index abaa15d..b4c1faa 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -1,42 +1,27 @@
+# What? No.
+%define __brp_mangle_shebangs %{nil}
+
Name: grubby
Version: 8.40
-Release: 58%{?dist}
+Release: 59%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
-URL: https://github.com/rhinstaller/grubby
-# we only pull git snaps at the moment
-# git clone git@github.com:rhinstaller/grubby.git
-# git archive --format=tar --prefix=grubby-%%{version}/ HEAD |bzip2 > grubby-%%{version}.tar.bz2
-# Source0: %%{name}-%%{version}.tar.bz2
-Source0: https://github.com/rhboot/grubby/archive/%{version}-1.tar.gz
Source1: grubby-bls
-Source2: grubby.in
-Source3: installkernel.in
+Source2: rpm-sort.c
+Source3: COPYING
Source4: installkernel-bls
Source5: 95-kernel-hooks.install
Source6: 10-devicetree.install
Source7: grubby.8
-Patch0001: 0001-remove-the-old-crufty-u-boot-support.patch
-Patch0002: 0002-Change-return-type-in-getRootSpecifier.patch
-Patch0003: 0003-Add-btrfs-subvolume-support-for-grub2.patch
-Patch0004: 0004-Add-tests-for-btrfs-support.patch
-Patch0005: 0005-Use-system-LDFLAGS.patch
-Patch0006: 0006-Honor-sbindir.patch
-Patch0007: 0007-Make-installkernel-to-use-kernel-install-scripts-on-.patch
-Patch0008: 0008-Add-usr-libexec-rpm-sort.patch
-Patch0009: 0009-Improve-man-page-for-info-option.patch
-Patch0010: 0010-Fix-GCC-warnings-about-possible-string-truncations-a.patch
-Patch0011: 0011-Fix-stringop-overflow-warning.patch
-Patch0012: 0012-Fix-maybe-uninitialized-warning.patch
-Patch0013: 0013-Fix-build-with-rpm-4.16.patch
-
BuildRequires: gcc
-BuildRequires: pkgconfig glib2-devel popt-devel
-BuildRequires: libblkid-devel sed make
-# for make test / getopt:
-BuildRequires: util-linux-ng
+BuildRequires: glib2-devel
+BuildRequires: libblkid-devel
+BuildRequires: make
+BuildRequires: pkgconfig
+BuildRequires: popt-devel
BuildRequires: rpm-devel
+BuildRequires: sed
%ifarch aarch64 i686 x86_64 %{power64}
BuildRequires: grub2-tools-minimal
Requires: grub2-tools-minimal
@@ -57,27 +42,27 @@ BootLoaderSpec files and is meant to be backward compatible with
the previous grubby tool.
%prep
-%autosetup -p1 -n grubby-%{version}-1
+# Make sure the license can be found in mock
+cp %{SOURCE3} . || true
%build
%set_build_flags
-%make_build LDFLAGS="${LDFLAGS}"
+gcc ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -std=gnu99 -DVERSION='"8.4.0"' \
+ -o rpm-sort %{SOURCE2} -lrpmio
%install
-make install DESTDIR=$RPM_BUILD_ROOT mandir=%{_mandir} sbindir=%{_sbindir} libexecdir=%{_libexecdir}
-
-mkdir -p %{buildroot}%{_libexecdir}/{grubby,installkernel}/ %{buildroot}%{_sbindir}/
-install -m 0755 %{SOURCE1} %{buildroot}%{_libexecdir}/grubby/
-install -m 0755 %{SOURCE4} %{buildroot}%{_libexecdir}/installkernel/
-sed -e "s,@@LIBEXECDIR@@,%{_libexecdir}/grubby,g" %{SOURCE2} \
- > %{buildroot}%{_sbindir}/grubby
-sed -e "s,@@LIBEXECDIR@@,%{_libexecdir}/installkernel,g" %{SOURCE3} \
- > %{buildroot}%{_sbindir}/installkernel
+mkdir -p %{buildroot}%{_libexecdir}/grubby/
+install -D -m 0755 rpm-sort %{buildroot}%{_libexecdir}/grubby
+
+mkdir -p %{buildroot}%{_sbindir}/
+install -T -m 0755 %{SOURCE1} %{buildroot}%{_sbindir}/grubby
+install -T -m 0755 %{SOURCE4} %{buildroot}%{_sbindir}/installkernel
+
install -D -m 0755 -t %{buildroot}%{_prefix}/lib/kernel/install.d/ %{SOURCE5}
install -D -m 0755 -t %{buildroot}%{_prefix}/lib/kernel/install.d/ %{SOURCE6}
-rm %{buildroot}%{_mandir}/man8/{grubby,new-kernel-pkg}.8*
+
+mkdir -p %{buildroot}%{_mandir}/man8
install -m 0644 %{SOURCE7} %{buildroot}%{_mandir}/man8/
-rm %{buildroot}%{_sbindir}/new-kernel-pkg
%post
if [ "$1" = 2 ]; then
@@ -89,17 +74,17 @@ fi
%files
%license COPYING
%dir %{_libexecdir}/grubby
-%dir %{_libexecdir}/installkernel
-%attr(0755,root,root) %{_libexecdir}/grubby/grubby-bls
%attr(0755,root,root) %{_libexecdir}/grubby/rpm-sort
%attr(0755,root,root) %{_sbindir}/grubby
-%attr(0755,root,root) %{_libexecdir}/installkernel/installkernel-bls
%attr(0755,root,root) %{_sbindir}/installkernel
%attr(0755,root,root) %{_prefix}/lib/kernel/install.d/10-devicetree.install
%attr(0755,root,root) %{_prefix}/lib/kernel/install.d/95-kernel-hooks.install
-%{_mandir}/man8/[gi]*.8*
+%{_mandir}/man8/grubby.8*
%changelog
+* Wed Apr 27 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-59
+- Remove upstream and layers of indirection around -bls
+
* Thu Mar 10 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-58
- Remove grubby-deprecated
diff --git a/installkernel.in b/installkernel.in
deleted file mode 100644
index 87b81ee..0000000
--- a/installkernel.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/bash
-if [[ -x @@LIBEXECDIR@@/installkernel ]] ; then
- exec @@LIBEXECDIR@@/installkernel "${@}"
-elif [[ -x @@LIBEXECDIR@@/installkernel-bls ]] ; then
- exec @@LIBEXECDIR@@/installkernel-bls "${@}"
-fi
-echo "installkernel is not installed correctly." >>/dev/stderr
-exit 1
diff --git a/rpm-sort.c b/rpm-sort.c
new file mode 100644
index 0000000..f196356
--- /dev/null
+++ b/rpm-sort.c
@@ -0,0 +1,355 @@
+#define _GNU_SOURCE
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <errno.h>
+#include <assert.h>
+#include <argp.h>
+#include <rpm/rpmlib.h>
+#include <err.h>
+
+typedef enum {
+ RPMNVRCMP,
+ VERSNVRCMP,
+ RPMVERCMP,
+ STRVERSCMP,
+} comparitors;
+
+static comparitors comparitor = RPMNVRCMP;
+
+static inline void *xmalloc(size_t sz)
+{
+ void *ret = malloc(sz);
+
+ assert(sz == 0 || ret != NULL);
+ return ret;
+}
+
+static inline void *xrealloc(void *p, size_t sz)
+{
+ void *ret = realloc(p, sz);
+
+ assert(sz == 0 || ret != NULL);
+ return ret;
+}
+
+static inline char *xstrdup(const char * const s)
+{
+ void *ret = strdup(s);
+
+ assert(s == NULL || ret != NULL);
+ return ret;
+}
+
+static size_t
+read_file (const char *input, char **ret)
+{
+ FILE *in;
+ size_t s;
+ size_t sz = 2048;
+ size_t offset = 0;
+ char *text;
+
+ if (!strcmp(input, "-"))
+ in = stdin;
+ else
+ in = fopen(input, "r");
+
+ text = xmalloc (sz);
+
+ if (!in)
+ err(1, "cannot open `%s'", input);
+
+ while ((s = fread (text + offset, 1, sz - offset, in)) != 0)
+ {
+ offset += s;
+ if (sz - offset == 0)
+ {
+ sz += 2048;
+ text = xrealloc (text, sz);
+ }
+ }
+
+ text[offset] = '\0';
+ *ret = text;
+
+ if (in != stdin)
+ fclose(in);
+
+ return offset + 1;
+}
+
+/* returns name/version/release */
+/* NULL string pointer returned if nothing found */
+static void
+split_package_string (char *package_string, char **name,
+ char **version, char **release)
+{
+ char *package_version, *package_release;
+
+ /* Release */
+ package_release = strrchr (package_string, '-');
+
+ if (package_release != NULL)
+ *package_release++ = '\0';
+
+ *release = package_release;
+
+ /* Version */
+ package_version = strrchr(package_string, '-');
+
+ if (package_version != NULL)
+ *package_version++ = '\0';
+
+ *version = package_version;
+ /* Name */
+ *name = package_string;
+
+ /* Bubble up non-null values from release to name */
+ if (*name == NULL)
+ {
+ *name = (*version == NULL ? *release : *version);
+ *version = *release;
+ *release = NULL;
+ }
+ if (*version == NULL)
+ {
+ *version = *release;
+ *release = NULL;
+ }
+}
+
+static int
+cmprpmversp(const void *p1, const void *p2)
+{
+ return rpmvercmp(*(char * const *)p1, *(char * const *)p2);
+}
+
+static int
+cmpstrversp(const void *p1, const void *p2)
+{
+ return strverscmp(*(char * const *)p1, *(char * const *)p2);
+}
+
+/*
+ * package name-version-release comparator for qsort
+ * expects p, q which are pointers to character strings (char *)
+ * which will not be altered in this function
+ */
+static int
+package_version_compare (const void *p, const void *q)
+{
+ char *local_p, *local_q;
+ char *lhs_name, *lhs_version, *lhs_release;
+ char *rhs_name, *rhs_version, *rhs_release;
+ int vercmpflag = 0;
+ int (*cmp)(const char *s1, const char *s2);
+
+ switch(comparitor)
+ {
+ default: /* just to shut up -Werror=maybe-uninitialized */
+ case RPMNVRCMP:
+ cmp = rpmvercmp;
+ break;
+ case VERSNVRCMP:
+ cmp = strverscmp;
+ break;
+ case RPMVERCMP:
+ return cmprpmversp(p, q);
+ break;
+ case STRVERSCMP:
+ return cmpstrversp(p, q);
+ break;
+ }
+
+ local_p = alloca (strlen (*(char * const *)p) + 1);
+ local_q = alloca (strlen (*(char * const *)q) + 1);
+
+ /* make sure these allocated */
+ assert (local_p);
+ assert (local_q);
+
+ strcpy (local_p, *(char * const *)p);
+ strcpy (local_q, *(char * const *)q);
+
+ split_package_string (local_p, &lhs_name, &lhs_version, &lhs_release);
+ split_package_string (local_q, &rhs_name, &rhs_version, &rhs_release);
+
+ /* Check Name and return if unequal */
+ vercmpflag = cmp ((lhs_name == NULL ? "" : lhs_name),
+ (rhs_name == NULL ? "" : rhs_name));
+ if (vercmpflag != 0)
+ return vercmpflag;
+
+ /* Check version and return if unequal */
+ vercmpflag = cmp ((lhs_version == NULL ? "" : lhs_version),
+ (rhs_version == NULL ? "" : rhs_version));
+ if (vercmpflag != 0)
+ return vercmpflag;
+
+ /* Check release and return the version compare value */
+ vercmpflag = cmp ((lhs_release == NULL ? "" : lhs_release),
+ (rhs_release == NULL ? "" : rhs_release));
+
+ return vercmpflag;
+}
+
+static void
+add_input (const char *filename, char ***package_names, size_t *n_package_names)
+{
+ char *orig_input_buffer = NULL;
+ char *input_buffer;
+ char *position_of_newline;
+ char **names = *package_names;
+ char **new_names = NULL;
+ size_t n_names = *n_package_names;
+
+ if (!*package_names)
+ new_names = names = xmalloc (sizeof (char *) * 2);
+
+ if (read_file (filename, &orig_input_buffer) < 2)
+ {
+ if (new_names)
+ free (new_names);
+ if (orig_input_buffer)
+ free (orig_input_buffer);
+ return;
+ }
+
+ input_buffer = orig_input_buffer;
+ while (input_buffer && *input_buffer &&
+ (position_of_newline = strchrnul (input_buffer, '\n')))
+ {
+ size_t sz = position_of_newline - input_buffer;
+ char *new;
+
+ if (sz == 0)
+ {
+ input_buffer = position_of_newline + 1;
+ continue;
+ }
+
+ new = xmalloc (sz+1);
+ strncpy (new, input_buffer, sz);
+ new[sz] = '\0';
+
+ names = xrealloc (names, sizeof (char *) * (n_names + 1));
+ names[n_names] = new;
+ n_names++;
+
+ /* move buffer ahead to next line */
+ input_buffer = position_of_newline + 1;
+ if (*position_of_newline == '\0')
+ input_buffer = NULL;
+ }
+
+ free (orig_input_buffer);
+
+ *package_names = names;
+ *n_package_names = n_names;
+}
+
+static char *
+help_filter (int key, const char *text, void *input __attribute__ ((unused)))
+{
+ return (char *)text;
+}
+
+static struct argp_option options[] = {
+ { "comparitor", 'c', "COMPARITOR", 0, "[rpm-nvr-cmp|vers-nvr-cmp|rpmvercmp|strverscmp]", 0},
+ { 0, }
+};
+
+struct arguments
+{
+ size_t ninputs;
+ size_t input_max;
+ char **inputs;
+};
+
+static error_t
+argp_parser (int key, char *arg, struct argp_state *state)
+{
+ struct arguments *arguments = state->input;
+ switch (key)
+ {
+ case 'c':
+ if (!strcmp(arg, "rpm-nvr-cmp") || !strcmp(arg, "rpmnvrcmp"))
+ comparitor = RPMNVRCMP;
+ else if (!strcmp(arg, "vers-nvr-cmp") || !strcmp(arg, "versnvrcmp"))
+ comparitor = VERSNVRCMP;
+ else if (!strcmp(arg, "rpmvercmp"))
+ comparitor = RPMVERCMP;
+ else if (!strcmp(arg, "strverscmp"))
+ comparitor = STRVERSCMP;
+ else
+ err(1, "Invalid comparitor \"%s\"", arg);
+ break;
+ case ARGP_KEY_ARG:
+ assert (arguments->ninputs < arguments->input_max);
+ arguments->inputs[arguments->ninputs++] = xstrdup (arg);
+ break;
+ default:
+ return ARGP_ERR_UNKNOWN;
+ }
+ return 0;
+}
+
+static struct argp argp = {
+ options, argp_parser, "[INPUT_FILES]",
+ "Sort a list of strings in RPM version sort order.",
+ NULL, help_filter, NULL
+};
+
+int
+main (int argc, char *argv[])
+{
+ struct arguments arguments;
+ char **package_names = NULL;
+ size_t n_package_names = 0;
+ int i;
+
+ memset (&arguments, 0, sizeof (struct arguments));
+ arguments.input_max = argc+1;
+ arguments.inputs = xmalloc ((arguments.input_max + 1)
+ * sizeof (arguments.inputs[0]));
+ memset (arguments.inputs, 0, (arguments.input_max + 1)
+ * sizeof (arguments.inputs[0]));
+
+ /* Parse our arguments */
+ if (argp_parse (&argp, argc, argv, 0, 0, &arguments) != 0)
+ errx(1, "%s", "Error in parsing command line arguments\n");
+
+ /* If there's no inputs in argv, add one for stdin */
+ if (!arguments.ninputs)
+ {
+ arguments.ninputs = 1;
+ arguments.inputs[0] = xmalloc (2);
+ strcpy(arguments.inputs[0], "-");
+ }
+
+ for (i = 0; i < arguments.ninputs; i++)
+ add_input(arguments.inputs[i], &package_names, &n_package_names);
+
+ if (package_names == NULL || n_package_names < 1)
+ errx(1, "Invalid input");
+
+ qsort (package_names, n_package_names, sizeof (char *),
+ package_version_compare);
+
+ /* send sorted list to stdout */
+ for (i = 0; i < n_package_names; i++)
+ {
+ fprintf (stdout, "%s\n", package_names[i]);
+ free (package_names[i]);
+ }
+
+ free (package_names);
+ for (i = 0; i < arguments.ninputs; i++)
+ free (arguments.inputs[i]);
+
+ free (arguments.inputs);
+
+ return 0;
+}
diff --git a/sources b/sources
deleted file mode 100644
index 0f5ce7f..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (8.40-1.tar.gz) = 956ea6ccec2e7285fc8ebbf1d7659c4f41b1e9eda913d99a9712af9103144a13e66e93dce4c089b64ab370d1fed63656e922eafb88a0a39f843a6a6d166f72c5
commit 1bc3038166287bb9607e3978130038a352952233
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Tue Mar 15 16:06:36 2022 -0400
Add missing changelog (Remove grubby-deprecated)
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby.spec b/grubby.spec
index e7dea0e..abaa15d 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -100,6 +100,9 @@ fi
%{_mandir}/man8/[gi]*.8*
%changelog
+* Thu Mar 10 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-58
+- Remove grubby-deprecated
+
* Mon Feb 07 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-57
- grubby-bls: wire up -h (help)
commit 59ba93105a271b1c1047b2947befa9f1f4042d9d
Author: Robbie Harwood <rharwood(a)redhat.com>
Date: Thu Mar 10 20:40:02 2022 +0000
grubby-bls: wire up -h (help)
Signed-off-by: Robbie Harwood <rharwood(a)redhat.com>
diff --git a/grubby.spec b/grubby.spec
index 06c849c..e7dea0e 100644
--- a/grubby.spec
+++ b/grubby.spec
@@ -1,6 +1,6 @@
Name: grubby
Version: 8.40
-Release: 57%{?dist}
+Release: 58%{?dist}
Summary: Command line tool for updating bootloader configs
License: GPLv2+
URL: https://github.com/rhinstaller/grubby
@@ -63,17 +63,10 @@ the previous grubby tool.
%set_build_flags
%make_build LDFLAGS="${LDFLAGS}"
-%ifnarch aarch64 %{arm}
-%check
-make test
-%endif
-
%install
make install DESTDIR=$RPM_BUILD_ROOT mandir=%{_mandir} sbindir=%{_sbindir} libexecdir=%{_libexecdir}
mkdir -p %{buildroot}%{_libexecdir}/{grubby,installkernel}/ %{buildroot}%{_sbindir}/
-mv -v %{buildroot}%{_sbindir}/grubby %{buildroot}%{_libexecdir}/grubby/grubby
-mv -v %{buildroot}%{_sbindir}/installkernel %{buildroot}%{_libexecdir}/installkernel/installkernel
install -m 0755 %{SOURCE1} %{buildroot}%{_libexecdir}/grubby/
install -m 0755 %{SOURCE4} %{buildroot}%{_libexecdir}/installkernel/
sed -e "s,@@LIBEXECDIR@@,%{_libexecdir}/grubby,g" %{SOURCE2} \
@@ -82,8 +75,9 @@ sed -e "s,@@LIBEXECDIR@@,%{_libexecdir}/installkernel,g" %{SOURCE3} \
> %{buildroot}%{_sbindir}/installkernel
install -D -m 0755 -t %{buildroot}%{_prefix}/lib/kernel/install.d/ %{SOURCE5}
install -D -m 0755 -t %{buildroot}%{_prefix}/lib/kernel/install.d/ %{SOURCE6}
-rm %{buildroot}%{_mandir}/man8/grubby.8*
+rm %{buildroot}%{_mandir}/man8/{grubby,new-kernel-pkg}.8*
install -m 0644 %{SOURCE7} %{buildroot}%{_mandir}/man8/
+rm %{buildroot}%{_sbindir}/new-kernel-pkg
%post
if [ "$1" = 2 ]; then
@@ -92,20 +86,6 @@ if [ "$1" = 2 ]; then
zipl-switch-to-blscfg --backup-suffix=.rpmsave &>/dev/null || :
fi
-%package deprecated
-Summary: Legacy command line tool for updating bootloader configs
-Conflicts: %{name} <= 8.40-18
-
-%description deprecated
-This package provides deprecated, legacy grubby. This is for temporary
-compatibility only.
-
-grubby is a command line tool for updating and displaying information about
-the configuration files for the grub, lilo, elilo (ia64), yaboot (powerpc)
-and zipl (s390) boot loaders. It is primarily designed to be used from
-scripts which install new kernels and need to find information about the
-current boot environment.
-
%files
%license COPYING
%dir %{_libexecdir}/grubby
@@ -119,17 +99,6 @@ current boot environment.
%attr(0755,root,root) %{_prefix}/lib/kernel/install.d/95-kernel-hooks.install
%{_mandir}/man8/[gi]*.8*
-%files deprecated
-%license COPYING
-%dir %{_libexecdir}/grubby
-%dir %{_libexecdir}/installkernel
-%attr(0755,root,root) %{_libexecdir}/grubby/grubby
-%attr(0755,root,root) %{_libexecdir}/installkernel/installkernel
-%attr(0755,root,root) %{_sbindir}/grubby
-%attr(0755,root,root) %{_sbindir}/installkernel
-%attr(0755,root,root) %{_sbindir}/new-kernel-pkg
- %{_mandir}/man8/*.8*
-
%changelog
* Mon Feb 07 2022 Robbie Harwood <rharwood(a)redhat.com> - 8.40-57
- grubby-bls: wire up -h (help)
1 year, 10 months
Architecture specific change in rpms/go-rpm-macros.git
by githook-noreply@fedoraproject.org
The package rpms/go-rpm-macros.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/go-rpm-macros.git/commit/?id=e834....
Change:
+%ifarch %{golang_arches} %{gccgo_arches}
Thanks.
Full change:
============
commit 3facfd13e8427455de1b1878bed1f67cb6b6d692
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:37:34 2022 -0500
Convert top level license to SPDX.
Leave "Public Domain" subpackage for now.
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index b498414..1582213 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -22,7 +22,7 @@ Name: go-rpm-macros
Release: %autorelease
Summary: Build-stage rpm automation for Go packages
-License: GPLv3+
+License: GPL-3.0-or-later
URL: %{forgeurl}
Source: %{forgesource}
commit 8b2cbc54e02007c00087a5c52537dca053b94b65
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:29:10 2022 -0500
Stop installing duplicate go-compilers macros
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 9469b86..b498414 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -116,7 +116,7 @@ install -m 0644 -vp templates/rpm/*spec \
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 bin/* %{buildroot}%{_bindir}
-install -m 0644 -vp rpm/macros.d/macros.go-* \
+install -m 0644 -vp rpm/macros.d/macros.go-*rpm* \
%{buildroot}%{rpmmacrodir}
install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/rpm
install -m 0644 -vp rpm/lua/rpm/*lua \
@@ -132,13 +132,13 @@ install -m 0644 -vp rpm/macros.d/macros.go-srpm \
%endif
%ifarch %{golang_arches}
-install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang \
- %{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-golang
+install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang{,-pie} \
+ %{buildroot}%{_rpmconfigdir}/macros.d/
%endif
%ifarch %{gccgo_arches}
install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
- %{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-gcc
+ %{buildroot}%{_rpmconfigdir}/macros.d/
%endif
%ifarch %{golang_arches} %{gccgo_arches}
commit 94eb8c3c37bef5b08080dab70b8432ef9fb9c4c3
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:25:15 2022 -0500
Update to 3.1.0.
diff --git a/.gitignore b/.gitignore
index 122a2b4..374791e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/go-rpm-macros-3.0.13.tar.gz
/go-rpm-macros-3.0.14.tar.gz
/go-rpm-macros-3.0.15.tar.gz
+/go-rpm-macros-3.1.0.tar.gz
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 1217f8f..9469b86 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -1,5 +1,5 @@
%global forgeurl https://pagure.io/go-rpm-macros
-Version: 3.0.15
+Version: 3.1.0
%forgemeta
#https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/51
diff --git a/sources b/sources
index 03ed2eb..a551685 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (go-rpm-macros-3.0.15.tar.gz) = 5a0c35438fde55c209d5586a2491b07f1278ab5b8f809cca04a1a4e59eb07ca8873321e4aeedd250de64931240921280d574e69e5fbc6777a955e9a71234f85e
+SHA512 (go-rpm-macros-3.1.0.tar.gz) = 250124012583875f30907a4bb889b547cf0d13c87283b13525da5544663c50fb3be1bb7e62326816685b9a76642964403534be5874bf142c6dbe0abdad77ab08
commit b98334becd4c52e98e433e17118f9bf0e27903cc
Author: Maxwell G <gotmax(a)e.email>
Date: Sat Jul 30 01:15:20 2022 +0200
Add %%golang_arches_future macro
This introduces a new %%golang_arches_future macro so packagers can
replace ExclusvieArch: %%go_arches or %%golang_arches with it to exclude
their package from %ix86.
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index f43d89b..1217f8f 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -7,7 +7,8 @@ Version: 3.0.15
%global _docdir_fmt %{name}
# Master definition that will be written to macro files
-%global golang_arches %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
+%global golang_arches_future x86_64 %{arm} aarch64 ppc64le s390x
+%global golang_arches %{ix86} %{golang_arches_future}
%global gccgo_arches %{mips}
%if 0%{?rhel} >= 9
%global golang_arches x86_64 aarch64 ppc64le s390x
@@ -85,8 +86,8 @@ This package contains documented rpm spec templates showcasing how to use the
macros provided by go-rpm-macros to create Go packages.
%prep
-%forgeautosetup
-%writevars -f rpm/macros.d/macros.go-srpm golang_arches gccgo_arches gopath
+%forgeautosetup -p1
+%writevars -f rpm/macros.d/macros.go-srpm golang_arches golang_arches_future gccgo_arches gopath
for template in templates/rpm/*\.spec ; do
target=$(echo "${template}" | sed "s|^\(.*\)\.spec$|\1-bare.spec|g")
grep -v '^#' "${template}" > "${target}"
commit cbb9f295fd92b3621e0237302ccfdcd7cd2922b4
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jul 21 07:13:11 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
commit e8344ba3bf1b9274c6a0835c2660197327ae866c
Author: Miro Hrončok <miro(a)hroncok.cz>
Date: Fri Mar 25 19:36:52 2022 +0100
Drop ExclusiveArch, always build go-srpm-macros and go-filesystem
Fixes https://github.com/fedora-eln/eln/issues/80
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 61cac84..f43d89b 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -17,8 +17,6 @@ Version: 3.0.15
# make Go devel packages archful
%global gopath %{_datadir}/gocode
-ExclusiveArch: %{golang_arches} %{gccgo_arches}
-
Name: go-rpm-macros
Release: %autorelease
Summary: Build-stage rpm automation for Go packages
@@ -77,7 +75,7 @@ This package contains the basic directory layout used by Go packages.
%package -n go-rpm-templates
Summary: RPM spec templates for Go packages
License: MIT
-BuildArch: noarch
+# go-rpm-macros only exists on some architectures, so this package cannot be noarch
Requires: go-rpm-macros = %{version}-%{release}
#https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/51
#Requires: redhat-rpm-templates
@@ -96,6 +94,13 @@ for template in templates/rpm/*\.spec ; do
done
%install
+install -m 0755 -vd %{buildroot}%{rpmmacrodir}
+
+install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/srpm
+install -m 0644 -vp rpm/lua/srpm/*lua \
+ %{buildroot}%{_rpmluadir}/fedora/srpm
+
+%ifarch %{golang_arches} %{gccgo_arches}
# Some of those probably do not work with gcc-go right now
# This is not intentional, but mips is not a primary Fedora architecture
# Patches and PRs are welcome
@@ -110,12 +115,8 @@ install -m 0644 -vp templates/rpm/*spec \
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 bin/* %{buildroot}%{_bindir}
-install -m 0755 -vd %{buildroot}%{rpmmacrodir}
install -m 0644 -vp rpm/macros.d/macros.go-* \
%{buildroot}%{rpmmacrodir}
-install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/srpm
-install -m 0644 -vp rpm/lua/srpm/*lua \
- %{buildroot}%{_rpmluadir}/fedora/srpm
install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/rpm
install -m 0644 -vp rpm/lua/rpm/*lua \
%{buildroot}%{_rpmluadir}/fedora/rpm
@@ -124,6 +125,10 @@ install -m 0644 -vp rpm/fileattrs/*.attr \
%{buildroot}%{_rpmconfigdir}/fileattrs/
install -m 0755 -vp rpm/*\.{prov,deps} \
%{buildroot}%{_rpmconfigdir}/
+%else
+install -m 0644 -vp rpm/macros.d/macros.go-srpm \
+ %{buildroot}%{rpmmacrodir}
+%endif
%ifarch %{golang_arches}
install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang \
@@ -135,6 +140,7 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-gcc
%endif
+%ifarch %{golang_arches} %{gccgo_arches}
%files
%license LICENSE.txt
%doc README.md
@@ -146,16 +152,6 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%{_rpmconfigdir}/macros.d/macros.go-compiler*
%{_rpmluadir}/fedora/rpm/*.lua
-%files -n go-srpm-macros
-%license LICENSE.txt
-%doc README.md
-%{_rpmconfigdir}/macros.d/macros.go-srpm
-%{_rpmluadir}/fedora/srpm/*.lua
-
-%files -n go-filesystem
-%dir %{gopath}
-%dir %{gopath}/src
-
%files -n go-rpm-templates
%license LICENSE-templates.txt
%doc README.md
@@ -164,5 +160,19 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%dir %{_spectemplatedir}
%{_spectemplatedir}/*.spec
+%files -n go-filesystem
+%dir %{gopath}
+%dir %{gopath}/src
+%endif
+
+# we only build go-srpm-macros on all architectures
+%files -n go-srpm-macros
+%license LICENSE.txt
+%doc README.md
+%{_rpmconfigdir}/macros.d/macros.go-srpm
+%{_rpmluadir}/fedora/srpm/*.lua
+
+
+
%changelog
%autochangelog
1 year, 10 months
Architecture specific change in rpms/go-rpm-macros.git
by githook-noreply@fedoraproject.org
The package rpms/go-rpm-macros.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/go-rpm-macros.git/commit/?id=e834....
Change:
+%ifarch %{golang_arches} %{gccgo_arches}
Thanks.
Full change:
============
commit 3facfd13e8427455de1b1878bed1f67cb6b6d692
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:37:34 2022 -0500
Convert top level license to SPDX.
Leave "Public Domain" subpackage for now.
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index b498414..1582213 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -22,7 +22,7 @@ Name: go-rpm-macros
Release: %autorelease
Summary: Build-stage rpm automation for Go packages
-License: GPLv3+
+License: GPL-3.0-or-later
URL: %{forgeurl}
Source: %{forgesource}
commit 8b2cbc54e02007c00087a5c52537dca053b94b65
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:29:10 2022 -0500
Stop installing duplicate go-compilers macros
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 9469b86..b498414 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -116,7 +116,7 @@ install -m 0644 -vp templates/rpm/*spec \
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 bin/* %{buildroot}%{_bindir}
-install -m 0644 -vp rpm/macros.d/macros.go-* \
+install -m 0644 -vp rpm/macros.d/macros.go-*rpm* \
%{buildroot}%{rpmmacrodir}
install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/rpm
install -m 0644 -vp rpm/lua/rpm/*lua \
@@ -132,13 +132,13 @@ install -m 0644 -vp rpm/macros.d/macros.go-srpm \
%endif
%ifarch %{golang_arches}
-install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang \
- %{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-golang
+install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang{,-pie} \
+ %{buildroot}%{_rpmconfigdir}/macros.d/
%endif
%ifarch %{gccgo_arches}
install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
- %{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-gcc
+ %{buildroot}%{_rpmconfigdir}/macros.d/
%endif
%ifarch %{golang_arches} %{gccgo_arches}
commit 94eb8c3c37bef5b08080dab70b8432ef9fb9c4c3
Author: Maxwell G <gotmax(a)e.email>
Date: Mon Aug 8 09:25:15 2022 -0500
Update to 3.1.0.
diff --git a/.gitignore b/.gitignore
index 122a2b4..374791e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/go-rpm-macros-3.0.13.tar.gz
/go-rpm-macros-3.0.14.tar.gz
/go-rpm-macros-3.0.15.tar.gz
+/go-rpm-macros-3.1.0.tar.gz
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 1217f8f..9469b86 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -1,5 +1,5 @@
%global forgeurl https://pagure.io/go-rpm-macros
-Version: 3.0.15
+Version: 3.1.0
%forgemeta
#https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/51
diff --git a/sources b/sources
index 03ed2eb..a551685 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (go-rpm-macros-3.0.15.tar.gz) = 5a0c35438fde55c209d5586a2491b07f1278ab5b8f809cca04a1a4e59eb07ca8873321e4aeedd250de64931240921280d574e69e5fbc6777a955e9a71234f85e
+SHA512 (go-rpm-macros-3.1.0.tar.gz) = 250124012583875f30907a4bb889b547cf0d13c87283b13525da5544663c50fb3be1bb7e62326816685b9a76642964403534be5874bf142c6dbe0abdad77ab08
commit b98334becd4c52e98e433e17118f9bf0e27903cc
Author: Maxwell G <gotmax(a)e.email>
Date: Sat Jul 30 01:15:20 2022 +0200
Add %%golang_arches_future macro
This introduces a new %%golang_arches_future macro so packagers can
replace ExclusvieArch: %%go_arches or %%golang_arches with it to exclude
their package from %ix86.
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index f43d89b..1217f8f 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -7,7 +7,8 @@ Version: 3.0.15
%global _docdir_fmt %{name}
# Master definition that will be written to macro files
-%global golang_arches %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
+%global golang_arches_future x86_64 %{arm} aarch64 ppc64le s390x
+%global golang_arches %{ix86} %{golang_arches_future}
%global gccgo_arches %{mips}
%if 0%{?rhel} >= 9
%global golang_arches x86_64 aarch64 ppc64le s390x
@@ -85,8 +86,8 @@ This package contains documented rpm spec templates showcasing how to use the
macros provided by go-rpm-macros to create Go packages.
%prep
-%forgeautosetup
-%writevars -f rpm/macros.d/macros.go-srpm golang_arches gccgo_arches gopath
+%forgeautosetup -p1
+%writevars -f rpm/macros.d/macros.go-srpm golang_arches golang_arches_future gccgo_arches gopath
for template in templates/rpm/*\.spec ; do
target=$(echo "${template}" | sed "s|^\(.*\)\.spec$|\1-bare.spec|g")
grep -v '^#' "${template}" > "${target}"
commit cbb9f295fd92b3621e0237302ccfdcd7cd2922b4
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Thu Jul 21 07:13:11 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
commit e8344ba3bf1b9274c6a0835c2660197327ae866c
Author: Miro Hrončok <miro(a)hroncok.cz>
Date: Fri Mar 25 19:36:52 2022 +0100
Drop ExclusiveArch, always build go-srpm-macros and go-filesystem
Fixes https://github.com/fedora-eln/eln/issues/80
diff --git a/go-rpm-macros.spec b/go-rpm-macros.spec
index 61cac84..f43d89b 100644
--- a/go-rpm-macros.spec
+++ b/go-rpm-macros.spec
@@ -17,8 +17,6 @@ Version: 3.0.15
# make Go devel packages archful
%global gopath %{_datadir}/gocode
-ExclusiveArch: %{golang_arches} %{gccgo_arches}
-
Name: go-rpm-macros
Release: %autorelease
Summary: Build-stage rpm automation for Go packages
@@ -77,7 +75,7 @@ This package contains the basic directory layout used by Go packages.
%package -n go-rpm-templates
Summary: RPM spec templates for Go packages
License: MIT
-BuildArch: noarch
+# go-rpm-macros only exists on some architectures, so this package cannot be noarch
Requires: go-rpm-macros = %{version}-%{release}
#https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/51
#Requires: redhat-rpm-templates
@@ -96,6 +94,13 @@ for template in templates/rpm/*\.spec ; do
done
%install
+install -m 0755 -vd %{buildroot}%{rpmmacrodir}
+
+install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/srpm
+install -m 0644 -vp rpm/lua/srpm/*lua \
+ %{buildroot}%{_rpmluadir}/fedora/srpm
+
+%ifarch %{golang_arches} %{gccgo_arches}
# Some of those probably do not work with gcc-go right now
# This is not intentional, but mips is not a primary Fedora architecture
# Patches and PRs are welcome
@@ -110,12 +115,8 @@ install -m 0644 -vp templates/rpm/*spec \
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 bin/* %{buildroot}%{_bindir}
-install -m 0755 -vd %{buildroot}%{rpmmacrodir}
install -m 0644 -vp rpm/macros.d/macros.go-* \
%{buildroot}%{rpmmacrodir}
-install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/srpm
-install -m 0644 -vp rpm/lua/srpm/*lua \
- %{buildroot}%{_rpmluadir}/fedora/srpm
install -m 0755 -vd %{buildroot}%{_rpmluadir}/fedora/rpm
install -m 0644 -vp rpm/lua/rpm/*lua \
%{buildroot}%{_rpmluadir}/fedora/rpm
@@ -124,6 +125,10 @@ install -m 0644 -vp rpm/fileattrs/*.attr \
%{buildroot}%{_rpmconfigdir}/fileattrs/
install -m 0755 -vp rpm/*\.{prov,deps} \
%{buildroot}%{_rpmconfigdir}/
+%else
+install -m 0644 -vp rpm/macros.d/macros.go-srpm \
+ %{buildroot}%{rpmmacrodir}
+%endif
%ifarch %{golang_arches}
install -m 0644 -vp rpm/macros.d/macros.go-compilers-golang \
@@ -135,6 +140,7 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%{buildroot}%{_rpmconfigdir}/macros.d/macros.go-compiler-gcc
%endif
+%ifarch %{golang_arches} %{gccgo_arches}
%files
%license LICENSE.txt
%doc README.md
@@ -146,16 +152,6 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%{_rpmconfigdir}/macros.d/macros.go-compiler*
%{_rpmluadir}/fedora/rpm/*.lua
-%files -n go-srpm-macros
-%license LICENSE.txt
-%doc README.md
-%{_rpmconfigdir}/macros.d/macros.go-srpm
-%{_rpmluadir}/fedora/srpm/*.lua
-
-%files -n go-filesystem
-%dir %{gopath}
-%dir %{gopath}/src
-
%files -n go-rpm-templates
%license LICENSE-templates.txt
%doc README.md
@@ -164,5 +160,19 @@ install -m 0644 -vp rpm/macros.d/macros.go-compilers-gcc \
%dir %{_spectemplatedir}
%{_spectemplatedir}/*.spec
+%files -n go-filesystem
+%dir %{gopath}
+%dir %{gopath}/src
+%endif
+
+# we only build go-srpm-macros on all architectures
+%files -n go-srpm-macros
+%license LICENSE.txt
+%doc README.md
+%{_rpmconfigdir}/macros.d/macros.go-srpm
+%{_rpmluadir}/fedora/srpm/*.lua
+
+
+
%changelog
%autochangelog
1 year, 10 months
Architecture specific change in rpms/rust-bytestring.git
by githook-noreply@fedoraproject.org
The package rpms/rust-bytestring.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-bytestring.git/commit/?id=68...
https://src.fedoraproject.org/cgit/rpms/rust-bytestring.git/commit/?id=d1....
Change:
+ExclusiveArch: %{rust_arches}
-ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit 9da410f282e670e7df1f89d475287cdbd45b978f
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Mon Aug 8 15:56:37 2022 +0200
Update to version 1.1.0; Fixes RHBZ#2095969
diff --git a/.gitignore b/.gitignore
index 5a7e942..81eff55 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/bytestring-0.1.4.crate
/bytestring-0.1.5.crate
/bytestring-1.0.0.crate
+/bytestring-1.1.0.crate
diff --git a/bytestring-fix-metadata.diff b/bytestring-fix-metadata.diff
deleted file mode 100644
index 5147684..0000000
--- a/bytestring-fix-metadata.diff
+++ /dev/null
@@ -1,9 +0,0 @@
---- bytestring-1.0.0/Cargo.toml 2020-12-31T02:31:22+00:00
-+++ bytestring-1.0.0/Cargo.toml 2021-07-20T22:33:58.979591+00:00
-@@ -32,3 +32,6 @@
- [dependencies.serde]
- version = "1.0"
- optional = true
-+
-+[dev-dependencies.siphasher]
-+version = "0.3"
diff --git a/rust-bytestring.spec b/rust-bytestring.spec
index 4836e2d..452a391 100644
--- a/rust-bytestring.spec
+++ b/rust-bytestring.spec
@@ -1,28 +1,22 @@
-# Generated by rust2rpm 18
-%bcond_without check
+# Generated by rust2rpm 22
+# * tests can only be run in-tree
+%bcond_with check
%global debug_package %{nil}
%global crate bytestring
-Name: rust-%{crate}
-Version: 1.0.0
+Name: rust-bytestring
+Version: 1.1.0
Release: %autorelease
Summary: Immutable UTF-8 encoded string using Bytes as storage
-# Upstream license specification: MIT OR Apache-2.0
-License: MIT or ASL 2.0
+License: MIT OR Apache-2.0
URL: https://crates.io/crates/bytestring
Source: %{crates_source}
-# Initial patched metadata
-# * add missing siphasher dev-dependency
-Patch0: bytestring-fix-metadata.diff
ExclusiveArch: %{rust_arches}
-%if %{__cargo_skip_build}
-BuildArch: noarch
-%endif
-BuildRequires: rust-packaging
+BuildRequires: rust-packaging >= 21
%global _description %{expand:
Immutable UTF-8 encoded string using Bytes as storage.}
@@ -35,13 +29,14 @@ BuildArch: noarch
%description devel %{_description}
-This package contains library source intended for building other packages
-which use "%{crate}" crate.
+This package contains library source intended for building other packages which
+use the "%{crate}" crate.
%files devel
-%license LICENSE-MIT LICENSE-APACHE
-%doc CHANGES.md
-%{cargo_registry}/%{crate}-%{version_no_tilde}/
+%license %{crate_instdir}/LICENSE-APACHE
+%license %{crate_instdir}/LICENSE-MIT
+%doc %{crate_instdir}/CHANGES.md
+%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
@@ -49,11 +44,11 @@ BuildArch: noarch
%description -n %{name}+default-devel %{_description}
-This package contains library source intended for building other packages
-which use "default" feature of "%{crate}" crate.
+This package contains library source intended for building other packages which
+use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+serde-devel
Summary: %{summary}
@@ -61,11 +56,11 @@ BuildArch: noarch
%description -n %{name}+serde-devel %{_description}
-This package contains library source intended for building other packages
-which use "serde" feature of "%{crate}" crate.
+This package contains library source intended for building other packages which
+use the "serde" feature of the "%{crate}" crate.
%files -n %{name}+serde-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
diff --git a/sources b/sources
index 2030eb3..3dbdcdf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (bytestring-1.0.0.crate) = 47563ba32263c334c1ab42e4331f090bc2c5d2c938dd9664037cc52665f37217a538d09545d252e55971543645253ef022bea404f0f871cb85a043bb82a872f5
+SHA512 (bytestring-1.1.0.crate) = 6f6b96a6a9022ac2a06221f13fed43685b4481a6df2bfea5d585d24e5033c7d1ebd504d2d3331139955a93effc917229686271ba350ad3e01f4baca121432193
commit dde0d096d85eb185fb45546b16ecab1acbc243ab
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Sat Jul 23 03:06:35 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
commit 144444eda0cb388e0a3fb6295abecc292dfe8a6b
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Fri Jan 21 20:00:18 2022 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
commit 68fdfe9151aae4b6e53f6a686eae3df1f67c19ae
Author: Tomas Hrcka <thrcka(a)redhat.com>
Date: Tue Dec 7 14:05:38 2021 +0100
Unretirement request
https://pagure.io/releng/issue/10436
Signed-off-by: Tomas Hrcka <thrcka(a)redhat.com>
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..5a7e942
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+/bytestring-0.1.1.crate
+/bytestring-0.1.2.crate
+/bytestring-0.1.4.crate
+/bytestring-0.1.5.crate
+/bytestring-1.0.0.crate
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..5fb8386
--- /dev/null
+++ b/README.md
@@ -0,0 +1,3 @@
+# rust-bytestring
+
+The rust-bytestring package
\ No newline at end of file
diff --git a/bytestring-fix-metadata.diff b/bytestring-fix-metadata.diff
new file mode 100644
index 0000000..5147684
--- /dev/null
+++ b/bytestring-fix-metadata.diff
@@ -0,0 +1,9 @@
+--- bytestring-1.0.0/Cargo.toml 2020-12-31T02:31:22+00:00
++++ bytestring-1.0.0/Cargo.toml 2021-07-20T22:33:58.979591+00:00
+@@ -32,3 +32,6 @@
+ [dependencies.serde]
+ version = "1.0"
+ optional = true
++
++[dev-dependencies.siphasher]
++version = "0.3"
diff --git a/changelog b/changelog
new file mode 100644
index 0000000..b605d74
--- /dev/null
+++ b/changelog
@@ -0,0 +1,20 @@
+* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.5-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.5-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Mon Mar 30 09:51:38 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.1.5-1
+- Update to 0.1.5
+
+* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Wed Jan 15 2020 Josh Stone <jistone(a)redhat.com> - 0.1.4-1
+- Update to 0.1.4
+
+* Sun Dec 22 22:55:24 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.1.2-1
+- Update to 0.1.2
+
+* Fri Dec 13 21:53:47 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.1.1-1
+- Initial package
diff --git a/dead.package b/dead.package
deleted file mode 100644
index 5ac8255..0000000
--- a/dead.package
+++ /dev/null
@@ -1 +0,0 @@
-no longer used
diff --git a/rust-bytestring.spec b/rust-bytestring.spec
new file mode 100644
index 0000000..4836e2d
--- /dev/null
+++ b/rust-bytestring.spec
@@ -0,0 +1,89 @@
+# Generated by rust2rpm 18
+%bcond_without check
+%global debug_package %{nil}
+
+%global crate bytestring
+
+Name: rust-%{crate}
+Version: 1.0.0
+Release: %autorelease
+Summary: Immutable UTF-8 encoded string using Bytes as storage
+
+# Upstream license specification: MIT OR Apache-2.0
+License: MIT or ASL 2.0
+URL: https://crates.io/crates/bytestring
+Source: %{crates_source}
+# Initial patched metadata
+# * add missing siphasher dev-dependency
+Patch0: bytestring-fix-metadata.diff
+
+ExclusiveArch: %{rust_arches}
+%if %{__cargo_skip_build}
+BuildArch: noarch
+%endif
+
+BuildRequires: rust-packaging
+
+%global _description %{expand:
+Immutable UTF-8 encoded string using Bytes as storage.}
+
+%description %{_description}
+
+%package devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description devel %{_description}
+
+This package contains library source intended for building other packages
+which use "%{crate}" crate.
+
+%files devel
+%license LICENSE-MIT LICENSE-APACHE
+%doc CHANGES.md
+%{cargo_registry}/%{crate}-%{version_no_tilde}/
+
+%package -n %{name}+default-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+default-devel %{_description}
+
+This package contains library source intended for building other packages
+which use "default" feature of "%{crate}" crate.
+
+%files -n %{name}+default-devel
+%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+
+%package -n %{name}+serde-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+serde-devel %{_description}
+
+This package contains library source intended for building other packages
+which use "serde" feature of "%{crate}" crate.
+
+%files -n %{name}+serde-devel
+%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%cargo_test
+%endif
+
+%changelog
+%autochangelog
diff --git a/sources b/sources
new file mode 100644
index 0000000..2030eb3
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (bytestring-1.0.0.crate) = 47563ba32263c334c1ab42e4331f090bc2c5d2c938dd9664037cc52665f37217a538d09545d252e55971543645253ef022bea404f0f871cb85a043bb82a872f5
commit d1699814b37fc6a207faf3f8b7fa5e87acc474bb
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Wed Nov 24 14:07:02 2021 +0100
no longer used
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 5a7e942..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-/bytestring-0.1.1.crate
-/bytestring-0.1.2.crate
-/bytestring-0.1.4.crate
-/bytestring-0.1.5.crate
-/bytestring-1.0.0.crate
diff --git a/README.md b/README.md
deleted file mode 100644
index 5fb8386..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# rust-bytestring
-
-The rust-bytestring package
\ No newline at end of file
diff --git a/bytestring-fix-metadata.diff b/bytestring-fix-metadata.diff
deleted file mode 100644
index 5147684..0000000
--- a/bytestring-fix-metadata.diff
+++ /dev/null
@@ -1,9 +0,0 @@
---- bytestring-1.0.0/Cargo.toml 2020-12-31T02:31:22+00:00
-+++ bytestring-1.0.0/Cargo.toml 2021-07-20T22:33:58.979591+00:00
-@@ -32,3 +32,6 @@
- [dependencies.serde]
- version = "1.0"
- optional = true
-+
-+[dev-dependencies.siphasher]
-+version = "0.3"
diff --git a/changelog b/changelog
deleted file mode 100644
index b605d74..0000000
--- a/changelog
+++ /dev/null
@@ -1,20 +0,0 @@
-* Wed Jan 27 2021 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.5-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Wed Jul 29 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.5-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Mon Mar 30 09:51:38 CEST 2020 Igor Raits <ignatenkobrain(a)fedoraproject.org> - 0.1.5-1
-- Update to 0.1.5
-
-* Thu Jan 30 2020 Fedora Release Engineering <releng(a)fedoraproject.org> - 0.1.4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Wed Jan 15 2020 Josh Stone <jistone(a)redhat.com> - 0.1.4-1
-- Update to 0.1.4
-
-* Sun Dec 22 22:55:24 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.1.2-1
-- Update to 0.1.2
-
-* Fri Dec 13 21:53:47 CET 2019 Robert-André Mauchin <zebob.m(a)gmail.com> - 0.1.1-1
-- Initial package
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..5ac8255
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+no longer used
diff --git a/rust-bytestring.spec b/rust-bytestring.spec
deleted file mode 100644
index 4836e2d..0000000
--- a/rust-bytestring.spec
+++ /dev/null
@@ -1,89 +0,0 @@
-# Generated by rust2rpm 18
-%bcond_without check
-%global debug_package %{nil}
-
-%global crate bytestring
-
-Name: rust-%{crate}
-Version: 1.0.0
-Release: %autorelease
-Summary: Immutable UTF-8 encoded string using Bytes as storage
-
-# Upstream license specification: MIT OR Apache-2.0
-License: MIT or ASL 2.0
-URL: https://crates.io/crates/bytestring
-Source: %{crates_source}
-# Initial patched metadata
-# * add missing siphasher dev-dependency
-Patch0: bytestring-fix-metadata.diff
-
-ExclusiveArch: %{rust_arches}
-%if %{__cargo_skip_build}
-BuildArch: noarch
-%endif
-
-BuildRequires: rust-packaging
-
-%global _description %{expand:
-Immutable UTF-8 encoded string using Bytes as storage.}
-
-%description %{_description}
-
-%package devel
-Summary: %{summary}
-BuildArch: noarch
-
-%description devel %{_description}
-
-This package contains library source intended for building other packages
-which use "%{crate}" crate.
-
-%files devel
-%license LICENSE-MIT LICENSE-APACHE
-%doc CHANGES.md
-%{cargo_registry}/%{crate}-%{version_no_tilde}/
-
-%package -n %{name}+default-devel
-Summary: %{summary}
-BuildArch: noarch
-
-%description -n %{name}+default-devel %{_description}
-
-This package contains library source intended for building other packages
-which use "default" feature of "%{crate}" crate.
-
-%files -n %{name}+default-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
-
-%package -n %{name}+serde-devel
-Summary: %{summary}
-BuildArch: noarch
-
-%description -n %{name}+serde-devel %{_description}
-
-This package contains library source intended for building other packages
-which use "serde" feature of "%{crate}" crate.
-
-%files -n %{name}+serde-devel
-%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
-
-%prep
-%autosetup -n %{crate}-%{version_no_tilde} -p1
-%cargo_prep
-
-%generate_buildrequires
-%cargo_generate_buildrequires
-
-%build
-%cargo_build
-
-%install
-%cargo_install
-
-%if %{with check}
-%check
-%cargo_test
-%endif
-
-%changelog
-%autochangelog
diff --git a/sources b/sources
deleted file mode 100644
index 2030eb3..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (bytestring-1.0.0.crate) = 47563ba32263c334c1ab42e4331f090bc2c5d2c938dd9664037cc52665f37217a538d09545d252e55971543645253ef022bea404f0f871cb85a043bb82a872f5
1 year, 10 months
Architecture specific change in rpms/python-yara.git
by githook-noreply@fedoraproject.org
The package rpms/python-yara.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python-yara.git/commit/?id=5e3e36...
https://src.fedoraproject.org/cgit/rpms/python-yara.git/commit/?id=0feb57....
Change:
+%ifarch armv7hl
-%ifarch armv7hl
Thanks.
Full change:
============
commit 2bd7b63f3fe9c2e5f83ca79373843e6d5938804b
Author: Mikel Olasagasti Uranga <mikel(a)olasagasti.info>
Date: Mon Aug 8 10:51:51 2022 +0200
Fix baserelease and add changelog
diff --git a/python-yara.spec b/python-yara.spec
index e4fbcec..04dec94 100644
--- a/python-yara.spec
+++ b/python-yara.spec
@@ -1,6 +1,6 @@
Name: python-yara
Version: 4.2.0
-%global baserelease 3
+%global baserelease 4
Summary: Python binding for the YARA pattern matching tool
License: ASL 2.0
URL: https://github.com/VirusTotal/yara-python/
@@ -136,6 +136,9 @@ EXCLUDE='not testModuleData'
#====================================================================
%changelog
+* Fri May 27 2022 Mikel Olasagasti Uranga <mikel(a)olasagasti.info> - 4.2.0-4
+- Skip testModuleData again for F36, fixes rhbz#2116289
+
* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 4.2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
commit 5e3e36a2b06b6a3987e230814e70a514b8d82592
Author: Mikel Olasagasti Uranga <mikel(a)olasagasti.info>
Date: Mon Aug 8 10:49:45 2022 +0200
Skip testModuleData again for F36
diff --git a/python-yara.spec b/python-yara.spec
index 7de139d..e4fbcec 100644
--- a/python-yara.spec
+++ b/python-yara.spec
@@ -113,7 +113,13 @@ Summary: Python2 binding for the YARA pattern matching tool
#====================================================================
%check
-%pytest tests.py -v
+# testModuleData is always failing for architecture armv7hl
+# Remove once Fedora 36 is EOL
+%ifarch armv7hl
+EXCLUDE='not testModuleData'
+%endif
+
+%pytest -k "$EXCLUDE" tests.py -v
#====================================================================
%files -n python%{python3_pkgversion}-yara
commit 4ef1161449358ef43baf12ebd7960c591258c1c9
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Fri Jul 22 23:36:12 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
diff --git a/python-yara.spec b/python-yara.spec
index c151aab..7de139d 100644
--- a/python-yara.spec
+++ b/python-yara.spec
@@ -1,6 +1,6 @@
Name: python-yara
Version: 4.2.0
-%global baserelease 2
+%global baserelease 3
Summary: Python binding for the YARA pattern matching tool
License: ASL 2.0
URL: https://github.com/VirusTotal/yara-python/
@@ -130,6 +130,9 @@ Summary: Python2 binding for the YARA pattern matching tool
#====================================================================
%changelog
+* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 4.2.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
+
* Mon Jun 13 2022 Python Maint <python-maint(a)redhat.com> - 4.2.0-2
- Rebuilt for Python 3.11
commit 0a7853c6fb34171b9820217ae17e6801e4f8239b
Author: Python Maint <python-maint(a)redhat.com>
Date: Mon Jun 13 18:23:12 2022 +0200
Rebuilt for Python 3.11
diff --git a/python-yara.spec b/python-yara.spec
index 4cf0501..c151aab 100644
--- a/python-yara.spec
+++ b/python-yara.spec
@@ -1,6 +1,6 @@
Name: python-yara
Version: 4.2.0
-%global baserelease 1
+%global baserelease 2
Summary: Python binding for the YARA pattern matching tool
License: ASL 2.0
URL: https://github.com/VirusTotal/yara-python/
@@ -130,6 +130,9 @@ Summary: Python2 binding for the YARA pattern matching tool
#====================================================================
%changelog
+* Mon Jun 13 2022 Python Maint <python-maint(a)redhat.com> - 4.2.0-2
+- Rebuilt for Python 3.11
+
* Fri May 27 2022 Mikel Olasagasti Uranga <mikel(a)olasagasti.info> - 4.2.0-1
- Bump to 4.2.0 rhbz#2063287 fixes FTBFS rhbz#2064646
- Minor changes to spec, like using https for URL
commit 0feb574bcc46b7ac93ede6839df77ac1f5c7b28c
Author: Mikel Olasagasti Uranga <mikel(a)olasagasti.info>
Date: Sat May 28 15:37:17 2022 +0200
Update to 4.2.0
diff --git a/.gitignore b/.gitignore
index 251f12e..9c8d924 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@
/python-yara-4.0.5.tar.gz
/python-yara-4.1.0.tar.gz
/python-yara-4.1.3.tar.gz
+/python-yara-4.2.0.tar.gz
diff --git a/python-yara.spec b/python-yara.spec
index 72116ed..4cf0501 100644
--- a/python-yara.spec
+++ b/python-yara.spec
@@ -1,21 +1,15 @@
Name: python-yara
-Version: 4.1.3
-%global baserelease 3
+Version: 4.2.0
+%global baserelease 1
Summary: Python binding for the YARA pattern matching tool
License: ASL 2.0
-URL: http://github.com/VirusTotal/yara-python/
-VCS: http://github.com/VirusTotal/yara-python/
-# http://VirusTotal.github.io/yara/
-# https://github.com/VirusTotal/yara-python/releases
+URL: https://github.com/VirusTotal/yara-python/
# By default build from a release tarball.
# If you want to rebuild from a unversioned commit from git do that with
# rpmbuild --rebuild python-yara.src.dpm --without release
%bcond_without release
-%global srcname yara
-%global gituser VirusTotal
-%global gitname %{srcname}-python
%global commit dc838e211e45442d219012099aaa63efa812c4be
%global gitdate 20210427
%global shortcommit %(c=%{commit}; echo ${c:0:7})
@@ -29,27 +23,17 @@ of malware families (or whatever you want to describe) based on textual or
binary patterns. Each description, a.k.a rule, consists of a set of strings
and a Boolean expression which determine its logic.}
-# Do the check during build
-%if 0%{?fedora} || ( 0%{?rhel} && 0%{?rhel} >= 7 )
-%global with_check 1
+# Build with python2 support for RHEL7
+%if ( 0%{?rhel} && 0%{?rhel} < 8 )
+%bcond_without python2
%endif
-%if ( 0%{?fedora} && 0%{?fedora} >= 30 ) || ( 0%{?rhel} && 0%{?rhel} >= 8 )
- # by default build without the python2 support on systems f30+ or rhel8+
-%bcond_with python2
-%else
- # build with the python2 support on system up to f29 and/or rhel7
-%bcond_without python2
-%endif
-
-
-
%if 0%{?with_release}
Release: %{baserelease}%{?dist}
-Source0: https://github.com/%{gituser}/%{gitname}/archive/v%{version}.tar.gz#/%{na...
+Source0: https://github.com/VirusTotal/yara-python/archive/v%{version}.tar.gz#/%{n...
%else
Release: %{baserelease}.%{gitdate}git%{shortcommit}%{?dist}
-Source0: https://github.com/%{gituser}/%{gitname}/archive/%{commit}/%{name}-%{vers...
+Source0: https://github.com/VirusTotal/yara-python/archive/%{commit}/%{name}-%{ver...
%endif
BuildRequires: gcc
@@ -75,24 +59,23 @@ BuildRequires: python2-setuptools
%{common_description}
-
#====================================================================
-%package -n python%{python3_pkgversion}-%{srcname}
+%package -n python%{python3_pkgversion}-yara
Summary: Python3 binding for the YARA pattern matching tool
-%{?python_provide:%python_provide python%{python3_pkgversion}-%{srcname}}
+%{?python_provide:%python_provide python%{python3_pkgversion}-yara}
-%description -n python%{python3_pkgversion}-%{srcname}
+%description -n python%{python3_pkgversion}-yara
%{common_description}
%if 0%{?with_python2} > 0
-%package -n python2-%{srcname}
+%package -n python2-yara
Summary: Python2 binding for the YARA pattern matching tool
-%{?python_provide:%python_provide python2-%{srcname}}
+%{?python_provide:%python_provide python2-yara}
-%description -n python2-%{srcname}
+%description -n python2-yara
%{common_description}
%endif
@@ -100,11 +83,11 @@ Summary: Python2 binding for the YARA pattern matching tool
%prep
%if 0%{?with_release}
# Build from git release version
-%autosetup -n %{gitname}-%{version}
+%autosetup -n yara-python-%{version}
%else
# Build from git commit
-%autosetup -n %{gitname}-%{commit}
+%autosetup -n yara-python-%{commit}
%endif
@@ -130,35 +113,28 @@ Summary: Python2 binding for the YARA pattern matching tool
#====================================================================
%check
-%if 0%{?with_check}
-# ==============================================================================
-
-# 3.9.0 - testModuleData is always failing for architecture armv7hl
-%ifarch armv7hl
-EXCLUDE='not testModuleData'
-%endif
-
-%pytest -k "$EXCLUDE" tests.py -v
-
-# with_check
-%endif
-
+%pytest tests.py -v
#====================================================================
-%files -n python%{python3_pkgversion}-%{srcname}
+%files -n python%{python3_pkgversion}-yara
%license LICENSE
%doc README.rst
-%{python3_sitearch}/%{srcname}*
+%{python3_sitearch}/yara*
%if 0%{?with_python2} > 0
-%files -n python2-%{srcname}
+%files -n python2-yara
%license LICENSE
%doc README.rst
-%{python2_sitearch}/%{srcname}*
+%{python2_sitearch}/yara*
%endif
#====================================================================
%changelog
+* Fri May 27 2022 Mikel Olasagasti Uranga <mikel(a)olasagasti.info> - 4.2.0-1
+- Bump to 4.2.0 rhbz#2063287 fixes FTBFS rhbz#2064646
+- Minor changes to spec, like using https for URL
+- Simplify some of checks for different builds
+
* Fri Jan 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 4.1.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
diff --git a/sources b/sources
index 80e0b4b..d90e2ad 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (python-yara-4.1.3.tar.gz) = 9c96ae78df7694dd55b8bdde4fad49043f120b94477fa9d7090610665072626eba4fa410cd9292205e0b18bb9f384f07288c0340232e163294b91051b84dcab2
+SHA512 (python-yara-4.2.0.tar.gz) = ba08d709fc51679ec9fe36165e0864b79fc241f85c681bf59823fe7bb0e34e928cded050ff296147eb5bcb837485f39949aa93425a0eb9ca8b3730e60fac93f4
1 year, 10 months