This is an old revision of the document!
I modified the default skin Estuary
so I can customize the main menu items. To do this in a maintainable way I first copied the add-on folder from a Kodi Windows installation and then made the necessary changes. Menu entry names, to which favorite if any it points to, and the Menu entry icon are defined in the language strings which makes it easier to modify.
C:\Program Files\Kodi\addons\skin.estuary
to a new locationaddon.xml
2nd line (bco is my short name, v21 indicates the version of Kodi)<addon id="skin.estuary.bco.v21" version="4.0.0" name="Estuary bco" provider-name="phil65, Ichabod Fletchman, bco">
Rename folder skin.estuary
to the id you changed in addon.xml
, in this example skin.estuary.bco.v21
xml/Home.xml
where you make the changes for the menu entries. To do this we substitute a menu item we will not use in our Kodi installation, for example Games
or Music videos
31162
which is the language message id of the games widget and comment out the surrounding <include content=“ImageWidget”>
(enclose between <!-- and -->)<content>
and comment out all items, then copy the ones you want in your menu in the sequence you want them to appear<item> <label>$LOCALIZE[31711]</label> <property name="menu_id">$NUMBER[17000]</property> <onclick>ActivateWindow(10025,"videodb://movies/sets/$LOCALIZE[31712]/?setid=$LOCALIZE[31721]",return)</onclick> <thumb>icons/sidemenu/$LOCALIZE[31713]</thumb> <property name="id">games</property> <visible>!Skin.HasSetting(HomeMenuNoGamesButton)</visible> </item>
Note that I use language strings to reference to the name of the menu entry, the movie set it points to, and the icon to use
<item> <label>$LOCALIZE[31721]</label> <property name="menu_id">$NUMBER[17000]</property> <onclick>RunAddon(plugin.audio.radio_de)</onclick> <thumb>icons/sidemenu/$LOCALIZE[31723]</thumb> <property name="id">games</property> <visible>!Skin.HasSetting(HomeMenuNoGamesButton)</visible> </item>
language/resource.language.en_gb/strings.po
right after the initial comments starting on line 5# modified by bco, 26.03.2024 # modify string text and movie set id number below which depends on Kodi installed on each client # msgid "" msgstr "" msgctxt "#31711" msgid "Cartoons" msgstr "" msgctxt "#31712" msgid "343" msgstr "" msgctxt "#31713" msgid "videos.png" msgstr "" msgctxt "#31721" msgid "Radio" msgstr "" msgctxt "#31722" msgid "" msgstr "" msgctxt "#31723" msgid "radio.png" msgstr ""
Add corresponding translations to all languages you will need in your Kodi installations
skin.estuary.bco.v21
and install it in Kodi –> Settings –> Add-ons –> Install from zip file
For my Kodi clients I have added the favorite IDs in a table below which makes it easier to upgrade Estuary for a new version of Kodi. Find the IDs by opening file Settings –> File manager –> Profile directory –> favorites.xml
. Sometimes you cannot read the numbers on an entry, in which case select favorites.xml
then use the context menu and select copy which copies the file to the path selected on the right hand side.
Client | Room | Cartoons | Thai movies | Billiard | Concerts | 3D | Trickfilme | Radio |
---|---|---|---|---|---|---|---|---|
Asklepios | Living HH | 4011 | 8 | 10 | 9 | 76 | 18 | yes |
Aquarius | Study HH | 3431 | 7 | 1 | 8 | 64 | 371 | yes |
Aquarius | Library HH | 3431 | 7 | 1 | 8 | 64 | 371 | yes |
Artemis | Billiard HH | 343 | 7 | 11 | 8 | 64 | 371 | yes |
x | Prachin Buri | x | x | x | x | x | x | yes |
x | Flims | x | x | x | x | x | x | yes |
1Visible menu entry