Hi,

On Mon, 05 Oct 2026 at 22:10, Ricardo Wurmus <[email protected]> wrote:

> Yes, I use
>
>    ./pre-inst-env guix refresh -t cran -u
>
> and later
>
>    ./pre-inst-env guix refresh -t bioconductor -u
>
> A lot of time is spent on cleaning up the diff, e.g. to remove 
> excessive native inputs and to cut dependency cycles.  Sometimes 
> this requires disabling tests.  I also record properties to 
> hopefully simplify the next update.  A very small number of 
> package updates I revert right away, because I know that I can't 
> build bundled artifacts from source.

I can confirm the time-consuming task is to walk through the diff and
clean up.  Although the R ecosystem is reliable, sometimes the importer
introduces “weird” packages.  And it needs a couple of trial-errors to
spot the usual suspects.

> I often run "make" to see what packages I need to add or which 
> references I need to remove.

IMHO, it also requires to try to build some packages for detecting the
cycles and thus add/remove the correct ones.

>                               More info in Message-ID: 
> <[email protected]>.

        For updates to R itself (= r-minimal and r-with-tests) I build the 
        hidden r-with-tests once and r-minimal with "--rounds=3 -K" to see 
        if there are reproducibility problems. […]
                                      […]  When this works I push to r-team 
        and let the build farm build out all R packages.

Before I did not feel confident, before starting, I did:

        for p in $(cat gnu/packages/cran.scm | grep define-public | grep -E r\- 
| sort);
        do
            guix build $p -q
        done

to have 1. the list of broken packages and 2. download beforehand all
the dependencies.  And I also looped with:

    guix build etc/teams/r/r-manifest.scm -q

then ’guix build r-foo` where r-foo is the one which failed.  This
helped me to resolve the cycles.

Cheers,
simon


Reply via email to