I experimented a bit and it doesn’t seem possible to “forward” content from one snap to another.
I created three dummy snaps (pastebin) and connected the interfaces:
mir-graphics-16-core18:mir-graphics-16-core18 miral-2-core18
miral-2-core18:miral-framework-2-4-core18 mate-wayland:miral-2-4-core18
miral-2-core18
could see the graphics contents:
$ snap run --shell miral-2-core18.nil -c "find \$SNAP -name lib*"
/snap/miral-2-core18/x1/miral-framework/mir-graphics/lib1
/snap/miral-2-core18/x1/miral-framework/lib2
Unfortunately mate-wayland
only saw the contents from the miral…
snap:
$ snap run --shell mate-wayland.nil -c "find \$SNAP -name lib*"
/snap/mate-wayland/x1/miral/miral-framework/lib2
We’d need another way to share the platforms with the client… I would really like to limit the Mir interfaces to just one, as far as the server is concerned. That said, servers are not as many and they are bound to Mir in the first place. So maybe them declaring compatibility with a certain platform ABI is not that bad. If only MirAL could abstract this away as well…
I’ll post on the snapcraft forum to see what they can come up with.