79e91fe4ca
Change-Id: Ic2f0a994477a5bc04b32e24b0bd4baaa2773ff55
25 lines
1.6 KiB
Text
25 lines
1.6 KiB
Text
ui_print("Installing su addon...");
|
|
ifelse(is_mounted("/system"), unmount("/system"));
|
|
package_extract_file("mount-system.sh", "/tmp/mount-system.sh");
|
|
package_extract_file("unmount-system.sh", "/tmp/unmount-system.sh");
|
|
set_metadata("/tmp/mount-system.sh", "uid", 0, "gid", 0, "mode", 0755);
|
|
set_metadata("/tmp/unmount-system.sh", "uid", 0, "gid", 0, "mode", 0755);
|
|
run_program("/tmp/mount-system.sh") == 0 || abort("Could not mount /system");
|
|
|
|
if getprop("ro.build.system_root_image") != "true" then
|
|
package_extract_dir("system", "/system");
|
|
set_metadata("/system/addon.d/51-addonsu.sh", "uid", 0, "gid", 0, "mode", 0755, "selabel", "u:object_r:system_file:s0");
|
|
set_metadata("/system/etc/init/superuser.rc", "uid", 0, "gid", 0, "mode", 0644, "selabel", "u:object_r:system_file:s0");
|
|
set_metadata("/system/xbin/su", "uid", 0, "gid", 2000, "mode", 0755, "selabel", "u:object_r:su_exec:s0");
|
|
symlink("/system/xbin/su", "/system/bin/su");
|
|
else
|
|
package_extract_dir("system", "/system_root/system");
|
|
set_metadata("/system_root/system/addon.d/51-addonsu.sh", "uid", 0, "gid", 0, "mode", 0755, "selabel", "u:object_r:system_file:s0");
|
|
set_metadata("/system_root/system/etc/init/superuser.rc", "uid", 0, "gid", 0, "mode", 0644, "selabel", "u:object_r:system_file:s0");
|
|
set_metadata("/system_root/system/xbin/su", "uid", 0, "gid", 2000, "mode", 0755, "selabel", "u:object_r:su_exec:s0");
|
|
symlink("/system/xbin/su", "/system_root/system/bin/su");
|
|
endif;
|
|
|
|
run_program("/tmp/unmount-system.sh") == 0 || ui_print("Could not unmount /system");
|
|
ui_print("Done");
|
|
set_progress(1.000000);
|