How to Set Up a Private Package Repository for Sideloading Apps
Updated 2026-10-28
Why install a private repository instead of sideloading from untrusted sources?
The Android TV ecosystem has no built-in app store alternative, so when you need an APK that isn’t on Google Play—custom utilities, legacy Netflix, or regional Netflix—that don’t recommend—you have to sideload it. A private package repository gives you a controlled, auditable way to do that. It keeps installations tidy, avoids the temptation to pull shady APKs from random chat threads, and lets you revoke access to a single distribution channel later.
Creating a private package repository
You’ll need a place to host the repository. The simplest option for Android TV is a self-hosted HTTP(S) server running on a machine that can reach your Chromecast-enabled TV over the local network. What you cannot do is run a custom repo inside a locked-down Smart TV partition; the repository and the device are separate boundaries.
Pick a hosting approach based on your trust level and network setup:
- Local desktop with Apache/Nginx serving a simple index.
- Raspberry Pi or a small NUC acting as a dedicated feed server with a static IP.
- A cloud instance (VPN or VPC) if you want the feed accessible across devices.
The repository itself is just a directory containing .deb packages or, more commonly for Android, signed .rpm/.tar.zst builds wrapped in a repo-manager style layout. In practice, most Android TV communities use a simple tarball of OBB-style resources plus a small config file pointing to the signed binary. Keep the feed format straightforward: one root URL, a list of repositories, and metadata including version and SHA-256 checksums.
Configuring CleanYourTV on your Android TV
CleanYourTV is a lightweight package manager for Android TV that supports both Google Play and private repositories. Adding a new source requires the right permissions and a few manual steps:
- Install and open CleanYourTV from the official Google Play Store.
- Navigate to Settings → Repositories → Add repository.
- Enter the base URL of your private repository (e.g.,
http://192.168.1.42:8080/repo). - Accept the security prompt that allows the app to resolve local packages. This step is required because CleanYourTV needs permission to install apps outside the official store.
After saving, re-scan. You’ll see all packages listed from the private repo alongside the standard Play Store entries. Always verify the checksum or signature of each APK before installing—trusting a signed build doesn’t eliminate risk if the signer isn’t verified.
Security trade-offs you have to accept
A private repository removes the biggest risk surface: no Play Protect pre-verification. Because you’re bypassing Play Store checks, you must take on the verification burden yourself:
- Check the GPG or Android App Signing certificate used to build the APK.
- Compare SHA-256 digests against a published list you control.
- Pin app versions in the repository so old, vulnerable builds can’t silently slip in.
If the private repo is hosted on the same LAN as your TV, an attacker on your network could swap a package, so firewall rules restricting traffic to the repo’s IP are essential. Also remember that sideloading apps on Android TV means they appear in the system-wide app list, so uninstalling or disabling them matters for both cleanliness and security.
Best practices to keep your TV safe while sideloading
- Use the smallest possible payload: favor small APKs with minimal permissions. Less surface area means fewer things to audit.
- Disable unknown app permissions via Settings → Apps → Special access, and review what each app can access.
- Enable installation prompt alerts so you see every install event.
- Keep the repository itself updated—rotating keys, removing old packages, and pruning abandoned ones.
- Test in a secondary profile first: create a second user account on the TV, install the first privately-sourced app there, confirm it works, then roll it out to the main profile.
With a private repository and CleanYourTV properly configured, you get a usable app library on Android TV without exposing your set-top box to the wilder corners of the APK jungle. Treat each sideload as a small project, and your smart TV stays both fun and secure.
Related reading: more Android TV notes
Read next
How to Automate Weekly Sideloading Updates on Android TV Media Panels
Learn how to set up automated sideloading of media panel apps on Android TV. Keep your panel extensions fresh without manual effort.
Automating Nightly Sideloading of Open-Source Android TV Packages
Learn how to script nightly sideloads of open-source Android TV packages on Google TV using ADB and a companion script to save time and keep builds fresh.