Create a customised CoreELEC image


My goal is to create a customised CoreELEC / Kodi into an .img so people can download and burn it to an SD card straight away and use the box out-of-the-box.

My target hardware is X96 Mini and there are already stable builds in it.

Customisations include:

Customised boot splash screen
Customised Kodi launch screen
Pre-configured network setting
Pre-configured remote .vcf
Pre-configured Kodi Skin
Pre-configured Kodi Addons
Pre-configured Kodi Libraries
Pre-configured Kodi customised menu

Ultimately I would also look into an easy way to pass Wi-Fi credentials to the build, either from before burning the image or some sort of turning the box into an AP mode in the first launch of the box so user can use their phone, connect to it’s Wi-Fi, then pass the Wi-Fi credentials to the box. (Or even better, via bluetooth)

I looked up in the forum / google and found more of cross compiling tutorials and references but I think in my case I don’t have to re-compile from source?

Any ideas or reference to read will be much appreciated.

Do you intend to eliminate all branding and any non-opensource code that might be included, or is it your intention to do a ‘community’ respin of CE for a particular device?

1 Like

I intend to do it all open-source - copyright all branding / credits while customising the look.
And have all codes available in Github.

Cross compiling makes your image maintainable. It takes much more setup, but you will then be able to rebuild quickly to update your image when CoreELEC updates.
If you just want a quick one-off image to distribute, you just need to make your image and then use dd to copy it- either to a file or another sd card.

  1. Configure your device as desired
  2. Clean up, especially zerofree the disk
  3. dd if=/dev/sdb of=custom_image.img bs=4M progress=status
  4. 7z a custom_image.img.7z custom_image.img
1 Like

Good advice - thanks!

On a side note - wouldn’t it be the same if I use the image in the box, update CoreELEC, and re-make the image?

But totally get the point of ease of maintenance