Subject: [bug#48028] [PATCH wip-gnome 0/8]: Misc.

From: 宋文武 <[email-masked]>
Date: Sun, 02 May 2021 13:14:48 +0800

Leo Prikler <[email-masked]> writes:

> Am Mittwoch, den 28.04.2021, 09:07 -0400 schrieb Raghav Gururajan:
>> Hi Leo,
>> 
>> > After looking at this more closely, the comment is a little
>> > misleading,
>> > since the libsoup-2.4.pc does not actually refer to glib-
>> > networking.
>> > What is the rationale behind this propagation?
>> > In v1 you claimed the .pc file mentions this, but I don't see any
>> > of
>> > it:
>> > libsoup-2.4.pc:Requires: glib-2.0 >=  2.58, gobject-2.0 >=  2.58,
>> > gio-
>> > 2.0 >=  2.58
>> > libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl
>> > >=  0.20,
>> > libbrotlidec, zlib
>> > libsoup-gnome-2.4.pc:Requires: libsoup-2.4
>> > libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >=  2.58, gobject-
>> > 2.0
>> > > =  2.58, gio-2.0 >=  2.58, libxml-2.0, sqlite3, libpsl >=  0.20,
>> > libbrotlidec, zlib
>> 
>> It `gio` I was referring to. GIO can mean [glib]/lib/libgio or 
>> [glib-networking]/lib/gio/modules/libgio* or both. It depends on
>> what 
>> package it is. Libsoup is a networking package, which uses 
>> glib-networking as tls backend. So GIO networking modules provided
>> by 
>> glib-networking, is required by libsoup at runtime.

Yes, glib-networking provides 2 gio modules:
- libgiognutls.so: Let GIO based applications access HTTPS (TLS).
- libgiognomeproxy.so: Let GIO based applications use GNOME proxy settings.

They're required at runtime, and optional (one may argue that HTTPS is a
must have feature though).  Currently we add glib-networking to webkit
browsers's inputs (eg: epiphany, luakit, etc.)  directly, and wrap it
with 'GIO_EXTRA_MODULES'.  By propagated glib-networking in libsoup, we
can remove it from inputs of thoese web browsers, but we still have to
wrap them...

Maybe there is a way to hardcode glib-networking in libsoup so that we
can get rid of GIO_EXTRA_MODULES?  (another gio module is the gsettings
backends dconf, which also need a user dbus-daemon user spawn its
backend service...)

> I don't think "gio inside .pc" means that, however.  I do agree, that
> it might be worth propagating it as a runtime dependency, but it should
> be done with a suitable comment.

I Agree with Leo.  Raghav, could you look into if we can get rid of
GIO_EXTRA_MODULES for glib-networking or add a specified comment for
this comment (maybe: "For HTTPS and GNOME proxy support")?

Thanks!