Hi community,
This post follows @francois-techene’s Design Report #4, in which he talks about Symbiotic Applications.
The idea behind the PureOS design guidelines is to replace the concept of standalone, independent and feature-competing applications with a concept of small, single-purpose, cross-integrated applications—that would interact between each other to provide a unified experience across the device (and beyond). Those small applications can be seen as “features” of the system. 1 purpose = 1 feature.
I really like the concept. I also read @nicole.faerber’s Librem 5 Phone Progress Report, especially the part about the SMS sending through oFono.
The SMS was sent with a python script using the native oFono DBus API. First the kernel drivers for the modem had to be enabled followed by running ofonod which autodetects the modem.
In my understanding, the communication betweend every backend to a Feature (capital F as I’m talking about the Features described by François) and the GUI would be made through D-Bus. Do we have a bit more detail on how Purism will aggregate those backends? Will each backend expose a D-Bus service which will be consumed by the GUI? How would the GUI be aware of a new backend for a given Feature?
EDIT: mentioning @mdt and @Dwaff who are likely to be interested on the matter (see this post )