Analyzing Vita Themes and creating custom ones

Today I want to talk a little bit about how themes for the PS Vita work and how we can create our own theme packs for the future. Since we are at hackinformer I think this just makes sense and we should do more technical articles and explain how things work in general! What do you think?

Note: Most of the following info is publicly available and taken from the


Okay, firstly all theme files are stored on the memory card in ux0:theme/CONTENT-ID once downloaded and installed. For the example of Tearaway that would be ux0:theme/PCSF00214-THEME00000000000, for the 20th Anniversary theme ux0:theme/PCSF00688-20THANNITHEME001 and so on..psvita_themes


Once you activate a theme in the settings app, all the content in ux0: gets decrypted and copied over to ur0:shell/theme to be used by the system. (thats btw the reason why it takes that long to activate a theme)

This is a file listing of the 20th Anniversary theme for example:


Here we basically have all the icon files, the preview-screenshots, the backgrounds/lockscreen wallpapers and a system music file in .at9 format. But to make the theme actually work, all these files need to be like ‘registered’ in the theme.xml file, so that the Vita knows which png is meant for which app etcetera. Additionally informations about the theme’s name, version and author are stored in here, too.xmltut


icon0sampleApp icons (the Welcome Park, the Maps and the Store app can’t be themed this way.)


theme_previewthumb<m_packageImageFilePath> (preview thumbnail)


theme_preview_screenshots<m_homePreviewFilePath> & <m_startPreviewFilePath>




theme_vita_lockscreen<m_dateLayout> (clock position)

Lockpapers can be 960 x 544 or even 840 x 512 but need to be in 8 Bit depth!

themepreview<m_title>, <m_provider> & <m_contentVer>

If you’re looking to create custom background music (Snd0.at9) as well, make sure to take a look at the vitadevwiki page!

Now you should have all the necessary infos to make custom theme packs yourself and basically the only thing you need to do is create your .png(s) and modify the .xml file! If however an icon won’t show up correctly, play around with the bit-depth as the vita can be a little bit picky about that sometimes. 🙂

Here is my custom example theme so you can have a look:


And from this point you will be ready to install your custom theme packs: See the Tutorial(s)

If you need help making your theme just go here and if you need help installing them just follow this simple how-to here.

Addon #1:

Catch me on twitter: @freakler94

About Freakler

Moin! Occasional programmer, number 2 here at & creator of the PlayStationGuide. I mainly talk about console-hacking related stuff..

Check Also

Rumored Nintendo Switch Flash Cart with Video Proof…

The Nintendo Switch might be getting a Flash cart, also known as a flashcard or …


  1. I can’t wait to use custom themes myself, especially custom background music is great.

    ”What do you think?”
    Definitely! Even for a complete noob like me, this technical stuff is always a very interesting read!

    Oh, and btw. I really have to say that the articles on hackinformer are always very interesting and informative. I actually prefer them more than the ones on wololo lately. 🙂

  2. one thing though , can we add more icons to the theme.xml file ? like for example : i have some more games and i want to make custom icons for them , is it possible to add them to the theme.xml file ? using the same code ?
    this is really looking good , but i don’t think there is a way to install them again into the Vita is there ?

    • There are different ways to install custom icons. This one makes use of the theme function but sadly is limited to the system apps like you already noticed.

      But there must be another way to theme everything including all icons as you can see from smokes tweets for example. ^^

  3. Will this use the e-mail app?

    • I would think it would use the same exploit method released from mr.gas that allowed us to install the unity app pkg, we have no write access to ur0: and i don’t think we can encrypt theme files yet to write them with the email app, altho i could be wrong but u would think encrypted files would be unique to the user using them.

  4. I’m having an issue with getting my 128 by 128 png images to run on the bubbles they just appear white?
    that is a single image I’m using for the cma bubble

  5. Have you guys tried creating the .at9 files from an .mp3 file? I’m having so much trouble with it. Do you guys have any recommendations of applications that will correctly convert the file? i went to the vitadevwiki page about .at9 but i coudln’t find that specific information. any help would be wonderful

  6. Awesome! ive never made a theme, but after such a good explanation ive not really got a reason not to learn it =)
    Already gathered a few images as i was reading through. will have to put some thought to the main bubbles (settings and stuff) later on

    Cheers for the project.

  7. I got all my pictures ready all sized but I have no idea what to do next…

  8. Can you share tearaway theme?


  9. Is there an easier way to create custom themes?
    You know, like a program that let’s you change the text in the XML
    without having to change it manually back and forth in a text editor?
    Or drag and drop your edited .PNGs and it’ll replace the text with the name of
    said .PNGs? Anything like that yet?

  10. Why they put half the tutorial ?, the images have to be if or if in 8 bits, not only the lock screen

  11. With Photoshop change the image from the mode tab from RGB to Indexed color. that’s how I got my theme pictures to show up!

  12. We also have the psv theme maker, so no more messing with paint or photoshop.