Hi Bernhard, On 22.08.24 08:23 Bernhard Voelker wrote:
On 8/14/24 18:57, Johannes Kastl wrote:
Hi all,
for packaging lix I apparently need the coreutils binary. So I tried adding coreutils-single to the BuildRequires, as this contains the binary.
Why do you need the '/bin/coreutils' binary?
Because that is what upstream has in their meson configuration. I have packaged it in the meantime to depend on the binaries that are actually used. So the problem is solved, but the general issue still persist:
The resulting /bin/coreutils does not usually get called directly, but as a wrapper to all the other coreutils programs: cp, mv, df, du, etc.
The coreutils-single package is simply a drop-in replacement of the standard coreutils package, has the same functionality, but saves some MB on disk. I've tested switching between them a couple of times.
Hmm, in the container I tested all tools were still present, in addition to the coreutils-single binary. Or maybe I misremember?
So what's the point you depend on the coreutils binary at build time of your package?
see above.
The package has very well a Conflicts in it - here the snippet of the multi-build spec:
%if "%{name}" == "coreutils-single" Conflicts: coreutils Provides: coreutils = %{version}-%{release} %endif
The packages that depend on coreutils are:
rpm-build systemd-rpm-macros debugedit linux-glibc-devel
Maybe those should better depend on specific utilities instead of the package names? ... but again, I'm not an expert in this deps stuff.
I wonder why those packages are not satisfied by the "Provides" that the coreutils-single package apparently has (as you showed above)? If both packages are interchangeable, this should also be possible in OBS (IMHO). Right? Kind Regards, Johannes