#
# Factory Reset Package
#
ui_print("==== Factory Reset Package ====");
# added check for WT6000 and Freeport
getprop("ro.product.device") == "WT6000" || getprop("ro.product.device") == "freeport_mx6dq" ||
abort("This package is for \"WT6000\" or \"freeport_mx6dq\" devices; this is a \"" + getprop("ro.product.device") + "\".");
package_extract_file("META-INF/com/symbol/DeviceManifest.xml", "/tmp/DeviceManifest.xml");
ifelse(greater_than_int(getprop("ro.build.version.sdk"),21),
ifelse(is_file_exist("/sbin/osu_checker") && is_file_exist("/tmp/DeviceManifest.xml"),
    (
      set_metadata("/tmp/DeviceManifest.xml", "uid", 0, "gid", 2000, "mode", 0755);
      set_metadata("/sbin/osu_checker", "uid", 0, "gid", 2000, "mode", 0755);
      ui_print("Checking Device Manifest ...");
      assert(run_program("/sbin/osu_checker", "/tmp/DeviceManifest.xml",
           "/tmp/DeviceProperties.xml") == 0
           || (delete(/tmp/DeviceManifest.xml) && abort("This package is not allowed!!")));
      delete(/tmp/DeviceManifest.xml);
    ),
    (ui_print("Device manifest file missing !!!"))
););
show_progress(0.200000, 0);
ui_print("formatting enterprise partition...");
format("ext4", "EMMC", "/dev/block/platform/soc0/soc/2100000.aips-bus/219c000.usdhc/by-name/enterprise", "0", "/enterprise");
ui_print("done.");
show_progress(0.20000, 0);
ui_print("formatting data partition...");
#unmount("/data");
format("ext4", "EMMC", "/dev/block/platform/soc0/soc/2100000.aips-bus/219c000.usdhc/by-name/userdata", "-16384", "/data");
show_progress(0.300000, 0);
ui_print("done.");

