We need to have some mechanism with which built-in features, etc., can declare themselves as always installed (in the "isInstalled" block)..
From the arch notes:
Dynamic Device Reporter:
Remaining work / plan
Unit tests for the function https://github.com/GPII/universal/blob/master/gpii/node_modules/deviceReporter/src/DeviceReporter.js#L112-L130
This requires a "mock live device reporter" implementation in universal
If there is NO 'isInstalled' block - or if it's present but empty, the solution is considered NOT installed.
there is one solution in the linux.json test data for 'com.ilunion.cloud4chrome' that does not have a 'isInstalled' block, and the DR (in production mode) does NOT report that solution as installed.
Only missing acceptance tests. Are expected to have a pull request by the end of October 15th.
It will be updated soon ...
What do we do with built in features that are always installed? (e.g. windows magnifier or onscreen keyboard)
How about we say that they are always installed : P
If nothing is specified in the isInstalled block, the application is considered installed (this is current NOT the behavior of the system.)
We decided against this behaviour - an explicit isInstalled entry will be required
What about browser plugins:
We are currently unable to determine whether a extension is installed. Instead we will check that the google chrome browser is installed - and if it is, report the extension as installed as well. In case the extension is not actually installed, the only consequence is that chrome extensions settings will live in the browser channel buffer - but the system wont crash or the like.