Zhu Zihao <all_but_l...@163.com> skribis: >> > I also suggest to raise an error when conflict detected during building >> > profile to force user to resolve it. > >> It should be already the case. :-) > > IIRC the deafult collision handler of union-build is > warn-about-collision which doesn't terminate the build when collision > occured.
We’re talking about different things. Whatever happens during ‘union-build’ happens too late and won’t lead to user-friendly errors. I was referring to the mechanism implemented a while back and submitted here: https://issues.guix.gnu.org/27271 > BTW, There's something called "priority" in Nix. The package with higher > priority in manifest will be able to override the package with lower one. My experience with it (from 8+ years ago, though) is that it was inconvenient and not natural—as a user you don’t want to ask yourself which package should have the highest priority, you just want to have these things installed. The approach we took is to error out, with a clear diagnostic, when Guix knows beforehand that two packages cannot coexist in the same profile. Thanks, Ludo’.