On Fri, 5 May 2023 at 17:38, Andreas Metzler <ametz...@bebt.de> wrote: > > On 2023-05-05 Simon Richter <s...@debian.org> wrote: > [...] > > My proposal would be to put the onus on the client registering the > > diversion: > [...] > > - packages are encouraged to register both diversions > > Hello, > > That seems to be a rather ugly user interface, ("There is dpkg-divert on > Debian, but because the usrmerge you need to invoke it twce to be > sure"). Will we need to have a meta-transition years from now trying to > get get rid of the double diversions?
It is not the prettiest thing but it is a very clever solution. Perhaps it could be mitigated with an addendum that makes it optional, and to be used only when strictly needed, after all moving files within the same package is fine, it's only the combination of moving location _and_ package that causes problems. In other words: - every package is forcefully canonicalized as soon as trixie is open for business - the moratorium on moving files from bin/ sbin/ lib/ _and_ to other packages at the same time is maintained from bookworm till trixie, and will lifted after trixie ships, and applies implicitly to all the ~2000 binary pkgs that are affected by the above - the moratorium can be bypassed by a maintainer if and only if the appropriate conflicts/replaces/diverts as discussed in this thread are put in place and left there for as long as needed (TBD whether this means for trixie's cycle or for trixie+1) In practice, I suspect that out of ~2000 packages shipping bin/ sbin/ lib*/, only a small fraction would end up needing to further move files out to other packages, so the divert dance requirement can be restricted only to those. This way impact is minimized, required testing is smaller, and we get in the final state on day one of trixie dev cycle. Moving files between packages already requires busywork anyway, so a bit more won't hurt that much, especially if we figure out a way to provide the functionality with a dh addon or such to do the heavy lifting. Kind regards, Luca Boccassi