"oskar%fessel.org@localhost" <oskar%fessel.org@localhost> writes: > In this instance, the ansible dependency chaned from ansible-base to ansible-core. > While this is straightforward and ist quite nicely tracking upstream, > it breaks Pkg._rolling-replace and also my rather esoteric ansible > workflow for updating ansible on remote systems via ansible… > > So, how to resolve this short of deinstalling ansible and reinstalling it? > > => Verifying update for ../../sysutils/ansible-core > ===> Resuming update for ansible-core-2.13.0 > => Bootstrap dependency digest>=20211023: found digest-20220214 > ===> Installing binary package of ansible-core-2.13.0 > pkg_add: Conflicting PLIST with ansible-base-2.10.17: bin/ansible > pkg_add: 1 package addition failed > *** Error code 1 Your choices are basically: Write a script to pkg_delete -f ansible-base and then pkg_add ansible, or just pkg_delete both and pkg_add. Build binary packages, either by hand with deletions or in a bulk build. Use pkgin to update. Maybe pkgin deals with this situation, maybe it doesn't. If not it is probably not super hard -- but might still be 20h of work -- to add support. The question is if pkgin deletes everything that is going away and then adds, or if it tries to pkg_add -u. Do something really kludgy, like remove the registration data for ansible-base without removing the files. I recommend against this. If you are updating multiple or remote machines, I recommmend building binary packages on one machine, and then doing updates of the others from binaries, probably with pkgin. That confines most of your pain to the pkg builder, which can be a machine you don't count on for delivering your mail etc.
Attachment:
signature.asc
Description: PGP signature