From: "Ludovic Courtès" <ludo@gnu.org>
To: Pierre Neidhardt <mail@ambrevar.xyz>
Cc: Guix-devel <guix-devel@gnu.org>
Subject: Package file indexing
Date: Sat, 23 Mar 2019 17:27:25 +0100 [thread overview]
Message-ID: <87bm21y2s2.fsf_-_@gnu.org> (raw)
In-Reply-To: <87zhpx846u.fsf@ambrevar.xyz> (Pierre Neidhardt's message of "Thu, 14 Mar 2019 23:46:33 +0100")
Hello,
Pierre Neidhardt <mail@ambrevar.xyz> skribis:
> I haven't though through the details, but I am under the impression that the
> file listing could be retrieve with the same mechanism as "guix size", i.e. from
> the substitute index. I think it would work well on the build farm, without
> more complexity than just another entry to the substitute index.
‘guix size’ uses substitute info (“narinfos”) to determine the size of
store items that are unavailable locally. However, there’s currently no
source of information for file indexes.
My suggestion would be to couple the distribution of file indexes with
the substitute mechanism: if you’ve authorized a given substitute
server, you’d also allow downloads of file lists signed by that server.
An index could look like, say, a list of store item/file pairs. It
would grow very quickly, which may not be very practical. ‘guix
publish’ could update that list every time it “bakes” a nar.
The daemon could have a special RPC: you give it a file name and it
returns a store item (or package+version?) or #f. Internally it’d call
‘guix substitute’ to fetch the file index from the substitute server,
check its signature, cache it locally, and then look up the file.
You should look at how NixOS does it for its ‘command-not-found’ support
(I think it’s part of NixOS, not Nix). IIRC they distribute an SQLite
database, but it’s a pretty ad-hoc mechanism without authentication.
Ludo’.
next prev parent reply other threads:[~2019-03-23 16:27 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-14 18:31 Improve package search mikadoZero
2019-03-14 20:49 ` Leo Famulari
2019-03-14 22:01 ` Tobias Geerinckx-Rice
2019-03-14 22:09 ` Tobias Geerinckx-Rice
2019-03-14 22:46 ` Pierre Neidhardt
2019-03-14 23:09 ` Tobias Geerinckx-Rice
2019-03-23 16:27 ` Ludovic Courtès [this message]
2019-03-25 8:46 ` Package file indexing Pierre Neidhardt
2019-03-26 12:41 ` Ludovic Courtès
2020-01-02 17:12 ` Pierre Neidhardt
2020-01-02 19:15 ` Christopher Baines
2020-01-03 11:26 ` Ludovic Courtès
2020-01-09 11:19 ` Pierre Neidhardt
2020-01-09 12:24 ` zimoun
2020-01-09 13:01 ` Pierre Neidhardt
2020-01-09 16:49 ` Christopher Baines
2020-01-10 12:35 ` Pierre Neidhardt
2020-01-10 13:30 ` Christopher Baines
2020-01-11 18:26 ` Pierre Neidhardt
2020-01-12 13:29 ` Christopher Baines
2020-01-13 14:28 ` Pierre Neidhardt
2020-01-13 17:57 ` Christopher Baines
2020-01-13 18:21 ` Pierre Neidhardt
2020-01-13 19:45 ` Christopher Baines
2020-01-14 9:21 ` Pierre Neidhardt
2020-01-02 22:50 ` zimoun
2020-01-03 16:00 ` raingloom
2020-01-06 16:56 ` zimoun
2020-01-09 13:01 ` Pierre Neidhardt
2020-01-09 13:53 ` zimoun
2020-01-09 14:14 ` Pierre Neidhardt
2020-01-09 14:36 ` zimoun
2020-01-09 15:38 ` Pierre Neidhardt
2020-01-09 16:59 ` zimoun
2020-01-09 12:57 ` Pierre Neidhardt
2020-01-09 12:55 ` Pierre Neidhardt
2020-01-09 14:05 ` zimoun
2020-01-09 14:21 ` Pierre Neidhardt
2020-01-09 14:51 ` zimoun
2020-01-09 15:41 ` Pierre Neidhardt
2020-01-09 17:04 ` zimoun
2020-01-09 17:27 ` Pierre Neidhardt
2020-01-15 16:23 ` Pierre Neidhardt
2020-01-15 17:27 ` Nicolò Balzarotti
2020-01-15 18:02 ` Pierre Neidhardt
2020-01-15 22:14 ` Ludovic Courtès
2019-03-16 2:11 ` Improve package search mikadoZero
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87bm21y2s2.fsf_-_@gnu.org \
--to=ludo@gnu.org \
--cc=guix-devel@gnu.org \
--cc=mail@ambrevar.xyz \
/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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
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).