From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id MfsFGg1FuF5FGAAA0tVLHw (envelope-from ) for ; Sun, 10 May 2020 18:16:45 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id yH0gAxtFuF4oBQAAB5/wlQ (envelope-from ) for ; Sun, 10 May 2020 18:16:59 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 97DA1940C62 for ; Sun, 10 May 2020 18:16:56 +0000 (UTC) Received: from localhost ([::1]:38954 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jXqVV-0006Uh-9l for larch@yhetil.org; Sun, 10 May 2020 14:16:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43706) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXqVL-0006UY-Pg for guix-devel@gnu.org; Sun, 10 May 2020 14:16:47 -0400 Received: from mail-vk1-xa36.google.com ([2607:f8b0:4864:20::a36]:44766) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jXqVK-0000lC-CW for guix-devel@gnu.org; Sun, 10 May 2020 14:16:47 -0400 Received: by mail-vk1-xa36.google.com with SMTP id s85so1749936vks.11 for ; Sun, 10 May 2020 11:16:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UFxMHjDbaVGl2ebbAQ6Qbsgg5o987dG6n6JV2Y9nTvM=; b=kTxCBOFNYTdFFdsv9GyfuPVltyQ1csMWYOf/QMSOlFg+gA43Bdz/jmkL7IYfJpuNi+ Tw4DJSrGsokAsWVZLLczT6xnCcVTciyCiYZDF0x9jTr9fgQ45bUgeQS4RK1vv8OR5mZZ bZcbGMj0X79uYjQzddRLk1jJ99Em2Jt7U81BV8HM2YFBq9Y23Cp9wV6vRA1JrOfq9PL9 tBfIgYDYsiHLVp6y8b5k8eeUpESom01ZcAQXSL/QZMG2CgT2Ase1a3ugXgxcnxHrlzBf K/mpvDvfDJ43/yjkiSgHMg1oCbhGa0G6fB+6STXxkeA3TADrT+siEJv6JcS0IPWCh5XP 8wCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UFxMHjDbaVGl2ebbAQ6Qbsgg5o987dG6n6JV2Y9nTvM=; b=ACJWutWXPIk+qG1W5jgdI2YdUAPyoNK2iGlJbZfFpXeGS3sXiN5sNdHCdEv8U0tZ4X oo7m4bpg8tLrinFPThRUQMr2TfhrhhCs3aPrVDc/ThfOqsX+JskeDu3tX1Ql/oFCf0NT 7OGSzZjxEi5zJ1AbAvTWVfGlJ9iSsDyzvq2gzIs4JYZyqxSJpO9QTfl+pYrF+gNv/K49 kPDUbTgIwei/mbN/yPPn3r34hJaufPAGmGONtYHUJXNMlKtuH62da6U+DbGD7JYRzJSo 3rardFrgFEzkc0B7flNiBoJzLB/ChBViqMt0BUa4n/ZSF0Er+LHqEEm4ybQbNN7U/iRE GHrA== X-Gm-Message-State: AGi0Pua8NVwmDI38DzkCjm0gBYKtocDoFfprNkBkGKKbpslEnvlfUGWF i/X8MFSLvBtxJzhESg/uPMAU3HkuHiSOKAoBYOA= X-Google-Smtp-Source: APiQypLICnw/3pn/R6t6fWKsmiJ7jmxwUkN1gnmppXjMzHnOY/OOVWw6VRT38jxb9/TMEwYfI7dbDVxg1wVDW1X5erY= X-Received: by 2002:a1f:a24d:: with SMTP id l74mr8727860vke.8.1589134605086; Sun, 10 May 2020 11:16:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Josh Marshall Date: Sun, 10 May 2020 14:16:33 -0400 Message-ID: Subject: Re: Should guix track package aliases? To: zimoun Content-Type: multipart/alternative; boundary="000000000000a2f51205a54f3b23" Received-SPF: pass client-ip=2607:f8b0:4864:20::a36; envelope-from=joshua.r.marshall.1991@gmail.com; helo=mail-vk1-xa36.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -17 X-Spam_score: -1.8 X-Spam_bar: - X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Guix Devel Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 X-Spam-Score: 1.09 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=gmail.com header.s=20161025 header.b=kTxCBOFN; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Scan-Result: default: False [1.09 / 13.00]; GENERIC_REPUTATION(0.00)[-0.53903728824781]; DWL_DNSWL_FAIL(0.00)[209.51.188.17:server fail]; R_SPF_ALLOW(-0.20)[+ip4:209.51.188.0/24:c]; R_DKIM_REJECT(1.00)[gmail.com:s=20161025]; FREEMAIL_FROM(0.00)[gmail.com]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.08), country: US(-0.00), ip: 209.51.188.17(-0.54)]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[gmail.com:-]; RCPT_COUNT_TWO(0.00)[2]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; FREEMAIL_TO(0.00)[gmail.com]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:22989, ipnet:209.51.188.0/24, country:US]; SUBJECT_ENDS_QUESTION(1.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; RCVD_COUNT_FIVE(0.00)[5]; FROM_NEQ_ENVFROM(0.00)[joshuarmarshall1991@gmail.com,guix-devel-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; URIBL_BLOCKED(0.00)[repology.org:url,lepiller.eu:email]; TAGGED_RCPT(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[guix-devel@gnu.org]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; HAS_LIST_UNSUB(-0.01)[]; DNSWL_BLOCKED(0.00)[209.51.188.17:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.51.188.17:from]; FORGED_SENDER_MAILLIST(0.00)[]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : SPF not aligned (relaxed),none] X-TUID: d//oOPjZjLOe --000000000000a2f51205a54f3b23 Content-Type: text/plain; charset="UTF-8" This back and forth is what I've been having going on in my head. We might be able to leverage repology.org for their work on mapping packages across distros. Yesterday, civodul entered a bug to remove the Etag and last-modified headers in the nginx config to fix a bug on our side so repology will update info on guix. That code is GPL'd so some of it could be incorporated, and maybe even be leveraged to interpret foreign distro's packages to create package prototypes which we could then use to more rapidly expand what packages are available through guix. I could see this as a high-payoff medium effort development for guix. On Sun, May 10, 2020 at 9:34 AM zimoun wrote: > Hi Julien, > > On Sun, 10 May 2020 at 14:13, Julien Lepiller wrote: > > > The proposal was about suggesting anotger nameqwhen no package was > found, not to install something else. > > Sorry I misinterpreted. > > > > >Well, do you have specific example in mind? > > > > $ guix install gcc > > guix install: error: gcc: unknown package > > Hint: did you mean `guix install gcc-toolchain`? > > > > Since not being able to install gcc is surprising, and you don't always > know about gcc-toolchain. > > I understand even if this one is the wrong example. :-) > It even deserves an entry in the manual. > Well, but I understand what you mean. > > > > $ guix install gpg > > Hint: did you mean `guix install gnupg`? > > The question is: why do you type 'gpg'? > > I mean, the upstream name is really GnuPG so it is not one "stupid" > Guix devs arbitrary rename because in their infinite wisdom they > decided to. ;-) > > Well, do you type 'gpg' because > a) it is the name of the binary? > or b) it is the name of the package in your previous favourite distro? > > If it is a), then a proposal by Pierre named "filesearch" is floating > around. And this should improve the situation. > > If it is b), then I do not see how to improve the situation in the > general case. But maybe there is some well-known cases. > > > > Often a name is used to refer to a package, and it's annoying to go > through a search, especially when you have to filter a big output. > > I agree. From my point the issue is that "guix search" is not doing > the job and the improvement should come from this. And your 'gpg' > example is a good one, IMHO: > > --8<---------------cut here---------------start------------->8--- > $ guix search gpg | recsel -C -p name,relevance > name: signing-party > relevance: 16 > name: qgpgme > relevance: 15 > name: libgpg-error > relevance: 14 > name: python2-gpg > relevance: 11 > name: python-gpg > relevance: 11 > name: ledger-agent > relevance: 9 > name: python2-pygpgme > relevance: 8 > name: python-pygpgme > relevance: 8 > name: gpgme > relevance: 8 > name: kgpg > relevance: 6 > name: jetring > relevance: 6 > name: emacs-pinentry > relevance: 6 > name: trezor-agent > relevance: 5 > name: python-trezor-agent > relevance: 5 > name: keepkey-agent > relevance: 5 > name: qtpass > relevance: 2 > name: pinentry > relevance: 2 > name: pinentry-tty > relevance: 2 > name: pinentry-qt > relevance: 2 > name: pinentry-gtk2 > relevance: 2 > name: pinentry-gnome3 > relevance: 2 > name: pinentry-emacs > relevance: 2 > name: pinentry-efl > relevance: 2 > name: kleopatra > relevance: 2 > name: gnupg > relevance: 2 > name: gnupg > relevance: 2 > name: git-remote-gcrypt > relevance: 2 > name: gajim > relevance: 2 > name: emacs-extend-smime > relevance: 2 > name: assword > relevance: 2 > --8<---------------cut here---------------end--------------->8--- > > The expected package 'gnupg' appears... piouf! > > I fully agree that the experience with "guix search" is frustating. > And maybe using both the 'upstream-name' and an extra 'properties' > such as 'alternative-names' or 'extra-keywords' should help for > discoverability. > > > WDYT? > > All the best, > simon > --000000000000a2f51205a54f3b23 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
This back and forth is what I've been having going on = in my head.=C2=A0 We might be able to leverage repology.org for their work on mapping packages across distros.=C2= =A0 Yesterday, civodul entered a bug to remove the Etag and last-modified h= eaders in the nginx config to fix a bug on our side so repology will update= info on guix.=C2=A0 That code is GPL'd so some of it could be incorpor= ated, and maybe even be leveraged to interpret foreign distro's package= s to create package prototypes which we could then use to more rapidly expa= nd what packages are available through guix.=C2=A0 I could see this as a hi= gh-payoff medium effort development for guix.

On Sun, May 10, 2020 at 9:= 34 AM zimoun <zimon.toutoune= @gmail.com> wrote:
Hi Julien,

On Sun, 10 May 2020 at 14:13, Julien Lepiller <julien@lepiller.eu> wrote:

> The proposal was about suggesting anotger nameqwhen no package was fou= nd, not to install something else.

Sorry I misinterpreted.


> >Well, do you have specific example in mind?
>
> $ guix install gcc
> guix install: error: gcc: unknown package
> Hint: did you mean `guix install gcc-toolchain`?
>
> Since not being able to install gcc is surprising, and you don't a= lways know about gcc-toolchain.

I understand even if this one is the wrong example. :-)
It even deserves an entry in the manual.
Well, but I understand what you mean.


> $ guix install gpg
> Hint: did you mean `guix install gnupg`?

The question is: why do you type 'gpg'?

I mean, the upstream name is really GnuPG so it is not one "stupid&quo= t;
Guix devs arbitrary rename because in their infinite wisdom they
decided to. ;-)

