help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Any clue why $GUILE_LOAD_PATH not propagated with Haunt?


From: Christopher Allan Webber
Subject: Re: Any clue why $GUILE_LOAD_PATH not propagated with Haunt?
Date: Sun, 14 Feb 2016 15:03:13 -0800
User-agent: mu4e 0.9.13; emacs 24.5.1

Thompson, David writes:

> On Thu, Feb 11, 2016 at 5:40 PM, Ludovic Courtès <address@hidden> wrote:
>> "Thompson, David" <address@hidden> skribis:
>>
>>> On Wed, Feb 10, 2016 at 9:17 AM, Ludovic Courtès <address@hidden> wrote:
>>>> Christopher Allan Webber <address@hidden> 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!)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]