I rewrote ampart in September to completely support s905x4, it’s just that the one in EmuELEC 's source is not bumped because I changed the API and the existing aminstall script relies on the old API to work and I’m lazy to update that. You can use the newest commit to build ampart by yourself.
The tool can now safely edit the partition layout on s905x4 because I implemented DTB modification functions (and without libfdt at all, I basically wrote my own FDT parser from ground up), and EPT(eMMC Partition Table) will be updated from this DTB just like how Amlogic’s u-boot does it, which avoids the drawback that both ceemmc and old ampart had: the partitions node had to be removed from the DTB which upsets Amlogic’s uboot and it refuses to boot. Now that the DTB can be edited and those essential partitions needed by the u-boot is kept, it’ll be happy to boot.
This is a post I made on CoreELEC forum, in which I reported I made an Android+EmuELEC dual boot on s905x4 team CE thought impossible
And actually I made the box triple boot, with Android, CE, EE all on eMMC, and also with a re-flahsable USB burning image that’ll bring this triple boot layout to all HK1 RBOX X4 devices. Thing is I don’t want to share this image because sellers will be very happy to sell these “powerful” boxes with Android+CE+EE triple boot.
The idea is simply to unpack the Android image and use ampart to modify the dtb to add additional partitions for CE and EE. If you don’t want a re-flahsable image like this you can still use ampart like the old way, shrink Android data and create new partitions for EE then install to these partitions.
If you’re using ArchLinux you can use my AUR package to easily build and install ampart on it and easily modify the burning image from there:
https://aur.archlinux.org/packages/ampart-git
Otherwise just git clone ampart and use make to build it easily, ampart only has a single dependency zlib.
The usage of ampart is very simple and pretty straightforward, just read the documentations first
Edit: for devices that the DTB must be modified with special care, go from dsnapshot mode first to get a snapshot aa working parg series for dclone mode, then work from these pargs on dclone mode with minor tweaks here and there. The bare minimum partitions for HK1 RBOX x4 is documented here: ampart/available-modes.md at ampart · 7Ji/ampart · GitHub
parg = (ampart) Partition ARGument mini-language, it’s a domain-specific language I wrote for ampart, there’s documentation for it in the doc folder