Folks currently adds a persona to the primary store when it links together personas via Folks.IndividualAggregator.link_personas. There are a couple of problems with it:
- The PersonaStore may not allow adding a new persona (especially without certain properties) e.g using Nextcloud via eds
- We show a "ghost" contact to the user, he could modify/delete from other clients e.g Evolution
- We can't safely remove the created persona because we can't be sure that the it wasn't modified outside our control. (currently it's not removed)
- The new created persona can be stored in a completely different location then all other personas of the individual.
This tries to fix the issue by using the key-file store which is a location controlled by us and not exposed to the user and therefore he can't modify the persona (except obviously changing the file where we store the personas). This way we want ever create personas which are messing up the user's contact list.
Related to: gnome-contacts#145