[PATCH setup 00/14] Use libsolv, solve all our problems... (WIP)

Jon Turney jon.turney@dronecode.org.uk
Tue Dec 5 14:32:00 GMT 2017

On 14/09/2017 21:46, Ken Brown wrote:
> On 9/14/2017 1:26 PM, Achim Gratz wrote:
>> Ken Brown writes:
>>> What I've been struggling with, however, is the UI.  But now that I
>>> think about it, maybe it isn't that hard.  It's just a matter of doing
>>> something reasonable if the user unchecks "Accept default problem
>>> solutions".  I'll see what I can come up with.
>> Well, zypper pretty much just gives you a bunch of possible solutions
>> and asks you to select one if there is either more than one or the
>> otherwise preferred solution is blocked by a lock.  There is always one
>> "break <whatever> package by doing <stuff>" down that list.  You could
>> maybe offer something along those lines in the inevitable dialog box?
> In the long run I think that's the way to go.  But implementing that is 
> more work than I feel like doing at the moment.  For now I've gone with 
> an approach that was easier to program, more like the current setup.exe. 
>   If the solver finds problems (including missing dependencies), the 
> user has four choices on the Prerequisite page:
> 1. Click Back to go back to the Chooser page, with the Pending view 
> showing the solver's default solutions.
> 2. Click Next to accept the default solutions.

Doing some testing of per-version requires, I've been looking at this 
page quite a bit.

It seems we're missing something to actually apply the default solution, 
so "accept default solutions" makes no changes, at the moment. (looks 
like we have to do this ourselves with solver_take_solution() ?)

Also, in the dependency problem report, we should identify which of the 
possible solutions is the default one, so it's clearer what "accept 
default solutions" is going to do.

> 3. Uncheck the "Accept default solutions" box and click Next.  If the 
> user dismisses the resulting warning, setup will go ahead and do what 
> the user requested.
> 4. Cancel.

More information about the Cygwin-apps mailing list