How To Publish Your Plugin - A short summary for new plugin developers (1 Viewer)

huha

Extension Developer
January 3, 2008
890
556
Home Country
Germany Germany
As I was struggling with this for a long time i have summarized a simple howto based on the help of Dadeo and ltfearme. This howto is focusing on using the MP repository for storing at one single place the plugin and update information for the mpei installer, which combines the advantages of the MP respository for plugins/skins and the easy installation options for the user from the mpei installer. But in general you can store the files anywhere.


A) First Time Publishing of a New Plugin

1) Open the mpei Maker and create a new project. This will automativcally assign to the project a unique identifier, so that you can change later the name of the project, but never touch or copy the project number to a new project.

2) Work through the MPEI Maker steps, but keep the fields for all online url locations empty.

3) Built the .mpe1 file

4) Create a new plugin/skin at the MP repository page from MP Extensions
Select your category and click "Add your extension here"

5) Fill the form and upload your mpe1 file from 3) and upload all your pictures and online icons. In the field for the update.xml you have to update a dummy file e.g. update.xml.

6) Submit your plugin/skin and wait until it is published

7) Once it is published you must copy the links for
- the .mpe1 file
- the dummy update.xml file
- all pictures and online icons

8) Open the .xmp2 file in the mpei maker and fill in all the fields containing online information for the mpe1 file, the update.xml file and all your pictures and online icons from step 7.

9) Generate the xml file by clicking the button an name the file e.g. TvWishList.update.xml. The file name must not contain the version number and the name must not be changed for future upgrades. Before you click the "Generate xml" button you must delete any old file with the same name at the target folder. Save your .xmp2 project.

10) Goto the MP repository, click edit after you logged on and upload this update.xml file into your update.xml file. Click submit next.

11) Open your xmp2 project file and click publish once. You have to click publish only once for a project.

If your plugin is supporting MP1.1.x and MP1.2.x with your own installer file you have to make the version control optional. For that open the .xmp2 file in a editor after step2 and search for "<WarnOnly>false</WarnOnly>" and change it to "<WarnOnly>true</WarnOnly>" save the file and include some text for warning like "in MP1.1.x this warning can be ignored".

B) Updating a new plugin version

1) copy your original .xmp2 project file. Do not create a new project for an update.

2) open the project and update
- the version number
- the change history
- the project files and paths
- the release date

3) built a new .mpei file (e.g. TvWishList.Ver1.2.0.15.mpe1)

4) delete any old update.xml files in the target folder

5) generate a new update.xml file with the same name as the original one (e.g. TvWishList.update.xml). This file must not contain the version number.

6) Open your plugin/skin at the MP repository web page, enter the changes and uplod your new .mpei1 file and your newly generated update.xml file and click submit

That´s it. If you want to add or change pictures you must upload them before step 1) to the Mp repository and copy the links of the pictures first in order to add/update them in step 2 in the .xmp2 file with the mpei maker.
If you have your .mpei file and your update.xml file stored at different locations you just have to enter the corresponding URLs into the .xmp2 file via the mpei maker. Just make sure you have only one version of your update .xml file. If you want to give the user a choice of installing older versions, you must not delete the older update.xml file in the target folder before generating a new one. However, this implies that each mpe2 version file has its own download url link (not working in the Mp repository). In the MP repository you can use the link files for archived files (find them by first uploading a dummy file) and then manipulate the .xml file in an editor manually for the differnet links.

C) Removing the plugin from the mpei installer list

If for some reason you want to remove the plugin from the mpei installer you have to remove the update.xml file from the published place. (There may be a better way, but this is the only one i know).

I have attached one of my .xmp2 files as an example, but it would be nice if a few more plugin developers could publish their .xmp2 file as an example (especially one for a skin and one for a simple plugin without using a separate installer).
 

Attachments

  • BackupSettings.xmp2
    22 KB

high

Administrator
  • Team MediaPortal
  • August 31, 2004
    5,106
    5,497
    47
    Isselburg/NRW
    Home Country
    Germany Germany
    thanks huha, nice one ;)

    about removing the plugin from the installer list: Removing the xml from its location is an option but so everyone is still trying to download it. Best way is to send me a PM or email to remove plugin/skin xy manually from the list.
     

    Dadeo

    Docs Group Manager
  • Premium Supporter
  • November 26, 2006
    5,340
    3,321
    Himalayas, India
    Home Country
    Canada Canada
    Hi huha - again many thanks for your great guide. I have added it to the Wiki on a new page Publish Your Extension under both the Plugins and Skins installer sections. I used the more generic term extensions to apply to all extensions (as MPEI does). Please check I got it all correct.

    You can easily attach and insert any images/screenshots if you like, or edit it there.
     

    Lyfesaver74

    Public Relations
  • Premium Supporter
  • September 25, 2010
    1,544
    1,122
    Texas
    Home Country
    United States of America United States of America
    Nice one Huha =) I would like to add that if developers and skinners wish to have their changes and new extensions displayed in our blogs, you might want to PM me.
     

    FredP42

    MP Donator
  • Premium Supporter
  • May 2, 2009
    237
    243
    78
    Home Country
    France France
    Re : How To Publish Your Plugin - A short summary for new plugin developers

    Good job Huha, this was surely needed.

    I have the following remarks/questions:

    A) Why do you publish the first time without the URLs? If you prepare everything, when the plugin is accepted then you have nothing to do.

    B) 1) instead of copying the project, I think it is better to have it under source control. You should commit and tag before releasing a new version.

    B) 3) Tip to build the package with the version number: add [version] in the file name (build section).
    For example, myplugin_v[version].mpe1 will create myplugin_v1.0.0.0.mpe1 if version (in the extension information) is 1.0.0.0.
     

    Edalex

    Community Plugin Dev
  • Premium Supporter
  • January 3, 2008
    2,955
    1,264
    Saratov
    Home Country
    Russian Federation Russian Federation
    Many thanks for this guide!
    Could you describe where to put extension_settings.xml file? :)
     

    Users who are viewing this thread

    Top Bottom