Mark H Weaver <m...@netris.org> skribis: > From 3f503705098745ddd54251a46b5634e78b209e5f Mon Sep 17 00:00:00 2001 > From: Mark H Weaver <m...@netris.org> > Date: Fri, 28 Mar 2014 03:54:01 -0400 > Subject: [PATCH] union: Rewrite to be faster; handle symlink/directory > conflicts. > > * guix/build/union.scm: Rewrite; only 'file=?' remains unchanged. Remove > 'tree-union' and 'delete-duplicate-leaves' exports. Merge inputs in a > breadth-first fashion. Follow symlinks for purposes of making decisions > about the merge. > > * tests/union.scm: Remove tests of 'tree-union' and 'delete-duplicate-leaves'.
I stumbled upon this bug: building a profile with a single package fails, because the new union.scm makes the profile directory a symlink to that package, which then prevents the creation of the ‘manifest’ file: --8<---------------cut here---------------start------------->8--- $ guix package -i idutils -p foo The following package will be installed: idutils-4.6 out /gnu/store/p86dq5svczkmk2ym8rd8xvvv9089hq51-idutils-4.6 The following derivation will be built: /gnu/store/9iyyi8mzggmycs27wsmsgx7fn3sfq40l-profile.drv [...] 883: 1 [call-with-output-file "/gnu/store/3za8jyx93m12lzn0278d6m8bprni2nrn-profile/manifest" ...] In unknown file: ?: 0 [open-file "/gnu/store/3za8jyx93m12lzn0278d6m8bprni2nrn-profile/manifest" ...] ERROR: In procedure open-file: ERROR: In procedure open-file: Permission denied: "/gnu/store/3za8jyx93m12lzn0278d6m8bprni2nrn-profile/manifest" builder for `/gnu/store/9iyyi8mzggmycs27wsmsgx7fn3sfq40l-profile.drv' failed with exit code 1 @ build-failed /gnu/store/9iyyi8mzggmycs27wsmsgx7fn3sfq40l-profile.drv - 1 builder for `/gnu/store/9iyyi8mzggmycs27wsmsgx7fn3sfq40l-profile.drv' failed with exit code 1 guix package: error: build failed: build of `/gnu/store/9iyyi8mzggmycs27wsmsgx7fn3sfq40l-profile.drv' failed --8<---------------cut here---------------end--------------->8--- (We can’t catch it in the test suite because tests work on a local store that is writable.) Could you look into it? Ludo’.