
Most of the function is already asynchronous, except for the initialization of the returned proxy. gjs' D-Bus wrapper gained some convenience API a while ago that makes this trivial enough, so use it. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3636>