unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Christopher Baines <mail@cbaines.net>
To: 74942@debbugs.gnu.org
Subject: bug#74942: Computing the guix self derivations can require builds
Date: Wed, 18 Dec 2024 11:15:48 +0000	[thread overview]
Message-ID: <87seqlp7h7.fsf@cbaines.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 1441 bytes --]

I wasn't aware of a issue for this, so I'm creating one. I did send some
patches in an attempt to fix this to #61363.

The derivations used by guix pull, guix time-machine and other
operations work differently to package derivations. I might have
understood exactly how in the past, but unfortunately I've forgotten the
details. I think the rough summary is that in contrast to packages, you
can't view the guix self derivations grafting as a transformation on the
built outputs, but rather that transformation is somehow muddled up with
computing the derivations.

As noted in #61363, the data service is affected by this since it relies
on computing derivations being inexpensive to do, and having to
potentially perform many builds for some arbitrary architecture when
attempting to compute derivations can be very expensive. Note that since
the bad behaviour here is dependent on grafts, this only happens when
packages involved in the guix self derivations have replacements.

I think there's probably other implications of this as well, substitute
servers don't store grafted outputs generally, although I think the use
of grafting here probably means that they are storing and providing
substitutes for grafted outputs.

However this is fixed, I think you'd need to end up with two
properties. Computing the derivations doesn't require performing builds,
and grafting is a transformation on the outputs of those computed
derivations.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 987 bytes --]

                 reply	other threads:[~2024-12-18 11:17 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=87seqlp7h7.fsf@cbaines.net \
    --to=mail@cbaines.net \
    --cc=74942@debbugs.gnu.org \
    /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).