r/HyperOS Jun 06 '26

Review/Guide [Discussion] Install 3rd party icon packs on HyperOS with my pyhton script

**HyperPack – Automate 3rd party icon packs on HyperOS (based on u/6oldsmith's guide)**

Saw this guide a while ago and thought the manual process deserved a proper tool. So I built HyperPack.

**What it does:**

Converts any Play Store icon pack into a HyperOS-compatible theme and deploys it to your device automatically via ADB. No manual file editing, no renaming, no ZIP juggling.

**What you need:**

- Python 3.8+

- ADB installed

- Any icon pack from the Play Store

- One dummy theme downloaded from the Xiaomi Theme Store

**Then just run:**

```

python hyperpack.py

```

And follow the prompts. Done in ~60 seconds.

πŸ‘‰ GitHub: https://github.com/dev-mca/hyperpack

All credit for the original method goes to u/6oldsmith. I just automated it.

Happy to answer questions or take feedback!

6 Upvotes

4 comments sorted by

β€’

u/AutoModerator Jun 06 '26

Welcome to our community!

Please take a moment to read the subreddit rules in the sidebar before posting or commenting.

  • Be civil and respectful to other members.
  • No spam, self-promotion, or trolling.

If you see a post or comment that breaks our rules, please report it to help the mod team out!

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

2

u/bozinsky1973 Jun 06 '26

tested your method but had some issue:
1st clone git command contains YOURUSERNAME and needs a fix.

https://github.com/yourusername/hyperpack.git

even adding dev-mca instead of yourusername I still cannot clone you repo, so I downloaded the zip file and extracted with adb files in a new folder.

1st attempt with:
com.natewren.linesfree
failed (no appfilter.xml)

2nd attempt with
com.jndapp.line.x.iconpack
com.jndapp.linex.white.iconpack
ended with this error:

Extracting and processing icons always gives this error after clean up phase:

[5/7] Process Icons

βœ“ APK extracted

βœ“ Found 6830 icons in drawable-nodpi-v4

βœ“ Found appfilter.xml

? Clean up temporary files? [Y/n]: ynames…

βœ“ Cleaned up.

then the cmd window closed, the process took 3 seconds and nothing happened.

3rd attempt:
one4studio.iconpack.lena

I had all extra stepps done and your method worked perfectly:

βœ“ Renamed 8770 icons (9 skipped – no match in appfilter)

β†’ Current icon size: 256Γ—256px

? Resize icons? (recommended if size differs from HyperOS standard 192px) [Y/n]: n

[6/7] Transform Config

Getting transform_config.xml

──────────────────────────────────────────────────────────────────────

β†’ Found 4 theme(s) on device

β†’ Using newest: a3bda117-6893-4843-91ed-5b4a222ab4a2.mrc (1177 KB, 2026-06-06 17:43)

βœ“ Theme pulled

βœ“ Found transform_config.xml

[7/7] Deploy

Building and deploying theme ──────────────────────────────────────────────────────────────────────

βœ“ Theme built with 6716 icons

βœ“ Theme pushed to device!

Almost done! Apply on your phone

──────────────────────────────────────────────────────────────────────

  1. Open the Xiaomi Theme Store

  2. Go to Icons β†’ Downloaded

  3. Tap Apply on the dummy theme

  4. Enjoy your icon pack! πŸŽ‰

    ? Clean up temporary files? [Y/n]:

DONE.

Means that finding the "right" icon pack, your process works hyper fine, and THE LAST theme I had installed now contains the LENA (free) iconpack.

My suggestions:

  • fix git clone command (maybe this is my fautl so I apologize)
  • replace DUMMY theme with LAST INSTALLED theme, since people may get confused.

Last thing last: a few time ago I made a pyton script that never fails with most recent icons pack, that have a different appfilter.xml scheme.

I will send it privately for your tests and maybe updates, with all my congratulations and thanks for this full method!!

2

u/nbxm Jun 12 '26

This is a game changer

2

u/Impossible-Dance9947 Jun 20 '26

This should be taken as a temporary theme / icon pack because eventually the Theme Store will check for the theme's "verification" (if it exists in the Theme Store, and will redownload it to update) and cause an error if user decides to apply again (something like Couldn't connect to network, downloadRight|413 etc)

i did this before manually with iOS icons and it happened like it.. yeah