Re: Best way to handle sub-package conflicts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 18 Mar 2018 11:22:23 -0400, Digimer wrote:

> So the .spec creates four RPMs; "anvil-core", "anvil-striker",
> "anvil-node" and "anvil-dr".
> 
> All machines require "anvil-core", plus one (and only one) of the other
> three packages. There is no scenario where, for example, 'anvil-node'
> and 'anvil-striker' would be installed on the same machine. So if a user
> has 'anvil-striker' RPM installed, and they try to install 'anvil-node',
> I want that to remove 'anvil-striker'. Similarly, if a machine has
> 'striker-node' already installed and the user tries to install
> 'anvil-dr', I want 'anvil-node' removed. This is because a single
> machine can only play one role at a time.
> 
> So this isn't a version conflict, as seems to be what Conflicts and
> Obsoletes are designed to handle, if I understand properly.

The description of the packaging scenario is not complete yet.
If -striker, -node and -dr are mutually exclusive, why is that?
Are there implicit conflicts in the packaged files? Then you cannot
avoid Conflicts tags. Or are there runtime conflicts? Then you should
look into a solution that would resolve the conflict with a configuration
file, which would define the operation mode of the software.

So far, the scenario sounds very much as if you want to add Conflicts tags
to the subpackages as to achieve that only one of them can be
installed. Trying to simulate automatic removal of conflicts through
Obsoletes tags is not the right thing to do in your scenario. You would
end up with circular Obsoletes, which would confuse depsolvers or lead
to random behavior.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux