GSoC18 - Better Profile Support Proposal
Better Profile Support

Name: Ibrahim Fathy Abdelmageed Elsayed Eissa

forum/e-mail: IbrahimFathy/[email protected]

Summary: Kodi profile support does not support multiple users in a perfect way, data and configurations are not separated among different profiles, just for example. And the profile codes doesn’t support adding more features easily.

How will I achieve this: First, I will split metadata from userdata in the database tables in the seek of, for example, making watched state/count profile dependent.
Then I will redesign the storage logic on the db end and then design and implement a framework, in C++, that provides a standard interface for user data and profiles. as Poplap and Dave Hand supposed.
Then I will redesign the unclear parts of Profile code that make it hard to modify.

What will the project focus on: Profile Support, DataBase Handling.

Benefits: Users with multiple profiles will gain the advantage of separate addons and separate data.
Developers will be able to add more featrures easily.


  1. Allow addons to be installed per profile. Right now all addons are stored in the same place and are used by all profiles but every profile has its own addon database so addons can be enabled/disabled per profile.
  2. Better support for library sharing like independent watched states. Right now when a library is shared every property of the library items is shared including watched state and resume positions etc.
  3. Improved integration in the code. Right now there are a lot of hacks all over the place to handle some of the profile features but it is often forgotten when writing new code.

What does it touch in Kodi: Profile system,  userdata, database, settings, addons

Requirements: C++ coding experience, DB, access to multiple Kodi installations for testing.

Possible mentors:
Hey there, nice to have you here! Smile
Hi, Any Comments?
Sure, I would hope for a more detailed proposal. And also a timeline when you will be doing what.
There was a previous GSOC project accepted to provide better profile support however the student had to drop out very early on due to personal issues arising preventing any work on it being done, so I don't believe any coding got underway but in case there's anything useful in the discussions regarding ideas for what might be required see:

222006 (thread)
220295 (thread)
Thanks for your interest @Razze  @jjd-uk , I'd read both of them and I've built my proposal on some of their ideas.
I've updated the draft with my final proposal, I'd like to hear feedback from you guys. thanks <3 .
I am particularly interested in Goal #2. It's often confusing, particularly with TV Shows, to know where you've left off if multiple users are watching the same show within the same general timespan (possibly from different devices).

With the way that Profiles are currently implemented, I was under the impression that separate DBs needed to be maintained per Profile. And since I did not want to do that, I didn't invest much more time learning about them.

Regardless, I hope you are progressing well with this proposal and encourage you to continue Big Grin
As did not happen for gsoc the current plan is to rip out profiles completely and reintroduce them after that (so kodi 19+)
Thread Rating:
  • 0 Vote(s) - 0 Average

Logout Mark Read Team Forum Stats Members Help
GSoC18 - Better Profile Support Proposal00