Subject: Re: [bug#38649] [PATCH] Parallelize `guix package`

From: Leo Prikler <[email-masked]>
Date: Tue, 17 Dec 2019 15:34:31 +0100

Am Dienstag, den 17.12.2019, 14:20 +0000 schrieb Brett Gilio:
> 
> Dec 17, 2019 8:19:14 AM Leo Prikler :
> 
> > Hi Guix!
> > 
> > Yesterday I had an interesting conversation on IRC about the
> > behaviour
> > of multiple `guix package` processes running in parallel.
> > Specifically, when two transactions target the same profile
> > (usually
> > /var/guix/profiles/per-user/$USER/guix-profile) at the same time,
> > one
> > of them will fail to claim the lock and abort. 0001 makes it so
> > that
> > the process waits for the lock. 0002 makes it so that packages
> > specified via -i can be built in parallel.
> > 
> > Regards,
> > Leo
> > 
> 
> Can we extend this to include things like environment --ad-hoc?
`guix environment` does not claim any locks, so it does not suffer from
the problem that this patch tries to address.  Perhaps my wording was
bad: By "can be built in parallel", I meant that if one starts two
processes, e.g. `guix install emacs` and `guix install ffmpeg`, emacs
and ffmpeg are built in parallel.  This does not mean, that
dependencies of emacs are built in parallel – for that you'd have to
dig closer to the core.

Regards,
Leo