Subject: Re: [bug#43182] [PATCH 3/3] gnu: nomad: Update to 0.2.0-alpha-100-g6a565d3.

From: Mike Rosset <[email-masked]>
Date: Sun, 06 Sep 2020 23:55:47 -0700

Mathieu Othacehe <[email-masked]> writes:

> Hello Mike,
>
> I pushed the two first ones, thanks.
>
>> * gnu/packages/guile-xyz.scm (nomad): Update to 0.2.0-alpha-100-g6a565d3.
>
> For this one, you need to describe every change exhaustively, according
> to the commit message convention. For instance:
>
> [native-inputs]: Add "gettext".
> [propagated-inputs]: Move "glib-networking" to ....
> [inputs]: ... here.
>
> and so on.

I'll reword this commit message.

>> +                 `("GI_TYPELIB_PATH" ":" prefix (,gi-path ,(getenv "GI_TYPELIB_PATH")))
>> +                 `("GIO_EXTRA_MODULES" ":" prefix (,(getenv "GIO_EXTRA_MODULES")))
>
> You can wrap a few lines here to stay under the 78 columns limit.
>
>> +                 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix ,gst-plugins)
>> +                 `("NOMAD_WEB_EXTENSION_DIR" ":" prefix (,ext-path)))
>
> If NOMAD_WEB_EXTENSION_DIR is wrapped, it is up to the user to set
> it. Don't we want to keep it as a native-search-paths so that any
> extension package to nomad is automatically added to this variable?
>

No, web extension is a GTK term for extending the WebKit process
which runs outside of the GTK/Glib process.

The extensions are dynamic libraries and you need to tell the
WebKitWebContext where to look for them. Normally I'd just substitute
in the $(libexecdir).  But we need to use the libs in the build directory for
testing.  And I can't use libtool --mode=execute -dlopen. Because the
WebKit process does the dlopen.

We don't actually do much with the WebProcess right now.  But later it's
a pathway to DOM introspection using scheme... at least in theory.

So it's easier to just set NOMAD_WEB_EXTENSION_DIR in pre-inst-env.  For
end users setting NOMAD_WEB_EXTENSION_DIR explicitly in a wrap will have
no impact. Since nomad extensions are done in scheme and use the normal
search path mechanisms for guile.

Mike