Official add-on repository: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
>Jmarshall
>Theuni
Line 9: Line 9:
*You acknowledge that you are the maintainer of your addon, but the XBMC team reserves the right to update or remove it at any time as we deem necessary.
*You acknowledge that you are the maintainer of your addon, but the XBMC team reserves the right to update or remove it at any time as we deem necessary.
*Please follow the [[Add-ons_for_XBMC_(Developement)#Guidlines_for_images|Guidelines for Images]]
*Please follow the [[Add-ons_for_XBMC_(Developement)#Guidlines_for_images|Guidelines for Images]]
*Please follow the [[Official_Add-on_Repository_Guidelines|Technical Guidelines]]


==The Repositories==
==The Repositories==

Revision as of 21:30, 30 August 2011

Beginning with Dharma, XBMC includes an interface to browse remote repositories where add-ons can be retrieved. The model is similar to the way many current Linux distributions work, whereby there is a "main" repository that is the default, and additional ones may be added by the user. The Official xbmc.org Repository is included with XBMC by default and is maintained by the XBMC team. This page outlines how to submit your addon to the official repository and keep it up to date.

Add-on Requirements

In order to be considered for the official repository, the following guidelines must be met:

  • You MUST include a license file. We recommend the CC-BY-SA 3.0 for skins and the GPL v2+ for others, but most copyleft licenses will suffice.
  • All files must be free and legal to distribute.
  • The addon must not violate any known copyright laws - if in doubt, let us know and we'll look into it for you.
  • All source files must be included. No pre-compiled files or skins will be allowed.
  • You acknowledge that you are the maintainer of your addon, but the XBMC team reserves the right to update or remove it at any time as we deem necessary.
  • Please follow the Guidelines for Images
  • Please follow the Technical Guidelines

The Repositories

XBMC uses git to manage the official repository. See below for the list of git repositories that comprise it.

 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/plugins
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/scrapers
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/screensavers
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/scripts
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/skins
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/visualizations
 git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/webinterfaces

Branches

At any given time, there will be two active branches for each repository: stable, and stable-pre. At the time of this writing, dharma-pre is the main branch for development. When Dharma final is released, all add-ons that are compatible will be moved to Dharma branch. Developers are asked to maintain compatibility with stable branches first, and bleeding-edge (-pre) as their time and effort allows.

The Mailing List

We ask that all Add-on authors subscribe to the Add-ons Mailing List. This is where all updates and important information will be announced. In addition, all pull requests should be sent to this list.

How to submit your Add-On and subsequent updates

Each pull will require a version bump in the addon.xml. We ask that you also keep a changelog.txt up to date so that users may easily see what has changed. To be sure that all addons are maintainable in the future, the following filetypes are banned from the official repository: .pyo, .pyd, .xbt, .xpr, .so, .dll. Note that .xbt files will be generated automatically for skins.

There are several ways to request that we add or update your addon. Please preface threads using the following conventions:

 *[Git Pull] - Submit a request that we pull from your repo. This should include a url, branch/tag/revision, and the addon to pull. HEAD is NOT a revision
 *[SVN Pull] - See above.
 *[Zip Pull] - By far the least useful. Submit a link to the addon or update.
 *[Patch]    - Sometimes you may wish to submit a patch to the author for review. Under most circumstances we will not merge this directly, it should go to the upstream maintainer first.

Example e-mail

Subject:

 [Git Pull] my cool plugin

Body:

 *addon -   my.cool.plugin
 *version - 1.1.0
 *url - git://some.where.git
 *revision - a241345a
 *branch - master
 *xbmc version - dharma, eden-pre