Dear Tomas,

Would you mind sharing your wrapper script? Maybe I (and others) can learn from it.

Cheers,
Alex

On Wed, Oct 08 2025, 23:18:52, Tomas Volf <[email protected]> wrote:

Alexander Asteroth <[email protected]> writes:

Dear all,

I really love the declarative way of guix system and guix home to configure my
installation.
Unfortunately it often happens that after a guix pull some package (currently
it's python-autopep8) fails to build.
Often this package is just some dependency (and I don't even have a clue why
python-autopep8 is needed by which package).
The problem is now, that due to the transactional manner in wich guix
reconfigure works I get stuck completely.
I can't even change a dotfile (since it's managed by guix) or install a new
package I need.
Of course I could do that manually but that would lead to the chaos I had before
using guix home.
The only solution I see to get my system back to working would be to undo the
guix pull (but is there a way to do that?).

guix pull --roll-back

There must be a better strategy to deal with these situations, like excluding
the failing package and it's dependencies to get updated.
How do you deal with this situation (since it happens quite often).

I personally have a wrapper script for guix pull which pulls into a temporary profile (--profile=/tmp/pull-test-profile) and tries to build (but only build, not reconfigure!) both my home and my system. Only if
that passes I pull my guix to the same, already vetted, commit.

Tomas

--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

Reply via email to