Ludovic Courtès writes: > Ludovic Courtès skribis: > >> The attached patches add a mechanism to patch the Guix source tree, and >> then use that mechanism to add the missing (ice-9 threads) import. With >> this I can do: >> >> ./pre-inst-env guix time-machine \ >> --commit=e02c2f85b36ce1c733bd908a210ce1182bdd2560 -- build linux-libre >> >> … which is a simple way to do what the manifest above was about. > > Given the enthusiasm expressed on IRC, I went ahead and pushed. :-) > > ff3ca7979e channels: Add patch for . > 053b10c3ef channels: Add mechanism to patch checkouts of the 'guix channel. > 4ba425060a channels: Add 'latest-channel-instance'. > > So… it might be that today is merge day? Wonderful :) I've had a chance to try this out now, and it works. I was able to reconfigure my system. One even more niche issue is that because I'm using this channel in my system configuration, the patching happens as root, but it's the cached channel in my users home directory that's patched. This means that build-self.scm becomes owned by root. I noticed this when I went to pull: → guix pull --branch=core-updates Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'... guix pull: error: Git error: could not open '/home/chris/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq/build-aux/build-self.scm' for writing: Permission denied I'm not sure what the neat way of addressing this is, but maybe the file ownership can be recorded prior to patching, and reset afterwards if it's changed. Thanks again for looking at the original issue Ludo, Chris