On Fri, Aug 23, 2019 at 11:47:29PM +0200, Matthias Kilian wrote: > The only drawback I can see is the update path from the old to the new > scheme, because pkg_add(8) will complain about collisions when updating > ghc: > > ]# pkg_add -uvx > Old package ghc-8.2.2p4 will run the following commands > - @unexec /usr/bin/env HOME=/nonexistent /usr/local/lib/ghc/unregister.sh > Running update > Collision in ghc-8.2.2p4->8.2.2p5: the following files already exist > /usr/local/lib/ghc/package.conf.d/Cabal-2.0.1.0.conf from ghc-8.2.2p5 > (same checksum) > /usr/local/lib/ghc/package.conf.d/array-0.5.2.0.conf from ghc-8.2.2p5 > (same checksum) > [... ] > It seems to be a missing package registration > Repair ? [y/N/a] y > Adding ghc-8.2.2p4->8.2.2p5 > ghc-8.2.2p5 (extracting) > ghc-8.2.2p5 (skipping) > ghc-8.2.2p4 (deleting) > [...] > > The other hs-ports are *not* affected by this problem, because the > package registration files in package.conf.d no longer have the > MODGHC_PACKAGE_KEY in their file names. > > I'm not sure about wether it's worth to try to avoid the collisions (I'd > prefer to just add a small note to the upgrade FAQ), nor am I shure > wether I should commit this change (to ghc and *all* hs-ports) now or > after I eventually update ghc to something newer.
It's probably feasible to quirk the collision away... we did something like that a long time ago for texlive. I'll have to play a bit with it.