Well, do you type 'gpg' because
a) it is the name of the binary?
or b) it is the name of the package in your previous favourite distro?

If it is a), then a proposal by Pierre named "filesearch" is floa= ting
around.=C2=A0 And this should improve the situation.

If it is b), then I do not see how to improve the situation in the
general case.=C2=A0 But maybe there is some well-known cases.


> Often a name is used to refer to a package, and it's annoying to g= o through a search, especially when you have to filter a big output.

I agree.=C2=A0 From my point the issue is that "guix search" is n= ot doing
the job and the improvement should come from this.=C2=A0 And your 'gpg&= #39;
example is a good one, IMHO:

--8<---------------cut here---------------start------------->8---
$ guix search gpg | recsel -C -p name,relevance
name: signing-party
relevance: 16
name: qgpgme
relevance: 15
name: libgpg-error
relevance: 14
name: python2-gpg
relevance: 11
name: python-gpg
relevance: 11
name: ledger-agent
relevance: 9
name: python2-pygpgme
relevance: 8
name: python-pygpgme
relevance: 8
name: gpgme
relevance: 8
name: kgpg
relevance: 6
name: jetring
relevance: 6
name: emacs-pinentry
relevance: 6
name: trezor-agent
relevance: 5
name: python-trezor-agent
relevance: 5
name: keepkey-agent
relevance: 5
name: qtpass
relevance: 2
name: pinentry
relevance: 2
name: pinentry-tty
relevance: 2
name: pinentry-qt
relevance: 2
name: pinentry-gtk2
relevance: 2
name: pinentry-gnome3
relevance: 2
name: pinentry-emacs
relevance: 2
name: pinentry-efl
relevance: 2
name: kleopatra
relevance: 2
name: gnupg
relevance: 2
name: gnupg
relevance: 2
name: git-remote-gcrypt
relevance: 2
name: gajim
relevance: 2
name: emacs-extend-smime
relevance: 2
name: assword
relevance: 2
--8<---------------cut here---------------end--------------->8---

The expected package 'gnupg' appears... piouf!

I fully agree that the experience with "guix search" is frustatin= g.
And maybe using both the 'upstream-name' and an extra 'properti= es'
such as 'alternative-names' or 'extra-keywords' should help= for
discoverability.


WDYT?

All the best,
simon
--000000000000a2f51205a54f3b23--