Subject: [bug#39258] [PATCH v2 0/3] Xapian for Guix package search

From: Pierre Neidhardt <[email-masked]>
Date: Mon, 09 Mar 2020 08:50:35 +0100

Ludovic Courtès <[email-masked]> writes:

> Yeah.  I think we need to take the whole user experience into account,
> not just ‘guix search’.  ‘guix pull’ already feels very slow, and it’s a
> fairly common operation.  Conversely, ‘guix search’ takes roughly
> between 0.5 and 2 seconds and is an uncommon operation on a “slow path”
> (in the sense that when you’re searching for software, you’ll probably
> have to spend more than a couple of seconds to find what you’re looking
> for.)

I think I disagree with "guix search" being an uncommon operation and 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.

- 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).

This issue can only be tackled with a GUI: there the user would be able
to interactively act with the result of the search, without having to
re-run the search.

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.

Back to the topic: I believe that Xapian is a huge win both for the
shell and the future GUI :)

-- 
Pierre Neidhardt
https://ambrevar.xyz/