0

I'm using cm13 on my OnePlus 3, along with systemless SuperSu and suhide. When I update cm (often), I need to flash both SuperSu and suhide. The problem is that cm comes with root access and when updating, makes a su directory in /system/bin/su that suhide detects so that it won't install. I need to delete that directory in between of the flashes, and I would like to make a script that does that for me when i flash it so that I can flash all files together on update using CyanDelta. I know that this is possible because I have seen other zips that execute command scripts as i flash them.

0

Find an empty flashable package somewhere; edit META-INF/com/google/android/updater-script and add delete_recursive("/path/to/your/directory"); to remove the directory in question.

(On second thought, is it really necessary to make a flashable zip for this single purpose? If your phone has TWRP recovery available, why not just use its built-in file manager?)

  • 1
    OP could also make their own flashable ZIP, with the structure META-INF/com/google/android, create an update-binary file inside the last directory and write #!/sbin/sh, followed by mount -o rw /partition_name and rm -rf /path/to/your/directory inside the file. Finally, just zip the META-INF folder and here's the flashable ZIP. – Death Mask Salesman Oct 13 '16 at 10:54
  • 1
    @DeathMaskSalesman Wow, I don't know you could actually write update-binary yourself (the ones I've seen are mostly in unreadable format, except for SuperSU's). Thanks for the info. – Andy Yan Oct 13 '16 at 11:22
  • In fact, the classical update-binary is a compiled binary, just like a sh. The workaround for those which want more flexibility is just to write the file as a simple shell script, and by doing so you can also ignore the updater-script. – Death Mask Salesman Oct 13 '16 at 11:38
  • @DeathMaskSalesman How can a binary be replaced by a script? It sounds weird to me that this is even feasible. – Andy Yan Oct 13 '16 at 12:37
  • 1
    Ah, I don't know the procedure employed by a recovery. Still, if you don't believe me, you're free to unpack a CyanogenMod flashable ZIP and examine its update-binary. For instance, the one I analyzed began with the bytes 7F 45 4C 46, which stand for .ELF, identifying the file as a compiled binary. – Death Mask Salesman Oct 13 '16 at 12:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.