HOW-TO get your addon into the official repository

  Thread Rating:
  • 1 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Clumsy Offline
Team-XBMC Forum Moderator
Posts: 641
Joined: Feb 2004
Reputation: 0
Exclamation  HOW-TO get your addon into the official repository
Post: #1
With the XBMC Dharma release we will have an integrated addon browser that will make it dead easy for users to find and install your plugin/script creations. So how do you get them in ?

First of all, read the corresponding wiki page. It contains all the info you need:
http://wiki.xbmc.org/index.php?title=Off...Repository

A quick summary:
  • Make sure your plugin is free, legal to distribute, open-source and contains a license file. No .pyo files or other binaries in our official repository !
  • For ease of development for both yourself and other authors who want to submit patches (bugfixes or features), try to make a git or svn repository somewhere. Github or googlecode are good choices.
  • Register with the official addon mailing list. This is the place to submit your work and also the place where other authors will contact you with pull requests for translations and patches. See the wiki page for more details and/or just watch the mailing list for a day or so, to get a feeling on how things work.
  • Hack away !

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
thebitjockey Offline
Junior Member
Posts: 45
Joined: Oct 2006
Reputation: 0
Post: #2
I have started a wiki page for repository owners to list their unofficial repositories.

http://wiki.xbmc.org/index.php?title=Uno...positories


However, if you have a good plugin that can be hosted in the main xbmc.org repository I encourage you to submit this as suggested in original post.
find quote
linuxluemmel Offline
Donor
Posts: 870
Joined: Jun 2009
Reputation: 0
Location: Lucern / Switzerland
Post: #3
Clumsy Wrote:[LIST]
[*]Make sure your plugin is free, legal to distribute, open-source and contains a license file. No .pyo files or other binaries in our official repository !

Do I guess right that icon-file is a kind of binary ;-)Big Grin
find quote
spiff Offline
Retired Developer
Posts: 12,386
Joined: Nov 2003
Post: #4
... no. binary in this context means compiled source code.
find quote
CrashX Offline
Posting Freak
Posts: 1,164
Joined: Jan 2009
Reputation: 2
Post: #5
thebitjockey Wrote:I have started a wiki page for repository owners to list their unofficial repositories.

http://wiki.xbmc.org/index.php?title=Uno...positories


However, if you have a good plugin that can be hosted in the main xbmc.org repository I encourage you to submit this as suggested in original post.

How about if XBMC pull from this wiki as well to find repositories ? This would be separate option like install from zip ..

The normal XBMC log IS NOT a debug log, to enable debug logging you must toggle it on under XBMC Settings - System or in advancedsettings.xml. Use XBMC Debug Log Addon to retrieve it.
(This post was last modified: 2010-08-19 20:28 by CrashX.)
find quote
jmarshall Offline
Team-XBMC Developer
Posts: 26,221
Joined: Oct 2003
Reputation: 178
Post: #6
It is our hope that an official "unofficial" repository (outside the US) will be up and running in the not-to-distant future which should eleviate the need for too many unofficial repositories floating about - the main repo unfortunately can't have rtmpe plugins in them thanks to the retarded laws of the US (XBMC being a US based foundation).

Cheers,
Jonathan

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
malte Offline
Skilled Python Coder
Posts: 1,352
Joined: Jan 2010
Reputation: 28
Location: Germany
Post: #7
What can I do if I want to use external libraries that need .pyd or .so-files and are not available in the repo? I want to add support for .7z files and need "pylzma" and "hashlib" to do this.

Any way to use them and get the script in the repo?
find quote
anarchintosh Offline
Senior Member
Posts: 279
Joined: Jul 2010
Reputation: 4
Post: #8
@malte
script.module.mechanize
is this the kind of thing you're talking about?

my plugin required the mechanize python module, so i copied this design from the PIL module.
create one of these for each library you are talking about, and get them hosted in the repo.

then in your script's addon.xml, under the <requires> heading put the equivalent of this:
<import addon="script.module.mechanize" version="0.2.4"/>
for each external thing.

they get automatically downloaded when an addon requiring them is downloaded.

