Enable multiuser AUL functionality 34/22834/3
authorMikko Ylinen <mikko.ylinen@intel.com>
Thu, 12 Jun 2014 12:55:03 +0000 (15:55 +0300)
committerMikko Ylinen <mikko.ylinen@intel.com>
Thu, 19 Jun 2014 07:08:57 +0000 (00:08 -0700)
The scripts used to initialize per user application databases are
copied from profile/common/meta.

Change-Id: I8685f92d6248d789db2bb2f3e3c76ad9e13fa211
Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com>
ivi.yaml
scripts/base-general.post
scripts/desktop-applications.post [new file with mode: 0644]

index ecb4921..54cc99f 100644 (file)
--- a/ivi.yaml
+++ b/ivi.yaml
@@ -24,7 +24,7 @@ Default:
         - IVI Packaging
     PostScripts:
         - base-general
-        - disable-net-config  
+        - disable-net-config
         - rpm
     NoChrootScripts:
         - buildname  
@@ -40,6 +40,7 @@ Wayland-i586:
         - IVI Applications
     PostScripts:
         - base-weston-default
+        - desktop-applications
     Repos:
         - ivi
 
index feb8504..8660083 100644 (file)
@@ -17,3 +17,12 @@ diff -urN bad/etc/pam.d/systemd-user good/etc/pam.d/systemd-user
  auth required pam_deny.so
  password required pam_deny.so
 EOF
+
+# create appfw dirs inside homes
+for user in app; do
+       for appdir in desktop manifest dbspace; do
+               mkdir -p /home/$user/.applications/$appdir
+       done
+       find /home/$user/ -type d -exec chsmack -a User {} \;
+       chown -R $user:users /home/$user/
+done
diff --git a/scripts/desktop-applications.post b/scripts/desktop-applications.post
new file mode 100644 (file)
index 0000000..8fb888a
--- /dev/null
@@ -0,0 +1,27 @@
+############### desktop-applications.post ################
+
+# temp workaround to fill each user app_info database with global db infos
+. /etc/tizen-platform.conf
+ail_initdb
+pkg_initdb
+
+echo "Fixing multiuser app_info dbs"
+chsmack -a "_" $TZ_SYS_DB/.app_info.db*
+chmod 764 $TZ_SYS_DB/.app_info.db*
+
+for user in app; do
+       [ ! -d /home/$user ] && continue
+       echo "Fix app_info.db of $user"
+       chown -R $user:users /home/$user/.applications/dbspace/
+
+       if [ -f /home/$user/.applications/dbspace/.app_info.db ]; then
+               sqlite3 /home/$user/.applications/dbspace/.app_info.db <<EOF
+attach database '$TZ_SYS_DB/.app_info.db' as common;
+insert into app_info select * from common.app_info;
+EOF
+       else
+               cp $TZ_SYS_DB/.app_info.db /home/$user/.applications/dbspace/.app_info.db
+       fi
+
+       chsmack -a User /home/$user/.applications/dbspace/.app_info.db*
+done