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" <cygwin-apps@cygwin.com>
Subject: Re: Question about 'provides' and emacs packaging
Date: Wed, 6 Oct 2021 21:22:45 +0100	[thread overview]
Message-ID: <c40b3434-3801-343a-a781-2951d2e6db41@dronecode.org.uk> (raw)
In-Reply-To: <38baa42c-bf6a-52fc-3fd7-9a6bc09d1125@dronecode.org.uk>

On 06/10/2021 17:23, Jon Turney wrote:
> On 06/10/2021 13:01, Ken Brown via Cygwin-apps wrote:
>>
>> This seems to work, with one caveat.  Suppose package P requires 
>> feature f, and packages Q, R, S,... provide f.  If the user selects P 
>> and one or more of Q, R, S,..., setup is happy.  But if the user 
>> simply selects P, then setup/libsolv will choose among Q, R, S,... the 
>> one whose name is alphabetically first.  In the emacs case, this would 
>> be emacs-lucid, which is a stupid default.  The default ought to be 
>> emacs-nox.  So I can make it work if I call that package emacs-basic 
>> instead of emacs-nox.
> 
> Yeah, I think what's wanted here is for the solver to output a problem 
> with the choices, rather than picking one.  I'm not sure how to get it 
> to do that.
> 
> (Ofc, then we need some UI for picking problem solutions, rather than 
> just always using the default)

Thinking about this some more, that's probably not how it wants to work, 
since just installing emacs-common would then require user interaction 
to solve the problem, rather than just installing emacs-nox as well...

> (and I'm not sure how we'd encode "emacs-basic" should be the default 
> provider of "emacs-bin" as the input into the solver; presumably there'd 
> by some scheme with weights attached to provide names to set the order 
> rather than alphabetic)

So all that's left is to fix that.

This is discussed somewhat in [1], and it seems that having emacs-common 
suggest: or weak-dep: on emacs-nox would cause that to be the preferred 
provide:r by the solver (in the absence of other provide:ing packages 
being selected or installed)

So I guess we'd need to add something like that to setup.ini and feed 
that data into the solver as well.

[1] https://github.com/openSUSE/libsolv/issues/66

  reply	other threads:[~2021-10-06 20:23 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-05 15:51 Ken Brown
2021-10-05 16:58 ` Brian Inglis
2021-10-05 18:08   ` Ken Brown
2021-10-05 18:24 ` Achim Gratz
2021-10-06 12:01   ` Ken Brown
2021-10-06 12:18     ` ASSI
2021-10-06 16:23     ` Jon Turney
2021-10-06 20:22       ` Jon Turney [this message]
2021-10-06 20:58         ` 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=c40b3434-3801-343a-a781-2951d2e6db41@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).