Thompson, David writes: > On Thu, Feb 11, 2016 at 5:40 PM, Ludovic Courtès <l...@gnu.org> wrote: >> "Thompson, David" <dthomps...@worcester.edu> skribis: >> >>> On Wed, Feb 10, 2016 at 9:17 AM, Ludovic Courtès <l...@gnu.org> wrote: >>>> Christopher Allan Webber <cweb...@dustycloud.org> skribis: >>>> >>>>> Just for posterity, Dave helped me figure out what was wrong. I missed >>>>> putting guile-2.0 in my inputs. Critical! Well, once I did that, >>>>> things were fine! >>>> >>>> Indeed. However, since Haunt ships a command-line tool, we should fix >>>> the Haunt package in Guix to wrap ‘bin/haunt’ such that the tool has >>>> GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH properly set. >>>> >>>> Done in 4ecbf6d. I think it should be fixed upstream though. :-) >>> >>> I don't understand why this would require an upstream fix for what >>> seems to be a Guix-specific quirk. Could you elaborate? >> >> I think stand-alone commands like ‘haunt’ should ensure that they’ll >> find their modules rather than assume that the user defined >> ‘GUILE_LOAD_PATH’ & co. appropriately. >> >> This is particularly important when users are likely to use exclusively >> the CLI (the same is also true of ‘skribilo’, ‘guix’, ‘herd’, etc.) > > Thanks for the explanation, I am convinced and will (eventually) fix > in Haunt and my other Guile applications. Does this also apply to the > applications dependencies, or just the modules for itself? If the > former, I'm actually not sure how to do the relevant autotools magic > to make it work. > > - Dave
Okay, so I'm less convinced! I was thinking about this on my walk. Maybe I have something wrong though... would this also prevent loading other Guile modules when running "haunt build" that weren't inputs, or would it just guarantee that inputs are preferred? If the former, a-ok. If the latter, I am worried: this seems like it could block important late-binding use cases. Eg, if I build a library of Haunt utilities I use across all my Haunt sites and call it haunted-house, will I be able to (use-modules (haunted-house)) still? (Or maybe I'd want to import a new external reader, etc.) If so, then no worries. If not, that's a worry. It'd also be a worry in a project like MediaGoblin, where a user might install a plugin for a new media type outside of MediaGoblin. If they "launch" mediagoblin through some gmg executable, and I took the method above, could they still find a plugin which wasn't an input on the path? (If the above worries are unfounded, then great!)