Migrating Legacy Sideloaded Kodi Builds Across Multiple Android TV

Updated 2026-10-28

Migrating legacy sideloaded Kodi builds across multiple Android TV generations

The challenge of moving old Kodi builds to new Android TV hardware

Android TV has shifted architecture several times since the first PlayStation-style box released in 2013. The shift from custom firmware to locked official releases made it harder to move custom installations between devices, and legacy Kodi builds that relied on specific media servers, add-ons, and unofficial patches often break when they reach a newer Chromebook-class set-top box. The “CleanYourTV” launcher sits in the middle of that transition: it strips back the bloat, gives you a clean home screen, and makes sideloading official builds far less painful than the old “root and edit /system/mod/proper” dance.

If you have been running a custom Kodi build—perhaps one you compiled from source to work with a specific NAS, or one that received community patches for NovaHD support—the most reliable migration path is a controlled sideload onto a fresh install of the official Android TV OS. Doing it wrong can leave you with a blank home screen, lost add-ons, or an unpatchable build that refuses to start. This guide walks through what to do, why it matters, and the exact trade-offs you’re trading.

What CleanYourTV actually changes for sideloading

CleanYourTV is not a Kodi-specific tool, but its role in the workflow is essential. Most people think of Android TV as “Google Play Store = everything,” but the TV ecosystem kept a separate sideload path: adb push into /data/local.prop and /system/build.prop, plus manual package installation via APK files. CleanYourTV packages Android TV’s settings.xml and update-check-provider state alongside your app, normalizes the data directory structure, and presents a streamlined UI that lets you replace the launcher without touching the underlying operating system.

The real benefit for migrating legacy builds is isolation. You install the build on a second device first, verify that the add-ons load correctly, check that the install size stays reasonable, then wipe the old build via a factory reset of the target device. CleanYourTV handles the cleanup of old caches and config files that previously carried the legacy build’s footprint, which means you don’t end up with a contradictory mix of old and new configuration.

Step-by-step: preparing the old build for transport

Before you touch any device, you need a complete copy of the build and its dependencies. Start by extracting the entire system partition from the device that is currently running your legacy Kodi build:

adb shell scp /system/bootimage*.img /sdcard/android-tv-backup/

If you used a custom recovery like TWRP, you probably already have a full root-level backup that includes /data/local.prop, the installed Kodi APK, and the add-on manifest. From there, you need the complete add-on list. Android TV add-ons live under /data/local.prop (legacy) and /data/manifest/ for the modern format. Export the full add-on tree with adb pull:

adb pull /data/manifest/ ~/kodi-addons-legacy/

Most legacy Kodi builds shipped with custom plugins for Plex, Emby, or Jellyfin. Note every plugin, its version, and the exact patch notes. Two builds of Kodi that differ by a single source patch are not interchangeable after a migration; they will be until the patch is reconciled.

Why build IDs and version numbers still matter

One of the biggest mistakes we see is treating any “2020 Kodi” as interchangeable with a “2023 Kodi.” They are different builds. The core Kodi repository uses Git commits; the Android TV port carries tags that correspond to those commits, and the official release images ship with a fixed version number baked into the OS (e.g. Android TV 12L, API 30, with the corresponding Android TV kernel version).

When you migrate, the build ID you are installing on the target device must match what you intend to run—not the latest release if the latest release has dropped required add-ons. For example, a build with a custom DRM module for a specific NAS may only exist for the 2018–2020 Kodi branch; the 2024 branch targets newer Android APIs that skip that module. The “legacy” tag on your old build is your contract: keep it, and cross-reference each add-on against the docs for that version.

Trade-offs: losing features for security

The honest reason most users hesitate to migrate is that Android TV’s official update channel does not include legacy builds, and the official stores don’t host them. That means your migrated build will stop receiving Google Play system updates—and in many cases, the device itself stops receiving security patches from the OEM. There is a trade-off here between consistency and security.

On the other hand, keeping an outdated build on newer hardware means you lose the optimizations that were written for older SoCs (the Intel Atom TV boxes, the early NVIDIA Shield TV models). Your migrated build will be slower on 4K streams, and the add-on performance that you depend on may regress by 20 to 30 percent compared with the optimized legacy firmware. We have seen this repeatedly: a user who moved from a 2017 Kodi build to the latest 2024 Kodi on a 4K-capable box reported sluggish thumbnail loading and buffering during high-bitrate playlist imports.

If you decide to proceed, keep the following in mind:

The practical workflow for a clean migration

Here is the sequence that works for most multi-generation migrations:

  1. Flash a factory image for the target device and boot it into a clean system.
  2. Install CleanYourTV from the official store of your current device (don’t rely on third-party installers; they often bundle unsigned APKs that violate the Android TV integrity checks).
  3. Use CleanYourTV’s “import profile” feature to bring over your launch icon layout and any existing display settings.
  4. Install the legacy build from the backup APK you pulled earlier.
  5. Re-pull the add-on manifest from your archived build. Install them one at a time, testing playback after each one.
  6. Verify that CleanYourTV’s “clean” function successfully removes the previous build’s data, including its hidden /cache directory which often retains old credentials.

If step 4 fails because the add-ons reference a server that no longer exists, you’ll know early and can either fix the URL or keep the old device as a dedicated NAS server while the TV plays the new (and more secure) build.

What to avoid when moving builds

Resist the urge to “move everything.” Not every Kodi add-on is ready for the modern Android TV runtime. The Plex and Kodi add-ons in particular had a rough year around the 2021–2022 transition; some of our test users found that the Plex plug-in simply wouldn’t load after a build swap. Before you invest time pulling down legacy add-on manifests, check the official add-on blogs for version compatibility with your target build number.

Also avoid using USB mass-storage mode as a transport method. Android TV’s USB file sharing stack doesn’t reliably expose the /system partition without root, and on some builds it will lose formatting of the card when the phone is inserted in the wrong orientation. ADB remains the only dependable pipe.

Final checklist before you switch

Before you wipe the last trace of the old build, confirm all of the following:

If those four items are checked, you have turned a risky manual swap into a routine maintenance task. The CleanYourTV launcher isn’t magic—it can’t resurrect features that the build never had—but it does make the transfer clean, auditable, and reversible. For anyone who has lived through the Kodi-to-Android-TV migration, that’s the difference between a one-hour chore and a fragile gamble.

Related reading: more Android TV notes

Read next