is this what you are referring to?
find quote
malte Offline
Skilled Python Coder
Posts: 1,352
Joined: Jan 2010
Reputation: 28
Location: Germany
Post: #9
anarchintosh: Thanks for your answer! But I guess that will only work for modules that don't need to be available in a compiled version. I already do this with pyparsing and it works without a problem, but it is enough to have just the .py-file as a reference. Other modules like pysqlite or pylzma need to be available as .pyd or .so that are not allowed to be added to the repo. So I guess there must be another way (if any) to do this.
find quote
giftie Offline
Skilled Python Coder
Posts: 2,364
Joined: Mar 2010
Reputation: 54
Location: Calgary, Alberta
Post: #10
malte Wrote:anarchintosh: Thanks for your answer! But I guess that will only work for modules that don't need to be available in a compiled version. I already do this with pyparsing and it works without a problem, but it is enough to have just the .py-file as a reference. Other modules like pysqlite or pylzma need to be available as .pyd or .so that are not allowed to be added to the repo. So I guess there must be another way (if any) to do this.

You could post a trak ticket asking really nicely for it to be added to xbmc, like how pysqlite and pil are(during compiling)

If you can provide a method to build the module, it usually gets added quicker.

You can also provide the necessary script.module for users to download separately(be sure to offer all platform versions.) from a site like drop box(I did this while the pysqlite module was broken)

[Image: e4f63e45ba34fe4695b3bb08eb2499d8e4ee484e...4c076g.jpg]
For troubleshooting and bug reporting please make sure you read this first you can also use XBMC Log Uploader Script.
Cinema Experience
Cinema Experience Wiki
cdART Manager
fanart.tv


find quote
Dagur Offline
Junior Member
Posts: 15
Joined: Jul 2010
Reputation: 0
Post: #11
My plugin is in the official repository (http://code.google.com/p/xbmc-addons/sou...878&r=1857 )

but it hasn't been added to the trunk. Can anyone tell me why not?
find quote
giftie Offline
Skilled Python Coder
Posts: 2,364
Joined: Mar 2010
Reputation: 54
Location: Calgary, Alberta
Post: #12
Dagur Wrote:My plugin is in the official repository (http://code.google.com/p/xbmc-addons/sou...878&r=1857 )

but it hasn't been added to the trunk. Can anyone tell me why not?

Read over here:
http://wiki.xbmc.org/index.php?title=Off...Repository

and here:
http://wiki.xbmc.org/index.php?title=Add...#addon.xml

[Image: e4f63e45ba34fe4695b3bb08eb2499d8e4ee484e...4c076g.jpg]
For troubleshooting and bug reporting please make sure you read this first you can also use XBMC Log Uploader Script.
Cinema Experience
Cinema Experience Wiki
cdART Manager
fanart.tv


find quote
Dagur Offline
Junior Member
Posts: 15
Joined: Jul 2010
Reputation: 0
Post: #13
giftie Wrote:Read over here:
http://wiki.xbmc.org/index.php?title=Off...Repository

and here:
http://wiki.xbmc.org/index.php?title=Add...#addon.xml

Thanks! I was trying to find something like this.
find quote
jtucker1972 Offline
Fan
Posts: 366
Joined: Apr 2010
Reputation: 3
Post: #14
I tried to join the mailing list, but I never received a confirmation email. How long does it usually take? I've checked my junk email folders, but not seeing anything. Maybe I am being impatient.

AFAIK, I've followed all the rules.

1. I cloned scripts
git clone git://xbmc.git.sourceforge.net/gitroot/xbmc/scripts
2. Added my script folder to it, e.g. script.tvtime
3. I verified no binaries, icon.png is not transparent, etc.
4. I included changelog, etc.
5. I performed git commit for my latest updates

So is the last step I need to do dependent on getting setup in the mailing list so I can send a [Git Pull] request?
find quote
Clumsy Offline
Team-XBMC Forum Moderator
Posts: 641
Joined: Feb 2004
Reputation: 0
Post: #15
@jtucker1972:
Yep. As soon as you get approved on the mailing list (did you check your spam folder ?) you can submit a pull request and things should go their way.

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
find quote
Post Reply