#include <common/step/configuration/step_fail.h>
#include <common/step/configuration/step_parse_manifest.h>
#include <common/step/configuration/step_parse_preload.h>
+#include <common/step/configuration/step_switch_readonly_mode.h>
#include <common/step/filesystem/step_acquire_external_storage.h>
#include <common/step/filesystem/step_optional_acquire_external_storage.h>
#include <common/step/filesystem/step_change_ownership_and_permission.h>
#include <common/step/filesystem/step_remove_globalapp_symlinks.h>
#include <common/step/filesystem/step_remove_per_user_storage_directories.h>
#include <common/step/filesystem/step_remove_temporary_directory.h>
+#include <common/step/filesystem/step_remove_user_data.h>
#include <common/step/filesystem/step_remove_zip_image.h>
#include <common/step/filesystem/step_remove_tep.h>
#include <common/step/filesystem/step_unzip.h>
#include <common/step/security/step_recover_security.h>
#include <common/step/security/step_register_security.h>
#include <common/step/security/step_revoke_security.h>
+#include <common/step/security/step_revoke_trust_anchor.h>
#include <common/step/security/step_rollback_installation_security.h>
#include <common/step/security/step_save_signature.h>
#include <common/step/security/step_update_security.h>
#include "hybrid/step/encryption/step_encrypt_resources.h"
#include "hybrid/step/pkgmgr/step_generate_xml.h"
#include "wgt/step/configuration/step_parse.h"
+#include "wgt/step/configuration/step_set_old_signature_files_location.h"
#include "wgt/step/encryption/step_remove_encryption_data.h"
#include "wgt/step/filesystem/step_copy_preview_icons.h"
#include "wgt/step/filesystem/step_create_symbolic_link.h"
AddStep<ci::security::StepRevokeSecurity>();
}
+void HybridInstaller::ReadonlyUpdateInstallSteps() {
+ AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::configuration::StepCreateRecoveryFile>();
+ AddStep<ci::filesystem::StepUnzip>();
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::PACKAGE,
+ ci::configuration::StepParseManifest::StoreLocation::NORMAL);
+ AddStep<hybrid::configuration::StepStashTpkConfig>();
+ AddStep<wgt::configuration::StepParse>(
+ wgt::configuration::StepParse::ConfigLocation::RESOURCE_WGT, true);
+ AddStep<ci::configuration::StepParsePreload>();
+ AddStep<ci::configuration::StepCheckTizenVersion>();
+ AddStep<ci::security::StepCheckSignature>();
+ AddStep<ci::security::StepSaveSignature>();
+ AddStep<hybrid::configuration::StepMergeTpkPrivileges>();
+ AddStep<ci::security::StepPrivilegeCompatibility>(
+ ci::security::StepPrivilegeCompatibility::InternalPrivType::BOTH);
+ AddStep<wgt::security::StepCheckSettingsLevel>();
+ AddStep<wgt::security::StepCheckWgtBackgroundCategory>();
+ AddStep<wgt::security::StepCheckWgtNotificationCategory>();
+ AddStep<wgt::security::StepCheckWgtImePrivilege>();
+ AddStep<hybrid::encryption::StepEncryptResources>();
+ AddStep<ci::configuration::StepSwitchReadonlyMode>();
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::BACKUP);
+ AddStep<ci::configuration::StepSwitchReadonlyMode>();
+ AddStep<ci::configuration::StepBlockCrossUpdate>();
+ AddStep<ci::pkgmgr::StepKillApps>();
+ AddStep<ci::filesystem::StepCopy>();
+ AddStep<ci::filesystem::StepCopyTep>();
+ AddStep<tpk::filesystem::StepTpkPatchIcons>();
+ AddStep<wgt::filesystem::StepWgtPatchIcons>();
+ AddStep<ci::filesystem::StepCreateIcons>();
+ AddStep<wgt::filesystem::StepCopyPreviewIcons>();
+ AddStep<wgt::filesystem::StepWgtPatchStorageDirectories>();
+ AddStep<ci::filesystem::StepCreateStorageDirectories>();
+ AddStep<wgt::pkgmgr::StepGenerateXml>();
+ AddStep<hybrid::pkgmgr::StepGenerateXml>();
+ AddStep<tpk::pkgmgr::StepManifestAdjustment>();
+ AddStep<hybrid::configuration::StepMergeTpkConfig>(
+ hybrid::configuration::StepMergeTpkConfig::MergeType::CONCAT);
+ AddStep<wgt::filesystem::StepCreateSymbolicLink>();
+ AddStep<tpk::filesystem::StepCreateSymbolicLink>();
+ AddStep<ci::pkgmgr::StepUpdateApplication>();
+ AddStep<ci::security::StepRegisterTrustAnchor>(
+ ci::security::StepRegisterTrustAnchor::RegisterType::UPDATE);
+ AddStep<ci::security::StepPrivacyPrivilege>(
+ ci::security::StepPrivacyPrivilege::ActionType::Update);
+ AddStep<ci::security::StepUpdateSecurity>();
+ AddStep<ci::pkgmgr::StepRunParserPlugin>(
+ ci::Plugin::ActionType::Upgrade);
+ AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
+ AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
+ AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
+}
+
+void HybridInstaller::ReadonlyUpdateUninstallSteps() {
+ AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::pkgmgr::StepCheckRestriction>();
+ AddStep<ci::pkgmgr::StepCheckRemovable>();
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::BACKUP);
+ AddStep<ci::configuration::StepSwitchReadonlyMode>();
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::NORMAL);
+ AddStep<ci::configuration::StepParsePreload>();
+ AddStep<wgt::configuration::StepSetOldSignatureFilesLocation>();
+ AddStep<ci::security::StepCheckSignature>();
+ AddStep<ci::security::StepPrivilegeCompatibility>(
+ ci::security::StepPrivilegeCompatibility::InternalPrivType::WGT);
+ AddStep<ci::configuration::StepSwitchReadonlyMode>();
+ AddStep<ci::pkgmgr::StepKillApps>();
+ AddStep<ci::filesystem::StepRemoveGlobalAppSymlinks>();
+ AddStep<ci::filesystem::StepRemoveTep>();
+ AddStep<ci::filesystem::StepRemoveFiles>();
+ AddStep<ci::filesystem::StepRemoveZipImage>();
+ AddStep<ci::pkgmgr::StepUpdateApplication>();
+ AddStep<ci::filesystem::StepRemoveUserData>();
+ AddStep<ci::configuration::StepSwitchReadonlyMode>();
+ AddStep<ci::security::StepRevokeTrustAnchor>();
+ AddStep<ci::security::StepRegisterTrustAnchor>(
+ ci::security::StepRegisterTrustAnchor::RegisterType::UPDATE);
+ AddStep<ci::security::StepPrivacyPrivilege>(
+ ci::security::StepPrivacyPrivilege::ActionType::Update);
+ AddStep<ci::security::StepUpdateSecurity>();
+ AddStep<ci::pkgmgr::StepRemoveManifest>();
+ AddStep<ci::pkgmgr::StepRunParserPlugin>(ci::Plugin::ActionType::Upgrade);
+}
+
void HybridInstaller::EnablePkgSteps() {
AddStep<ci::configuration::StepConfigure>(pkgmgr_);
AddStep<ci::configuration::StepParseManifest>(