Does sandboxing somehow block systemBus DBus calls? Does it take some specific permission to allow them?
The following DBus call:
QDBusMessage mm = QDBusMessage::createMethodCall("com.jolla.apkd",
"/com/jolla/apkd",
"com.jolla.apkd",
"controlService");
mm << false;
QDBusConnection::systemBus().call(mm);
works perfectly fine only if I disable sandboxing. As soon as I enable sandboxing, it just stops working.
I also tried doing it as a QML-only app, e.g.
DBusInterface {
id: apkInterface
bus: DBus.SystemBus
service: 'com.jolla.apkd'
path: '/com/jolla/apkd'
iface: 'com.jolla.apkd'
}
apkInterface.typedCall("controlService", [{ "type": "b", "value": false }])
with the exact same result, i.e. it works OK only as long as sandboxing is disabled.
Does anyone know what to do (e.g. which permissions to use, or whatever else needs to be done) to make it work with sandboxing enabled?
It seems to be affecting SystemBus calls only. In my other apps I use some SessionBus calls, which work OK regardless of whether sandboxing is disabled or enabled…