[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#27284: [PATCH 0/4] 'guix pull' reloads modules, second try

From: Ludovic Courtès
Subject: bug#27284: [PATCH 0/4] 'guix pull' reloads modules, second try
Date: Mon, 11 Dec 2017 11:52:49 +0100


I’ve pushed the following patches to ‘wip-pull-reload’ so you can test
from whatever snapshot you’re currently running:

  guix pull --branch=wip-pull-reload

As a reminder, this patch set does two things:

  1. Build Guix as several derivations, with the eventual goal of having
     substitutes made available by
     <https://hydra.gnu.org/jobset/guix/modular>.  Typically only the
     derivation corresponding to package modules will have to be built,
     which is already a lot, but better than rebuilding everything every

  2. Load the target Guix modules.  What this means is that the
     derivations above will depend on, say, the latest guile-git and
     guile-ssh package.

     Conversely, we’re currently using dependencies from the current
     Guix, which is a problem, for instance if one of the dependencies
     is broken as was the case in

#2 is tricky because it means we first have to re-compile and
re-evaluate a whole bunch of modules.  The approach that seems to work
OK is to compile just the core modules and to evaluate the others.
That’s still taking ~20 seconds or so on my laptop.


Ludovic Courtès (4):
  gnu: Fix ambiguous 'zip' reference.
  gexp: 'computed-file' has a new #:guile parameter.
  Add (guix self) and use it when pulling.
  pull: Reload modules before doing anything else.

 Makefile.am              |   1 +
 build-aux/build-self.scm | 289 +++++----------------
 gnu/packages.scm         |  21 +-
 gnu/packages/photo.scm   |   4 +-
 guix/discovery.scm       |   3 +-
 guix/gexp.scm            |  16 +-
 guix/scripts/pull.scm    |  91 ++++---
 guix/self.scm            | 652 +++++++++++++++++++++++++++++++++++++++++++++++
 po/guix/POTFILES.in      |   1 +
 9 files changed, 804 insertions(+), 274 deletions(-)
 create mode 100644 guix/self.scm


reply via email to

[Prev in Thread] Current Thread [Next in Thread]