Auto-connect wpe-webkit-mir-kiosk:dbus-cogctl

I’m the publisher of the wpe-webkit-mir-kiosk snap. It’s the WebKit fork WPE together with the cog web shell launcher, packaged as a kiosk application on top of mir-kiosk, and runs as a daemon/service.

I’d like to request automatic connection for its DBus slot dbus-cogctl, so that snaps which use the corresponding plug are able to remote-control the browser via DBus. As of this writing, cog exposes the following interfaces under the com.igalia.Cog bus name at object path com/igalia/Cog:

  • org.freedesktop.DBus.Introspectable
  • org.freedesktop.DBus.Peer
  • org.freedesktop.DBus.Properties
  • org.gtk.Actions

The Actions interface provides a small set of commands: navigate to the previous/next page, reload the page, open a URL and quit the browser.

If it’s not possible/feasible to do that on a global basis for all snaps that integrate this as a plug, I’m also ok with reducing the scope to auto-connect the plug mirros-one:dbus-cogctl to wpe-webkit-mir-kiosk:dbus-cogctl. mirros-one is also my own snap that provides a “smart mirror” app stack for IoT appliances, and one of its features is to reload the display web app through DBus.

Feel free to check the slot definition in the snapcraft.yaml or let me know if a decision requires further clarification.

1 Like

Since your snap was granted use of the com.igalia.Cog well-known name, it is allowed to bind on this and be used by all non-snaps in your session (ie, it should integrate with the desktop, etc using standard methods).

For snaps, you’re right that other snaps can’t use this without a manual connection. We typically do not grant global auto-connect to slotting snaps without careful review of the slotting snap, a clear justification for why it is warranted and guarantees that the APIs will be stable so as not to break plugging snaps.

Granting on a per-snap basis, especially for snaps from the same publisher is less involved.

I’ve verified that mirros-one is the same publisher and have granted auto-connection to wpe-webkit-mir-kiosk for all of your snaps.

1 Like

Thank you very much! This helps a lot for existing installations.

I understand and appreciate your policy regarding global auto-connections. At the moment, wpe-webkit-mir-kiosk isn’t used that widely, and I think its primary use case as a kiosk browser warrants that users can be expected to run a quick snap connect command (or build their own gadget anyway). Auto-connection would be primarily about convenience when integrating other snaps.

Since I’m just packaging upstream projects with some glue code and snap adjustments, I can’t guarantee API stability, and the Cog Web launcher which can be controlled via this slot is still pre-1.0.

Short: Thanks for granting auto-connect for my own snaps, and I’m withdrawing the request for global auto-connection :blush: