Skip to content

networkAgent: Search plugins asynchronously instead of caching them

Florian Müllner requested to merge fmuellner/gnome-shell:nm-plugin-dir into master

Quoting the first commit:

libnm doesn't only search for plugins in the regular VPN plugin directory,
but also in the legacy location and the directory pointed to by the
NM_VPN_PLUGIN_DIR environment variable (if set).

We don't monitor the additional directories, so it's possible for our cache
to become outdated.

Instead of trying to play catch-up with libnm's internals, do what nm-applet
does and use the appropriate API to look up the plugin on each request.

To minimize the impact of this change, follow-up commits add an async wrapper around the NM API and use it to off-load plugin loading to a thread.

Fixes #2386 (closed)

Edited by Florian Müllner

Merge request reports