meta-tizen: fix for Tizen ivi modello
authorRonan Le Martret <ronan@fridu.net>
Tue, 30 Dec 2014 13:55:20 +0000 (14:55 +0100)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 17:24:02 +0000 (09:24 -0800)
Change-Id: Id102db3cb0637190b20e2c11a8e298979562dd43
(From meta-tizen rev: 3a61dbb1abcc17ae15debc748d07ec374b1e8b88)

Signed-off-by: Ronan Le Martret <ronan@fridu.net>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-tizen/meta-tizen-ivi/recipes-graphics/weston-ivi-shell/weston-ivi-shell-extraconf.inc
meta-tizen/meta-tizen-ivi/recipes-modello/Modello-Installer/Modello-Installer/modello-installer-postinst.sh

index 4cdc310..c1d9510 100644 (file)
@@ -32,13 +32,6 @@ do_install_append() {
     rm -fr ${D}/usr/lib/weston/gl-renderer.so
     rm -fr ${D}/usr/lib/weston/.debug/gl-renderer.so
     rm -fr ${D}/usr/bin/weston-calibrator
-
-    # Enable a logind session for 'app' user on seat0 (the default seat for
-    # graphical sessions)
-    mkdir -p ${D}/lib/systemd/system/graphical.target.wants
-    ln -sf ../user-session-launch@.service ${D}/lib/systemd/system/graphical.target.wants/user-session-launch@seat0-5000.service
-
-    
     rm -fr ${D}${prefix}/bin/weston-scaler
     rm -fr ${D}${prefix}/bin/weston-stacking
     rm -fr ${D}${prefix}/bin/weston-multi-resource
@@ -82,10 +75,21 @@ EOF
     # Use the same over-rides for the native prelaunch daemon
     cp $D/etc/sysconfig/wrt $D/etc/sysconfig/launchpad
 
-    # Add a rule to ensure the app user has permissions to
-    # open the graphics device
-    cat > $D/etc/udev/rules.d/99-dri.rules << EOF
-    SUBSYSTEM=="drm", MODE="0666"
+ # Add a rule to ensure the 'display','genivi' user has permissions to
+ # open the graphics device
+ mkdir -p ${D}${sysconfdir}/udev/rules.d
+ cat >${D}${sysconfdir}/udev/rules.d/99-dri.rules <<'EOF'
+ SUBSYSTEM=="drm", MODE="0660", GROUP="video", SECLABEL{smack}="*"
+EOF
+ # user 'display' must own /dev/tty7 for weston to start correctly
+ cat >${D}${sysconfdir}/udev/rules.d/99-tty.rules <<'EOF'
+ SUBSYSTEM=="tty", KERNEL=="tty7", OWNER="genivi", SECLABEL{smack}="^"
+EOF
+ # user 'display' must also be able to access /dev/input/*
+ cat >${D}${sysconfdir}/udev/rules.d/99-input.rules <<'EOF'
+ SUBSYSTEM=="input", MODE="0660", GROUP="input", SECLABEL{smack}="^"
 EOF
     #------------------------------------------
 }
@@ -102,7 +106,7 @@ FILES_${PN} += "${prefix}/lib/weston-ivi-shell/weston-desktop-shell"
 FILES_${PN} += "${prefix}/lib/weston-ivi-shell/weston-screenshooter"
 FILES_${PN} += "${prefix}/lib/weston-ivi-shell/weston-simple-im"
 FILES_${PN} += "${prefix}/lib/weston/cms-static.so"
-FILES_${PN} += "/lib/systemd/system/graphical.target.wants/user-session-launch@seat0-5000.service"
 FILES_${PN} += "${prefix}/bin/weston-calibrator"
+FILES_${PN} += "${sysconfdir}/udev/rules.d/*"
 
 FILES_${PN}-dev += "${prefix}/include/weston/ivi-shell-ext.h"
