Ok the repo is updating now after making it just like an addon but I'm still confused about the directory structure and addons.xml files. It looks like this currently (used Plugins for directory name instead of addons because it was already like that):
/Plugins/
addons.xml
addons.xml.md5
/Plugins/repository.myrepo/
icon.png
changelog.txt
addon.xml
repository.myrepo-1.2.zip
/Plugins/isengard/
addons.xml
addons.xml.md5
plugin.program.test
/Plugins/jarvis/
addons.xml
addons.xml.md5
plugin.program.test
The isengard and jarvis xml files are set up as usual (only difference being version 1.2.0 for isengard and 1.3.0 for jarvis), however when Isengard sees my addon update I get a prompt about the addon being incompatible due to unmet dependencies and it's only seeing the 1.3.0 update which of course will not install because I have the require block <import addon="xbmc.python" version="2.24.0"/> which is for Jarvis only.
When I try to update on Jarvis it attempts to download the correct 1.3.0 Jarvis version from
http://mysite.com/Plugins/plugin.program...-1.3.0.zip instead of /Plugins/jarvis/plugin.program.test/plugin.program.test-1.3.0.zip. It also sees the 1.2.0 version if I open Add-on information and click on Update manually.
Should my /Plugins/addons.xml only have the <addon> block for the repo or should it also have blocks for both addon versions as well? I tried putting in the addon blocks for both versions but it still didn't work.
Here are all my addons.xml files (same info inside the individual addon.xml files for the repo and addons of course).
/Plugins/addons.xml:
Code:
<addons>
<addon id="repository.myrepo" name="My Addon Repository" version="1.2" provider-name="Test">
<requires>
<import addon="xbmc.addon" version="12.0.0"/>
</requires>
<extension point="xbmc.addon.repository" name="My Repo">
<dir minversion="15.0.0">
<info compressed="true">http://mysite.com/Plugins/isengard/addons.xml</info>
<checksum>http://mysite.com/Plugins/isengard/addons.xml.md5</checksum>
<datadir zip="true">http://mysite.com/Plugins/isengard</datadir>
<hashes>true</hashes>
</dir>
<dir minversion="15.9.0">
<info compressed="true">http://mysite.com/Plugins/jarvis/addons.xml</info>
<checksum>http://mysite.com/Plugins/jarvis/addons.xml.md5</checksum>
<datadir zip="true">http://mysite.com/Plugins/jarvis</datadir>
<hashes>true</hashes>
</dir>
</extension>
<extension point="xbmc.addon.metadata">
<summary>My Addon Repository</summary>
<description>Description</description>
<platform>all</platform>
</extension>
</addon>
</addons>
/Plugins/jarvis/addons.xml:
Code:
<addons>
<addon id="plugin.program.test" name="Test Addon" version="1.3.0" provider-name="Test">
<requires>
<import addon="xbmc.python" version="2.24.0"/>
<import addon="script.module.dateutil" version="2.4.2"/>
</requires>
<extension point="xbmc.python.pluginsource" library="default.py">
<provides>program executable</provides>
</extension>
<extension point="xbmc.addon.metadata">
<summary lang="en">My Test Addon</summary>
<description lang="en">Description</description>
<disclaimer lang="en">Disclaimer</disclaimer>
<forum></forum>
<source></source>
<website></website>
<platform>all</platform>
</extension>
</addon>
</addons>
/Plugins/isengard/addons.xml:
Code:
<addons>
<addon id="plugin.program.test" name="Test Addon" version="1.2.0" provider-name="Test">
<requires>
<import addon="xbmc.python" version="2.20.0"/>
<import addon="script.module.dateutil" version="2.4.2"/>
</requires>
<extension point="xbmc.python.pluginsource" library="default.py">
<provides>program executable</provides>
</extension>
<extension point="xbmc.addon.metadata">
<summary lang="en">My Test Addon</summary>
<description lang="en">Description</description>
<disclaimer lang="en">Disclaimer</disclaimer>
<forum></forum>
<source></source>
<website></website>
<platform>all</platform>
</extension>
</addon>
</addons>