Use conman's pacrunner daemon for proxy autoconfig?
Submitted by David Woodhouse
Link to original bug (#723222)
Description
I keep finding the glib-pacrunner process eating CPU and doing repeated requests for the same URLs over and over again.
One of them was the Exchange server used by Evolution-EWS. But even after killing all evolution processes, glib-pacrunner was still doing it. It doesn't seem to have been in response to external stimuli.
In fact, glib-pacrunner probably shouldn't be running on my system at all. As I understand it, glib-pacrunner is a workaround for the insanity of libproxy, which likes to load a new JS interpreter and go and autodiscover the proxy settings in the context of every application which ever needs to know which proxy it should use.
But on my system I'm doing things sanely. PacRunner (https://git.kernel.org/cgit/network/connman/pacrunner.git/) is running, and is automatically fed with proxy information by a NetworkManager dispatcher script. All anyone ever has to do to find which proxy to use for a given URL is send a DBus message to PacRunner.
I have installed the libproxy-pacrunner module, which is a high-priority module which makes sure that asking PacRunner is all that libproxy is ever going to do, either. This basically renders glib-pacrunner redundant, as I understand it.
I suspect we should attempt talking to PacRunner directly over DBus, and only fall back to glib-pacrunner and using libproxy if PacRunner is not there.
Version: 2.28.x