Les dossiers et les fichiers
Une seule règle, et beaucoup de liberté.
Un thème est un dossier placé dans /recalbox/share/themes/.
La seule règle
Ce dossier doit contenir un fichier
theme.xml.
C’est tout. theme.xml est le point d’entrée : Recalbox le cherche à la racine du dossier, et s’il n’y est pas, le thème n’existe pas.
Rien d’autre n’est imposé. Ni nom de sous-dossier, ni découpage, ni organisation. Vous pouvez écrire un thème entier dans ce seul fichier.
Découper, parce que c’est plus pratique
Un thème sérieux fait vite des milliers de lignes. On le découpe donc en plusieurs fichiers XML, rangés comme on veut, que theme.xml inclut :
mon-theme/
theme.xml ← le seul nom imposé
variables.xml
views/
system.xml
detailed.xml
menu.xml
data/
fonts/
images/
Ces noms-là sont les vôtres : appelez-les comme vous voulez. L’usage, chez les thèmes publiés comme à l’export du studio, est de les écrire en anglais — views/, data/, fonts/ — parce que c’est la langue des balises qu’ils contiennent.
Le mécanisme d’inclusion est expliqué dans Découper son thème.
Les chemins
Un chemin écrit dans un fichier est relatif à ce fichier. Dès qu’on découpe en sous-dossiers, cela devient une source d’erreurs.
Passez par ${root}, qui désigne toujours la racine du thème :
<path>${root}/data/images/fond.jpg</path> <!-- ✅ marche depuis n’importe quel fichier -->
<path>../data/images/fond.jpg</path> <!-- fragile : dépend d’où est écrite la ligne -->