Alex Griffin <a...@ajgrf.com> writes: > On Fri, Jul 29, 2016, at 09:02 AM, Thompson, David wrote: >> Sorry I'm late, but I don't think this is the right fix.
Sorry for not letting you the time to respond. >> Wrapping programs should only be considered after other options are >> exhausted. The correct fix is to patch the source directly to refer >> to executables by their absolute path. Why wasn't it done this way? > > Mostly because it would be a lot of on-going work every time the package > is updated. As a shell script, it invokes an external tool nearly every > other line. If you look at the discussion that happened in February when > the package was first added [1], Jessica (the original packager) was > really discouraged by the prospect of patching every invocation of an > external tool. She also tried to submit changes upstream so that kind of > work wouldn't be necessary, but upstream wasn't very receptive to the > idea. In the end, the package was just committed to Guix in a broken > state. > > Another approach I considered was adding a bunch of shell aliases to the > top of the script pointing to the Guix store. That makes the problem a > lot more tractable than replacing every external invocation, but it's > still kinda complicated and it still requires finding every single > program that gets called and keeping it up to date with new releases. So > even if all upstream does is use another program from coreutils, the fix > would be out-of-date again. > > [1]: https://lists.gnu.org/archive/html/guix-devel/2016-02/msg01310.html This makes sense to me. -- Mathieu Lirzin