| |
@@ -855,13 +855,6 @@
|
| |
not on any other functionality of any other package
|
| |
that might provide that directory.
|
| |
|
| |
- When declaring file and directory dependencies,
|
| |
- xref:RPMMacros.adoc#macros_installation[installation path macros] like `+%{_bindir}+`
|
| |
- MUST NOT be used.
|
| |
- `+%{_bindir}+` of the package that provides `+sometool+`
|
| |
- may be different from `+%{_bindir}+` of a package that requires `+sometool+`.
|
| |
- In such case, `+BuildRequires: %{_bindir}/sometool+` does not work as expected.
|
| |
-
|
| |
=== Explicit Requires
|
| |
|
| |
Explicit Requires are Requires added manually by the packager in the spec file.
|
| |
This reverts commit 35d89f0.
TL;DR: Expanding
%{_bindir}
does not help with deciding, where some specific tool comes from. Paths must always be taken with care once namespacing comes into the play.We have great amount of experience with this due to SCL and suggestion to expand the macros is not conceptual. Let me give you example. This one comes from Ruby:
if we expandeded the macros, it would look like:
That looks perfect right? According to the guidelines you say.
But now imagine we have the rh-ruby30-ruby package providing
/opt/rh/rh-ruby30/root/usr/bin/ruby
and some ruby package having:How you conditionalize this to support either the system Ruby or the SCL Ruby? Is this the right version?
or maybe
Can you spot the issue with the above? We cannot build the package for other SCL. Or you have to use different magic.
Or you might suggest that the SCL branches should contain their customization and we should not bother, but then we should not bother with Flatpacka as well.
Don't get me wrong, I see the argument that expanding the
%{_bindir}
might be in short term helpful for Flatpack, but conceptually, this is really wrong suggestion. IMHO, it is more flexible to use%{_bindir}
to not use it. It won't save us with modifying the .spec file for some specific use cases, such as SCL or flatpak. Flatpak is just much simpler use case, that is it.