public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: Jon Turney <jon.turney@dronecode.org.uk>
To: cygwin-apps@cygwin.com
Subject: Re: [PATCH setup 00/14] Use libsolv, solve all our problems... (WIP)
Date: Fri, 15 Sep 2017 19:24:00 -0000	[thread overview]
Message-ID: <c59e84db-09b6-f829-ef54-459b21eba72e@dronecode.org.uk> (raw)
In-Reply-To: <4ed6c549-dddd-fc45-3ed8-f7339548d7cd@cornell.edu>

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 

Yeah, a better interface to the solution list would be nice, but 
:effort: and it's unclear how much use it would get with the loose 
requirements our current package database contains.

I'm not sure there is huge value in the current "don't install 
dependencies" option.  I don't know why anyone would want to do that, 
and it's just going to give you a broken install sometimes...

> 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.
> 
> 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.
> 
> Once the inevitable remaining bugs are fixed, I think we'll have a 
> setup.exe that's better than the current one, with possibilities for 
> further UI improvements along the lines you suggested.

Thanks again for your work on this.

Can you rebase your and my patches onto master, and push to sourceware 
in a topic/libsolv branch?

After that, I think it might be useful to make a binary available for 
wider testing.

Two things I have left to look at:

- Since the distributed setup is cross-built on Linux, I need to look 
into making a RPM for the cross-built libsolv.

- Wire up the "Source:" (note capital 'S') lines in setup.ini.  These 
work in current setup versions (although we don't use it, but I'd like 
to change that).  Since the the source package might appear after the 
package in setup.ini, this seems to conflict with the current approach 
of storing the sourcepackage solvable id, which I did because searching 
the solver repo for a package by name was slow. With hindsight, this 
seems wrong.

  reply	other threads:[~2017-09-15 19:24 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-31 10:53 Jon Turney
2017-05-31 10:53 ` [PATCH setup 02/14] Factor out reading installed.db Jon Turney
2017-05-31 10:53 ` [PATCH setup 03/14] Hoist addScript() etc. up from packageversion to packagemeta Jon Turney
2017-05-31 10:53 ` [PATCH setup 01/14] Opaque how PackageDepends is stored Jon Turney
2017-05-31 10:53 ` [PATCH setup 05/14] Hoist uninstall up to Installer::uninstallOne() Jon Turney
2017-05-31 10:53 ` [PATCH setup 04/14] Hoist pick() up to packagemeta Jon Turney
2017-05-31 10:57 ` [PATCH setup 07/14] Store package stability in class packageversion Jon Turney
2017-05-31 10:57 ` [PATCH setup 06/14] Hoist scan() up from packageversion to packagemeta Jon Turney
2017-05-31 10:57 ` [PATCH setup 09/14] Remove cygpackage class Jon Turney
2017-05-31 10:57 ` [PATCH setup 08/14] Change to using a libsolv pool for storing package information Jon Turney
2017-05-31 10:57 ` [PATCH setup 10/14] Remove packageversion class Jon Turney
2017-05-31 11:05 ` [PATCH setup 11/14] Drop in SolvableVersion as a replacement for packageversion Jon Turney
2017-05-31 11:05   ` [PATCH setup 12/14] Use solver to check for problems and produce a list of package transactions Jon Turney
2017-05-31 11:05   ` [PATCH setup 13/14] Download/checksum/install/uninstall what transaction wants Jon Turney
2017-05-31 11:05   ` [PATCH setup 14/14] Add obsoletes: support Jon Turney
2017-08-29 13:37 ` [PATCH setup 00/14] Use libsolv, solve all our problems... (WIP) Ken Brown
2017-08-30 21:47   ` Ken Brown
2017-09-01 15:01 ` Ken Brown
2017-09-02 16:57   ` Ken Brown
2017-09-05 13:34     ` Jon Turney
2017-09-05 18:40       ` Achim Gratz
2017-09-06  2:52         ` Ken Brown
2017-11-23 18:10           ` Jon Turney
2017-11-23 20:32             ` Ken Brown
2017-11-23 20:54             ` Achim Gratz
2017-09-08 18:54 ` Ken Brown
2017-09-11 20:40   ` Ken Brown
2017-09-13 19:17     ` Achim Gratz
2017-09-13 21:16       ` Ken Brown
2017-09-14 17:26         ` Achim Gratz
2017-09-14 20:46           ` Ken Brown
2017-09-15 19:24             ` Jon Turney [this message]
2017-09-16 16:21               ` Ken Brown
2017-09-19 12:24                 ` Ken Brown
2017-09-19 16:46                   ` Jon Turney
2017-09-19 16:58                     ` Ken Brown
2017-12-05 14:32             ` Jon Turney
2017-12-05 17:36               ` Ken Brown
2017-12-13 17:31               ` Ken Brown
2017-12-13 18:06                 ` Achim Gratz
2017-12-13 22:31                   ` Ken Brown
2017-12-14 14:12                     ` Ken Brown
2017-12-24 15:00                     ` Ken Brown
2018-01-09 13:25                       ` Jon Turney
2018-01-09 15:37                         ` Ken Brown
2018-01-09 15:49                           ` Ken Brown
2018-01-13 14:14                             ` Jon Turney
2018-01-13 19:56                               ` Ken Brown
2018-01-13 21:29                                 ` Brian Inglis
2018-01-13 22:55                                   ` Ken Brown
2018-01-14  0:00                                     ` Ken Brown
2018-01-14  1:52                                       ` Brian Inglis
2018-01-14  2:37                                         ` Ken Brown
2018-01-15 19:02                                 ` Jon Turney
2018-01-15 21:50                                   ` Ken Brown
2018-01-18 19:14                                     ` Jon Turney
2017-09-15 15:15   ` Jon Turney
2017-09-15 16:53     ` Ken Brown
2017-09-15 20:56       ` cyg Simple
2017-09-17 16:02         ` Ken Brown
2017-09-26 14:50       ` Jon Turney
2017-09-26 16:07         ` Ken Brown
2017-09-27 19:14           ` Jon Turney
2017-09-27 20:33             ` Ken Brown
2017-09-29 17:38               ` Jon Turney
2017-09-29 20:34                 ` Ken Brown
2017-10-02 14:07                   ` Jon Turney
2017-10-02 15:17                     ` Marco Atzeri
2017-10-04 14:43                       ` Jon Turney
2017-10-10 11:18                   ` Ken Brown
2017-10-10 15:49                     ` Jon Turney
2017-10-17 12:45                     ` Ken Brown
2017-10-17 18:47                       ` Jon Turney
2017-10-18 15:28                         ` Ken Brown
2017-10-18 15:57                           ` Ken Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c59e84db-09b6-f829-ef54-459b21eba72e@dronecode.org.uk \
    --to=jon.turney@dronecode.org.uk \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).