index 7e7c195..56d1b3e 100644 (file)
@@ -1,6 +1,7 @@
 #!/bin/sh -e
 
 source /etc/tizen-platform.conf
+
 export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/5000/dbus/user_bus_socket"
 
 export MODELLO_INSTALL_USER="app"
@@ -8,22 +9,59 @@ export MODELLO_COMMON_DIR="/usr/share/Modello/Common"
 
 export PATH="${PATH}:/bin"
 
+vconftool set -t string db/ail/ail_info "0" -f -s system::vconf_inhouse
+vconftool set -t string db/menuscreen/desktop "0" -f -s system::vconf_inhouse
+vconftool set -t string db/menu_widget/language "en_US.utf8" -f -s system::vconf_inhouse
+chsmack -a User /usr/kdb/db/ail
+chsmack -a User /usr/kdb/db/ail/ail_info
+chsmack -a User /usr/kdb/db/menuscreen
+chsmack -a User /usr/kdb/db/menuscreen/desktop
+chsmack -a User /usr/kdb/db/menu_widget
+chsmack -a User /usr/kdb/db/menu_widget/language
+mkdir -p /usr/share/applications
+mkdir -p /usr/share/applications
+mkdir -p /usr/apps
+mkdir -p /usr/dbspace
+mkdir -p /usr/share/icons/default/small
+chsmack -a '*' /usr/dbspace
+chsmack -a '*' /usr/apps
+chsmack -a '*' /usr/share/applications
+chsmack -a '*' /usr/share/applications
+chsmack -a '*' /usr/share/icons
+chsmack -a '*' /usr/share/icons/default
+chsmack -a '*' /usr/share/icons/default/small/
+chmod g+w /usr/share/applications
+chmod g+w /usr/share/applications
+chown tizenglobalapp:root /usr/share/applications
+chown tizenglobalapp:root /usr/share/applications
+chown tizenglobalapp:root /usr/apps
+chown tizenglobalapp:root /usr/dbspace
+chown tizenglobalapp:root /usr/dbspace
+chown tizenglobalapp:root -R /usr/share/icons
+
+ail_initdb
+
+pkg_initdb
+
+chown ${MODELLO_INSTALL_USER}:users -R /home/${MODELLO_INSTALL_USER}
+
 for list in $(find $TZ_SYS_APP_PREINSTALL -name "Modello*")
 do
 #XWalk requires you not be root to install files
-        echo "Installing $list"
-        su ${MODELLO_INSTALL_USER} -c "xwalkctl -i $list"
+    echo "Installing $list"
+    su ${MODELLO_INSTALL_USER} -c "pkgcmd -q -i -t wgt -p $list"
 done
 
-for list2 in $(ls -d $TZ_SYS_HOME/${MODELLO_INSTALL_USER}/.config/xwalk-service/applications/*/)
-do      
-        echo list2 $
-        su - ${MODELLO_INSTALL_USER} -c "mkdir -p '$list2/css'"
-        su - ${MODELLO_INSTALL_USER} -c "mkdir -p '$list2/js'"
-        su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/js/services '$list2/js/'"
-        su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/css/* '$list2/css/'"
-        su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/icons '$list2/'"
-        
-        
+for list2 in $(ls -d $TZ_SYS_HOME/${MODELLO_INSTALL_USER}/apps_rw/xwalk-service/applications/*/)
+do
+    echo list2 $
+    su - ${MODELLO_INSTALL_USER} -c "mkdir -p '$list2/css'"
+    su - ${MODELLO_INSTALL_USER} -c "mkdir -p '$list2/js'"
+    su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/js/services '$list2/js/'"
+    su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/css/* '$list2/css/'"
+    su - ${MODELLO_INSTALL_USER} -c "cp -fr ${MODELLO_COMMON_DIR}/icons '$list2/'"
+
+
 done
 
+rm /lib/systemd/system/multi-user.target.wants/modello-installer-postinst.service
\ No newline at end of file