Open sonnyp opened 7 months ago
Actually libspiel has a concept of default voice so the method Speech
on org.freedesktop.Portal.Speech
could be called without specifying a provider.
But providers should still be discoverable by apps so users can choose the appropriate one for this app.
provider_id
will need to be added to the relevant methods on the Speech
method of the portal interface
@eeejay confirmed that the voice id is only unique by provider
@eeejay said
It would be cool if the portal could have ActivatableServicesChanged/NameOwnerChanged and ListActivatableNames/ListNames that are prefiltered to only show speech providers
So we need to keep in mind the portal needs an APIs to notify of new providers available etc
Dbus allows to export different objects implementing the same interface, so we can expose one object per provider and an object for the default provider.
Dbus allows to export different objects implementing the same interface, so we can expose one object per provider and an object for the default provider.
Yup that's a good way to go.
This issue is about discussing what's needed for apps to make use of libspiel without punching hole in the sandbox with
"--socket=session-bus"
.That particular static permission is considered unsafe. See for example Bustle on Flathub
In the Flatpak world we solve this with portals https://flatpak.github.io/xdg-desktop-portal/ ; we would need a new one, for example
org.freedesktop.portal.Speech
.Since libspiel architecture doesn't use a service - I 'm not exactly sure how the portal would work but here is an idea to get the ball rolling
GetProviders
andSetProvider
methods