Hi Baptiste,

A few questions and a requests

1. what are the characteristics of a global app? E.g., should all
pre-installed apps in the image be global?
2. when is it recommended to per user installation?

In Tizen (IVI) we have a lot of application RPMs that either install a .wgt
web app or
update the AUL db in their %post script.

What is the new recommendation to:

a) install a web app from a .wgt?
b) install a native demo app?

I feel they all should be global for now. However, I think it's important
to understand my question #1
before doing that.

-- Mikko


On Thu, Sep 18, 2014 at 9:16 PM, Baptiste Durand <
[email protected]> wrote:

> Hello all,
>
>
> Since Today the Application Framework provides some news Core API.
> & a new way to install applications
>
> ---------------------------------------------------------------------------------------------------------------------------------
> CAPI Changes :
>
> So what News?
> Now in Tizen 3 we can install/uninstall  applications for dedicated user
> or for all users.
>
> So the Tizen Database are duplicated.
> Each User has it proper database that references all applications
> installed for himself (only) stored in $HOME/.applications/dbspace
>
> The set Applications Databases  are also used to register applications for
> all user (common applications ) also called Global database stored in
> /usr/dbspace
>
>
> In consequences, appid is not unique now.
> Indeed an application can be installed for all user and in a same time for
> a dedicated user.
>
> If a user makes a request to open an app (by using appid), the user's app
> are choosen even if an application with the same appid exists at Global
> level ( avaible for all users)
>
> So now only the couple of value (appid, uid) is unique.
>
> To include this, we has been needed to introduce new CAPI based on Tizen
> 2.X  ones.
>
> All functions fixed by _usr_ with an user id in parameters is related to
> applications or packages Database (depending of CAPI used) of the user
>
> All functions with the same prototype of Tizen 2.X ones are related to
> Common/Systems Applications
>
> We also introduce a Global User concept this user is a fictive one. (In
> Code, we can see some reference to a GLOBAL_USER)
> it exist only for operating on Common Applications Databases.
>
>
> To give an example of what is explain before, we have in application
> information library and pakcage manager library.
>
> AIL :
>   ail_error_e ail_filter_list_usr_appinfo_foreach(ail_filter_h filter,
> ail_list_appinfo_cb appinfo_func, void *user_data, uid_t uid); ail_error_e
> ail_filter_list_appinfo_foreach(ail_filter_h filter, ail_list_appinfo_cb
> appinfo_func, void *user_data);
> -> ail_filter_list_appinfo_foreach permits to apply a filter on Common
> applications only (related to common applications).
>
> -> ail_error_e ail_filter_list*_usr_*appinfo_foreach   permits to apply a
> filter on the applications dedicated to a user (choosen in parameters).
>
>
> SLP-PKGMGR
>   int pkgmgr_client_usr_install(pkgmgr_client *pc, const char *pkg_type,
> const char *descriptor_path, const char *pkg_path, const char
> *optional_file, pkgmgr_mode mode, pkgmgr_handler event_cb, void *data,
> uid_t uid); int pkgmgr_client_install(pkgmgr_client *pc, const char
> *pkg_type, const char *descriptor_path, const char *pkg_path, const char
> *optional_file, pkgmgr_mode mode, pkgmgr_handler event_cb, void *data,
> uid_t uid);
> pkgmgr_client_*usr*_install is used to install an application for a
> dedicated user
>
>
> pkgmgr_client_install is used to install an application for all users
>
>
> We decide to duplicated the CAPI to distinguish Global level to User's
> level.
> for two reasons;
> -> make integration change easier
> ->satisfy a Core API usage in a Core Application Context. (see diagram
> architecture overview)
>
>
> We do not consider :
> pkgmgr_client_install  are equal to  pkgmgr_client_*usr*_install(
> getuid())
> because
> -> CAPI can be used ay System Level by daemon (and a daemon is often not
> associated to a regular user )
>
> So we need to permits to manipulate database by offering two differents
> API (one for Global DB / 1 for user's ones).
> We consider that this concept to take the current user in account should
> be done at HIGH Level API (ie WEB API or Native API) (see diagram
> architecture overview)
>
>
>
> --------------------------------------------------------------------------------------------------------------------------------------
> Pkgcmd new option / Backend for Widget Apps
>
>
> We add ability  to install web apps through pkgmgr-server
>
> so now pkgcmd binary is able to manage applications by using package
> Manager CAPI
>
> we are going to add -G option that permits to install application for all
> users. (coming soon next week).
>
>
>
> ----------------------------------------------------------------------------------------------------------------------------------------
>
>
> Please find in attachment the list of added CAPI
>
> *For your information :During The Linux Con at Dusseldorf Sabera Djelti
> will present a global overview of theses changes.*
>
>
>
> For additional informations : please take a look on the wiki
> https://wiki.tizen.org/wiki/Multi-user_Architecture
> https://wiki.tizen.org/wiki/Multi-user_AMD
>
>
> BR
>
> Baptiste and Sabera
>
> --
> Baptiste DURAND
> Eurogiciel Vannes/FR
>
> _______________________________________________
> Dev mailing list
> [email protected]
> https://lists.tizen.org/listinfo/dev
>
>
_______________________________________________
Dev mailing list
[email protected]
https://lists.tizen.org/listinfo/dev

Reply via email to