On 1/31/22 04:04 PM, Miro Hrončok wrote:
On 31. 01. 22 21:58, przemek klosowski via devel wrote:
> During recent major version update, some files were moved from <package>-doc to
<package>, and as a result updates of <package> fail due to a file conflict.
Manual update of <package>-doc resolves this, of course.
>
> A simple solution would be to declare that <package>
>
> Required: package-doc >= 6.0.0
>
> but that would force the install of the docs package if it wasn't already there.
>
> Is there a way to declare a dependency only if the other package is
present/installed? Would
>
> Obsoletes: package-doc < 6.0.0
>
> be the right thing to do?
The right thing to do is:
Conflicts: package-doc < 6.0.0
Ok, so that doesn't do what I'd like. I definitely added the conflict property:
# rpm -q -conflicts kicad-6.0.1-4.fc35.x86_64.rpm
kicad-doc < 6.0.0
But when I try to upgrade just the kicad package without upgrading the docs package, I
still get:
# dnf update kicad-6.0.1-4.fc35.x86_64.rpm
...
Running transaction test
Error: Transaction test error:
file /usr/share/doc/kicad/scripts/lib_convert.py from install of
kicad-1:6.0.1-4.fc35.x86_64 conflicts with file from package
kicad-doc-1:5.1.12-1.fc35.noarch
file /usr/share/doc/kicad/scripts/test_kicad_plugin.py from install of
kicad-1:6.0.1-4.fc35.x86_64 conflicts with file from package
kicad-doc-1:5.1.12-1.fc35.noarch
So the Conflicts line doesn't actually seem to buy me anything.
I'll try again with the version from Stephen Gallagher (including the epoch) and see
if that is any better.
Steve