Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
60 lines (48 sloc) 3.16 KB

Linux AMLogic Toolkit

Allows to unpack and repack AMLogic Android images on Linux systems without using the Customization Tool - works for Android 7.

Features

  • Unpack and repack any image
  • Mount and edit system partition
  • Unpack and repack logo partition (for bootup and upgrading logos)
  • Unpack and repack boot image and initrd ramdisk
  • Works for Android 7
  • No need to unpack the image each time you want to use the tool

What it cannot do (yet)

  • Edit other partitions of the image such as recovery (you can still replace the PARTITION files by hand)

Dependencies

  • zlib1g-dev for simg2img and img2simg
  • libblkid-dev for abootimg (unpacking and repacking boot image)
  • the i386 packages if needed (for the logo unpacking / repacking binary)

How to use it

  • Clone or download this repository
  • Install the dependencies
  • Move to the directory of the repository, and stay there
  • (first time, or after a cleanup) Run ./bin/build to build the required tools
  • (when editing a new image file) Run ./bin/unpack input.img to unpack input.img
  • The result is :
    • output/image : raw image files (PARTITION files)
    • output/system : system partition files
    • output/logo : logo partition files
    • output/boot : boot partition files
  • From now on you can edit the files of the output directory
    • Note that those files will be overwritten when repacking :
      • output/image/system.PARTITION
      • output/image/boot.PARTITION
      • output/image/logo.PARTITION
      • output/boot/initrd.img if using ./bin/extract_initrd
    • If you happen to loose the output/system mounting point (after a reboot for instance), just run ./bin/remount to mount it again
    • On the other hand, you can unmount the system partition using ./bin/unmount
    • If you want to extract the initrd ramdisk, use the ./bin/extract_initrd and ./bin/recreate_initrd scripts (output in output/initrd)
  • Be careful :
    • Don't break everything by chmod'ing the whole output/system folder, because it will be replicated in the image and it won't boot !
    • Don't rename the files in output/boot.img
    • If you extract and recreate the initrd ramdisk, its size will change and it will most likely break the boot image. To fix this, edit the bootimg.cfg file in output/boot to replicate the change in size (you can repack the image, let it fail and read the logs to see the new size).
  • When you have finished editing the files, run ./bin/repack output.img to repack the image to output.img
  • Done !

Troubleshooting

Credits