No. Never. It's a ruse.
smpl
I will conveniently avoid any dbus talk, because the why is not so interesting as the how and direct you to this path /var/run/wpa_supplicant
. You would probably send SCAN_RESULTS
on the socket, you could also initiate a SCAN
first to include the strength of stations you're not connected to. If you want deeper access to wireless, you use netlink to communicate with the kernel (see /usr/include/linux/nl80211.h
) and poke some NL80211_STA_INFO
s.. or the other direction (everything is a file) you just parse /proc/net/wireless
without any special permissions for the current signal strength.
Oh.. and btw dbus has a simple binary protocol underneath all the XML/interface fluff and uses a UNIX socket.
My best guess is that you forgot the -f parameter to qemu-img.
Just to clarify. The gi://
resources are GObject Introspection modules which are used for multilanguage bindings to native libraries. On my system, GI modules are found in /usr/share/gir-1.0/
. They're just imported by name and sometimes version using gi://
(there are examples in the link in my first comment).
As I don't have Gnome installed I can't be sure of the path to gnome shell modules imported using resource://
, but it's probably the path I wrote, but without js/
.
It is very likely the wrong path, I just extrapolated the path from the gnome-shell git repo. I don't use Gnome myself, I'm on the enemy team using LXDE on Devuan ;)
I edited my comment with an example for your code and my best advice for figuring out the path of gnome shell imports is by browsing /usr/share/gnome-shell/js/
, the docs are not very helpful.
GNOME Shell 45 moved to ESM (ECMAScript modules). That means you MUST use the standard import declaration instead of relying on the previous imports.* approach.
https://gjs.guide/extensions/upgrading/gnome-shell-45.html
So the imports in your extensions is changed from:
const Clutter = imports.gi.Clutter;
const Gio = imports.gi.Gio;
const Main = imports.ui.main;
const Volume = imports.ui.status.volume;
to
import Clutter from 'gi://Clutter';
import Gio from 'gi://Gio';
import * as Main from 'resource:///org/gnome/shell/ui/main.js'
import * as Volume from 'resource:///org/gnome/shell/ui/status/volume.js';
Because RAM is so cheap, right?