On Mon, Nov 8, 2021 at 8:37 AM Kamil Paral kparal@redhat.com wrote:
I find it hard to draw the line somewhere between all these cases. So aborting a previous operation is not ok, but not even starting a second operation is ok? Installing and removing the same package is not blocking? What about installing two different packages, would that block? What about installing A and removing B? I don't honestly think it's a good idea to dig into the million of sub-cases here.
Just imagine we're not talking about the package manager but a file manager instead. If you could either create a file, or remove a file, but you couldn't create&remove the file, or you couldn't remove 2 different either sequentially or together, that would clearly be a blocker (I hope). It would be quite obvious that this is a basic functionality. So why isn't this a basic functionality for the package manager? And why do we have (it seems) a different quality bar for dnf vs graphical package managers? I don't think these bugs would be waived for dnf.
I agree with FrantiĊĦek's comment that the DNF case is different enough in how it functions that it's not a fair comparison. I do think that aborting a previous operation is not okay, but refusing to start a second operation until the first is done is. Ideally with a clear message explaining why, but not necessarily.
So I still disagree with you, but my position is softening. I'd rather we have a clearly-defined and understood set of criteria that I disagree with in some places than to try to make every criterion match my preferences. :-) So while I disagree, I'm happy to move forward with this.
So let's reduce the original requirement into something like this:
- configure software sources by enabling/disabling pre-defined official repositories and then adjust the available software pool accordingly
Does it sound better?
Yes, that works for me.