KDE Dbus issues Neochat

I am getting Apparmor DENIED despite having the relevant plugs enabled. I tried to create slots for them, and was of course denied at the store level. I need to know where things are going terribly wrong.

unity7 is in plugs yet: Log: apparmor=“DENIED” operation=“dbus_signal” bus=“session” path="/com/canonical/unity/launcherentry/neochat" interface=“com.canonical.Unity.LauncherEntry” member=“Update” mask=“send” name=“org.freedesktop.DBus” pid=145899 label=“snap.neochat.neochat” peer_pid=5448 peer_label=“unconfined” DBus access

This breaks our tray icon.

@alexmurray

PS: the rest mysteriously fixed themselves.

Hey @sgmoore , I see that you have uploaded new revisions of the neochat snap and it passes the automated review. Let up know if you require further help, otherwise I can close this request and remove it from our queue. Thanks.

No it is not resolved. unity7 is not working as expected to to the above error. Thanks, Scarlett

Hi Scarlet,

The apparmor rule currently is:

path=/com/canonical/unity/launcherentry/[0-9]*

( https://github.com/snapcore/snapd/blob/870b45264b20074a3e333547a9c3e43bc4ff8359/interfaces/builtin/unity7.go#L497C36-L497C36 )

Neochat wouldnt fit this pattern, the unity7 interface itself would need to be amended and then the snapd release rolled out to users for it to work. The actual PR wouldn’t be complicated but these changes would need security review and I’ve no understanding about that myself so wouldn’t want to create a PR for it. I’d imagine the change would just be:

path=/com/canonical/unity/launcherentry/

Since this feels more like a general snap related issue rather than something store specific, I am moving this request to the snap category for now. Thanks.

Wouldn’t it be a snapd issue? Or are the neochat developers wrong here and I need to file there?

This D-Bus signal is done by Qt’s QGuiApplication::setBadgeNumber API. telegram-desktop snap has the same problem. It’s also not about tray but about taskbar/dock icon as tray icon uses a completely different protocol.