Hi,

thanks for sending this mail. Do you have any estimation as to when this could 
land?

Francesco

From: Crosswalk-dev [mailto:crosswalk-dev-boun...@lists.crosswalk-project.org] 
On Behalf Of t.iwanek
Sent: Tuesday, August 19, 2014 12:58 PM
To: crosswalk-dev@lists.crosswalk-project.org
Subject: [Crosswalk-dev] Intent to implement - tizen - installer backend for 
pkgmgr-server

Description:
This intent is about integration xwalk installer as backend installer of tizen 
platform's installer.
This enables to installs xwalk application on tizen in same way as it is done 
for native applications installation (or wrt apps).

Affected component: Crosswalk - IVI

Related feature: XWALK-1731

Implementation details:
(same as in issue)

Pkgmgr backend installer

XWalk should follow 'backend strategy'.

Each backend installer (xwalk installer which pretends to be tizen backend 
installer) should provides two components:

·         backend library - shared library for purpose of quering and receiving 
information about applications connected with given backend,
(Example backend API (API which it should implement): $ {wrt-installer 
repository}/src/pkg-mgr/backendlib.cpp)

·         backend installer - executable (or symlink) which:

o    takes input of: -k INSTALLTION_KEY -i PACKAGE_PATH -q

§  INSTALLTION_KEY - stand for installation key which should be passed to 
pkgmgr API to notify about installation result progress,

§  PACKAGE_PATH - stand for package path in filesystem,

§  "-q" - stand for quiet mode in installation (no popups)

o    installs package and notifies about success of installation with:

§  pkgmgr_parse_* API to update information about packages in pkgmgr's database 
(this is done already in xwalk-pkg-helper as I can see)

§  pkgmgr signal API to inform about progress and installation result (this API 
must be used to notify pkgmgr-tool about installation success/failure),

o    name of binary/symlink:

§  have to be name of extension it represents (e.g. "wgt")

§  is case-sensitive (this actually should be changed in pkgmgr...)

Comparing to WRT

There is difference comparing to WRT in case that xwalkctl doesn't allow user 
to be root user. wrt-installer and wrt backend lib uses from root user.
Therefore xwalk should provide backend installer and library which ditches 
privilege to app user (I assume app user is going to be used).

Implementation

Backend library should:

·      be installed with crosswalk to location: /etc/package-manager/backendlib/

·      should implement API needed pkgmgr,

·      may not support all functions but at least should be able to state if 
given are is installed (pkg_plugin_app_is_installed())

·      should change user to app for time of operation, perform query to 
database of applications (for app user),

Backend installer should:

  *   provide links:

     *   /etc/package-manager/backend/xpk -> /usr/bin/xwalkctl_wrapper,
     *   /etc/package-manager/backend/wgt -> /usr/bin/xwalkctl_wrapper,
     *   ( and all lower/upper-case variants ... ),

  *   accepts right convention for command line
  *   accepts -k argument and pass it to xwalk-pkg-helper (done in 
https://crosswalk-project.org/jira/browse/XWALK-1446),
  *   wrapper should work similary to following script:

#############################################################
#/bin/bash

su - app <<-EOF
/usr/bin/xwalkctl $@ # -i -k -q arguments should be supported
EOF
#############################################################

Notes

Possible problems:

·      when calling backend pkgmgr may not set all environment variables 
correctly,

·      does package ID conform pattern which is accepted by tizen's pkgmgr,

·      smack privileges,

·      package file should be accessible for app user (e.g. does 'sdb install' 
command set right privs?)

Integration with tizen platform installer gives:

  *   'pkgmgr-tool' usability,
  *   'sdb install' usability (SDK?),
  *   usage of platform API to trigger installation,

Only changes in pkgmgr that are required involves place where "wgt" extension 
is hard-coded. This code should applies to "xpk" too.
As I know some "wgt" are hardcoded in osp framework also.

Please, make points if I am wrong. Correct my ideas.
Regards,
Tomasz Iwanek
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
_______________________________________________
Crosswalk-dev mailing list
Crosswalk-dev@lists.crosswalk-project.org
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev

Reply via email to