guix-devel
[Top][All Lists]
Advanced

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

Re: Building many packages in order


From: Ricardo Wurmus
Subject: Re: Building many packages in order
Date: Mon, 24 Oct 2016 15:56:43 +0200
User-agent: mu4e 0.9.16; emacs 25.1.1

Hartmut Goebel <address@hidden> writes:

> Hi,
>
> testing the new python build system I’m seeking for some way to build
> *many* packages in order.
>
> Of course I can just run `guix build` with the list of packages to be
> build. But when building all python packages, the list gets rather long
> and does not fit into one call of `guix build` (due to the number of
> arguments xargs passes to the command is restricted). Thus only
> partitions of the packages are build in order.
>  
> So I need some way for passing *all* packages to be build to `guix build`.

Here’s what I do to rebuild all bioconductor packages:


guix build -e '((@@ (gnu packages) fold-packages)
                (lambda (pkg acc)
                  (if ((@@ (guix import cran) bioconductor-package?) pkg)
                      (cons pkg acc)
                      acc))
                (list))'

“fold-packages” takes a procedure that accumulates a list of packages.
It takes the current package and the list of accumulated packages so
far.  Here I’m using “bioconductor-package?” as a predicate, but you
could use something else in its place (e.g. a procedure testing the
package name).

~~ Ricardo



reply via email to

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