Le contexte :
Appareil : Yu Yureka | CM 12.1(5.1)
https://www.gsmarena.com/yu_yureka-6987.php
Cela fait un moment que Cyanogen est mort et j'avais hâte de migrer vers une ROM plus récente. Il s'avère que Resurrection Remix a une ROM personnalisée pour Tomato (mon nom de construction) avec le support de Nougat : https://sourceforge.net/projects/resurrectionremix/files/tomato/ la courtoisie étant de M. Abhishek, le mainteneur de ROM pour Yureka.
Quoi qu'il en soit, je suis allé de l'avant, changé ma récupération de Cyanogen à TeamWin et flashé la nouvelle ROM, la seule partie restante étant le flashage de GApps sauf que le flashage de GApps m'a donné l'infâme erreur 70 : https://tech.chandrahasa.com/2017/03/09/error-70-gapps-fix/
Dans mon cas, je voulais repartitionner /system pour résoudre le problème et j'ai donc utilisé un fichier outil ( construit spécifiquement pour mon appareil ) pour le faire. Cela a fonctionné et a permis de formater /system, /dalvik, /cache, /data
.
Problème :
Lorsque j'ai vérifié la taille de la partition, elle affichait 2,5 Go, comme promis à ce stade. Je suis allé de l'avant et flashé la nouvelle ROM et d'une certaine manière, la partition a fini par être de 1,15 Go comme il était là à l'origine. Je soupçonne le script d'installation de la ROM de réinitialiser la taille de la partition comme un contrôle de sanité par défaut après tout - cette nouvelle ROM est un fork de la ROM CM 12.1 qui est venu à l'origine avec le téléphone. Ou, il pourrait y avoir une sorte de limite sur la taille de la partition /system.(pas sûr vraiment...)
Question : Comment puis-je conserver la taille de cette nouvelle répartition et empêcher la ROM de la réinitialiser à 1.15GB (si c'est le cas) ?
Pour votre référence,
Voici le script de mise à jour de la ROM :
assert(getprop("ro.product.device") == "YUREKA" || getprop("ro.build.product") == "YUREKA" || abort("E3004: This package is for device: YUREKA; this device is " + getprop("ro.product.device") + "."););
assert(cm.verify_trustzone("TZ.BF.3.0.R2-00034") == "1");
ui_print("Target: YU/YUREKA/YUREKA:5.1.1/LMY49J/YOG4PAS8A4:user/release-keys");
ifelse(is_mounted("/system"), unmount("/system"));
package_extract_dir("install", "/tmp/install");
set_metadata_recursive("/tmp/install", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644);
set_metadata_recursive("/tmp/install/bin", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0755);
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "/system", "");
run_program("/tmp/install/bin/backuptool.sh", "backup");
unmount("/system");
ui_print(" ");
ui_print(" ");
ui_print(" ");
ui_print(" RRRRRRRRRRRRRRRRR RRRRRRRRRRRRRRRRR ");
ui_print(" R::::::::::::::::R R::::::::::::::::R ");
ui_print(" R::::::RRRRRR:::::R R::::::RRRRRR:::::R ");
ui_print(" RR:::::R R:::::R RR:::::R R:::::R");
ui_print(" R::::R R:::::R R::::R R:::::R");
ui_print(" R::::R R:::::R R::::R R:::::R");
ui_print(" R::::RRRRRR:::::R R::::RRRRRR:::::R ");
ui_print(" R:::::::::::::RR R:::::::::::::RR ");
ui_print(" R::::RRRRRR:::::R R::::RRRRRR:::::R ");
ui_print(" R::::R R:::::R R::::R R:::::R");
ui_print(" R::::R R:::::R R::::R R:::::R");
ui_print(" R::::R R:::::R R::::R R:::::R");
ui_print(" RR:::::R R:::::R RR:::::R R:::::R");
ui_print(" R::::::R R:::::R R::::::R R:::::R");
ui_print(" R::::::R R:::::R R::::::R R:::::R");
ui_print(" RRRRRRRR RRRRRRR RRRRRRRR RRRRRRR");
ui_print(" ");
ui_print(" ");
ui_print(" **************** Software *****************");
ui_print(" OS ver: RR-N-v5.8.3-20170621-tomato-OFFICIAL-VoLTE");
ui_print("");
ui_print(" Android ver: 7.1.2");
ui_print("");
ui_print(" Security patch: 2017-06-05");
ui_print("");
ui_print(" SDK ver: 25");
ui_print("");
ui_print(" Root status: Enabled");
ui_print("");
ui_print(" Build ID: NJH47B");
ui_print("");
ui_print(" Build date: Wed Jun 21 18:23:54 IST 2017");
ui_print("");
ui_print(" Build type: OFFICIAL-VoLTE");
ui_print("");
ui_print(" Build host: DeadlyMachine");
ui_print("");
ui_print(" Maintainer: Men_in_black007");
ui_print(" **************** Hardware *****************");
ui_print(" Device codename: tomato");
ui_print("");
ui_print(" Manufacturer: YU");
ui_print("");
ui_print(" *******************************************");
if is_mounted("/data") then
package_extract_file("META-INF/org/lineageos/releasekey", "/tmp/releasekey");
run_program("/tmp/install/bin/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
else
mount("f2fs", "EMMC", "/dev/block/bootdevice/by-name/userdata", "/data", "");
package_extract_file("META-INF/org/lineageos/releasekey", "/tmp/releasekey");
run_program("/tmp/install/bin/otasigcheck.sh") != "31744" || abort("Can't install this package on top of incompatible data. Please try another package or run a factory reset");
unmount("/data");
endif;
show_progress(0.750000, 0);
ui_print("Patching system image unconditionally...");
block_image_update("/dev/block/bootdevice/by-name/system", package_extract_file("system.transfer.list"), "system.new.dat", "system.patch.dat") ||
abort("E1001: Failed to update system image.");
show_progress(0.020000, 10);
mount("ext4", "EMMC", "/dev/block/bootdevice/by-name/system", "/system", "");
run_program("/tmp/install/bin/backuptool.sh", "restore");
unmount("/system");
show_progress(0.050000, 5);
package_extract_file("boot.img", "/dev/block/bootdevice/by-name/boot");
show_progress(0.200000, 10);
set_progress(1.000000);