From 0297087a7325ab18ad4f76e6a013b3441f4a6a49 Mon Sep 17 00:00:00 2001 From: Jean-Benoit MARTIN Date: Mon, 16 Dec 2013 14:59:55 +0100 Subject: [PATCH] Remove hardcoded path for multiuser support Bug-Tizen: PTREL-375 Change-Id: Idd56e9e9f5e82bcd4737b19ab31e8b3f770420a4 Signed-off-by: Jean-Benoit MARTIN --- CMakeLists.txt | 4 ++++ packaging/wrt-installer.spec | 12 ++++++++---- src/wrt-installer/CMakeLists.txt | 1 + tests/general/CMakeLists.txt | 1 + tests/general/NonRootUserTests.cpp | 3 ++- tests/general/WidgetUpdateTests.cpp | 3 ++- ...tall-widgets.service => wrt-preinstall-widgets.service.in | 2 +- wrt_preinstall_widgets.sh | 6 ++++-- 8 files changed, 23 insertions(+), 9 deletions(-) rename wrt-preinstall-widgets.service => wrt-preinstall-widgets.service.in (70%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1bff1a0..19548a5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -115,6 +115,10 @@ SET(TARGET_INSTALLER_STATIC "wrt-installer_static") SET(TARGET_INSTALLER "wrt-installer") SET(TARGET_BACKEND_LIB "wgt") +############################# service file #################################### + +CONFIGURE_FILE(wrt-preinstall-widgets.service.in wrt-preinstall-widgets.service) + ############################# subdirectories ################################## ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(configuration) diff --git a/packaging/wrt-installer.spec b/packaging/wrt-installer.spec index f025c54..196ca0b 100644 --- a/packaging/wrt-installer.spec +++ b/packaging/wrt-installer.spec @@ -48,6 +48,7 @@ BuildRequires: pkgconfig(tapi) BuildRequires: pkgconfig(shortcut) BuildRequires: pkgconfig(capi-appfw-app-manager) BuildRequires: pkgconfig(app2sd) +BuildRequires: pkgconfig(libtzplatform-config) %if %{with livebox} BuildRequires: pkgconfig(web-provider) %endif @@ -59,6 +60,7 @@ Requires: libss-client Requires: osp-installer %endif Requires: xmlsec1 +Requires: libtzplatform-config %description Description: Wrt Installer for Tizen apps and Wac apps @@ -114,6 +116,7 @@ LDFLAGS="$LDFLAGS" -DSMACK=Off \ -DDPL_LOG=ON \ -DCMAKE_BUILD_TYPE=%{?build_type:%build_type} \ + -DTZ_SYS_APP_PREINSTALL=%TZ_SYS_APP_PREINSTALL \ %{?WITH_TESTS:-DWITH_TESTS=%WITH_TESTS} make %{?jobs:-j%jobs} @@ -131,7 +134,7 @@ rm -rf %{buildroot} %post /sbin/ldconfig -chmod +s /usr/bin/wrt-installer +chmod +s %{_bindir}/wrt-installer #symlink for package manager %define pkg_manager_backend_path %{_sysconfdir}"/package-manager/backend" @@ -145,10 +148,10 @@ ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/WgT ln -sf %{pkg_manager_backend_path}/wgt %{pkg_manager_backend_path}/WGT #for booting recovery -mkdir -p /opt/share/widget/temp_info +mkdir -p %TZ_SYS_RW_WIDGET/temp_info # for downloadable Application icons path -mkdir -p /opt/share/icons/default/small +mkdir -p %TZ_SYS_SHARE/icons/default/small %postun -p /sbin/ldconfig @@ -160,10 +163,11 @@ mkdir -p /opt/share/icons/default/small %{_datadir}/license/%{name} %if %{with_tests} %attr(755,root,root) %{_bindir}/wrt-installer-tests-* - /opt/share/widget/tests/installer/widgets/* + %TZ_SYS_RW_WIDGET/tests/installer/widgets/* %endif %files preinstall-service +%manifest %{name}.manifest %attr(755,root,root) %{_bindir}/wrt_preinstall_widgets.sh %{_unitdir}/wrt-preinstall-widgets.service %{_unitdir}/graphical.target.wants/wrt-preinstall-widgets.service diff --git a/src/wrt-installer/CMakeLists.txt b/src/wrt-installer/CMakeLists.txt index 0bd83bb..b4510f0 100644 --- a/src/wrt-installer/CMakeLists.txt +++ b/src/wrt-installer/CMakeLists.txt @@ -44,6 +44,7 @@ PKG_CHECK_MODULES(WRT_INSTALLER_DEPS pkgmgr security-install wrt-commons-i18n-dao-ro + libtzplatform-config REQUIRED) INCLUDE_DIRECTORIES( diff --git a/tests/general/CMakeLists.txt b/tests/general/CMakeLists.txt index 3b4818f..b74dcb1 100644 --- a/tests/general/CMakeLists.txt +++ b/tests/general/CMakeLists.txt @@ -26,6 +26,7 @@ PKG_CHECK_MODULES(COMMON_LIB_PKGS dpl-event-efl xmlsec1 libiri + libtzplatform-config REQUIRED ) diff --git a/tests/general/NonRootUserTests.cpp b/tests/general/NonRootUserTests.cpp index bd01cc8..b59b004 100644 --- a/tests/general/NonRootUserTests.cpp +++ b/tests/general/NonRootUserTests.cpp @@ -24,6 +24,7 @@ #include #include #include +#include using namespace InstallerWrapper; @@ -42,6 +43,6 @@ RUNNER_TEST(widgetNonRootInstallation) RUNNER_ASSERT(install( miscWidgetsStuff + "widgets/nonroot.wgt", tizenId, - "app") == InstallerWrapper::Success); + tzplatform_getname(TZ_USER_NAME)) == InstallerWrapper::Success); uninstall(tizenId); } diff --git a/tests/general/WidgetUpdateTests.cpp b/tests/general/WidgetUpdateTests.cpp index 064e545..2ee3706 100644 --- a/tests/general/WidgetUpdateTests.cpp +++ b/tests/general/WidgetUpdateTests.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include using namespace InstallerWrapper; @@ -200,7 +201,7 @@ RUNNER_TEST(updateWidgetDataRemember) "Failed to install widget"); // Creating a file - std::string filePath = "/opt/usr/apps/HAdisUJ4Kn/data/test"; + std::string filePath = tzplatform_mkpath(TZ_USER_APP,"HAdisUJ4Kn/data/test"); std::string text = "slonce swieci dzisiaj wyjatkowo wysoko"; std::string command = "echo " + text + " > " + filePath; system(command.c_str()); diff --git a/wrt-preinstall-widgets.service b/wrt-preinstall-widgets.service.in similarity index 70% rename from wrt-preinstall-widgets.service rename to wrt-preinstall-widgets.service.in index 78374a8..4fc40b5 100644 --- a/wrt-preinstall-widgets.service +++ b/wrt-preinstall-widgets.service.in @@ -1,6 +1,6 @@ [Unit] Description=Installation of pre-installed widgets -ConditionPathExists=!/opt/usr/apps/.preinstallWidgets/preinstallDone +ConditionPathExists=!@TZ_SYS_APP_PREINSTALL@/preinstallDone [Service] Type=oneshot diff --git a/wrt_preinstall_widgets.sh b/wrt_preinstall_widgets.sh index 1ab048f..d58dca4 100755 --- a/wrt_preinstall_widgets.sh +++ b/wrt_preinstall_widgets.sh @@ -14,7 +14,9 @@ # limitations under the License. # -_working_dir="/opt/usr/apps/.preinstallWidgets" +source /etc/tizen-platform.conf + +_working_dir=$TZ_SYS_APP_PREINSTALL install_widgets() { _wgt_list=`find $_working_dir -name '*.wgt'` @@ -33,4 +35,4 @@ fi install_widgets -touch /opt/usr/apps/.preinstallWidgets/preinstallDone +touch $TZ_SYS_APP_PREINSTALL/preinstallDone -- 2.7.4