From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:38867) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBFff-0000yn-Gj for guix-patches@gnu.org; Mon, 09 Mar 2020 06:30:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBFfe-0005Sz-BW for guix-patches@gnu.org; Mon, 09 Mar 2020 06:30:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:43867) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jBFfe-0005Sq-79 for guix-patches@gnu.org; Mon, 09 Mar 2020 06:30:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jBFfe-0003TY-1j for guix-patches@gnu.org; Mon, 09 Mar 2020 06:30:02 -0400 Subject: [bug#39258] [PATCH v2 0/3] Xapian for Guix package search Resent-Message-ID: From: Ludovic =?UTF-8?Q?Court=C3=A8s?= References: <20200307133116.11443-1-arunisaac@systemreboot.net> <87sgijgb1v.fsf@gnu.org> <875zffcc87.fsf@gnu.org> <877dzuvues.fsf@ambrevar.xyz> Date: Mon, 09 Mar 2020 11:28:55 +0100 In-Reply-To: <877dzuvues.fsf@ambrevar.xyz> (Pierre Neidhardt's message of "Mon, 09 Mar 2020 08:50:35 +0100") Message-ID: <87blp54yag.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Pierre Neidhardt Cc: Arun Isaac , 39258@debbugs.gnu.org, zimon.toutoune@gmail.com Hello, Pierre Neidhardt skribis: > Ludovic Court=C3=A8s writes: > >> Yeah. I think we need to take the whole user experience into account, >> not just =E2=80=98guix search=E2=80=99. =E2=80=98guix pull=E2=80=99 alr= eady feels very slow, and it=E2=80=99s a >> fairly common operation. Conversely, =E2=80=98guix search=E2=80=99 take= s roughly >> between 0.5 and 2 seconds and is an uncommon operation on a =E2=80=9Cslo= w path=E2=80=9D >> (in the sense that when you=E2=80=99re searching for software, you=E2=80= =99ll probably >> have to spend more than a couple of seconds to find what you=E2=80=99re = looking >> for.) > > I think I disagree with "guix search" being an uncommon operation and a > slow path. (Not =E2=80=9Cand=E2=80=9D but =E2=80=9Con=E2=80=9D a slow path.) > - The slowness of `guix search' (and the awkwardness of recutils) is > maybe what makes it uncommon: users refrain from using it because it's > too impractical. I think =E2=80=9Cslowness=E2=80=9D and =E2=80=9Cawkwardness=E2=80=9D are ov= erstatements. I=E2=80=99m not saying this is perfect, but to me it=E2=80=99s not bad. (Of course I=E2=80=99m bi= ased :-), but I=E2=80=99ve used other similar tools and this one looks rather good compar= ed to what I=E2=80=99ve used.) > - Searches are typically refined, i.e. you run a search multiple times > by precising the terms, so in that sense I believe `guix search` is a > very common operation. Or should be. > > Anyways, one of the key issues here is the inherent limitation of the > shell interface that does not allow us to directly and contextually > process the output of a command (at least not without rerunning it). I agree, but =E2=80=98guix search=E2=80=99 is a shell command, so we have t= o adapt to that context. > Concretely, the GUI search would only return the package name, version > and synopses. No need for the Texinfo / recutils juggling. > > Then the user would select the packages of interest to display more > details. This allows us to query the full details just-in-time. Note that Emacs-Guix does that, although it doesn=E2=80=99t use the search facility of (guix ui) with relevance metrics. > Back to the topic: I believe that Xapian is a huge win both for the > shell and the future GUI :) It could be, but we need to consider all the aspects of the story, including the maintenance cost and overhead moved to =E2=80=98guix pull=E2= =80=99. So it=E2=80=99s not so much about =E2=80=9Cbeliefs=E2=80=9D at this point, but= rather about demonstrating what can be done, and I=E2=80=99m glad Arun is exploring that space! Ludo=E2=80=99.