Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Tycho/eclipse-repository"

(document source formats used in eclipse-repository, including extension for bug 361722)
 
Line 63: Line 63:
 
</li>
 
</li>
 
<li>
 
<li>
<p><tt>&lt;productName&gt;.p2.inf</tt> (optional): File for low-level [[Equinox/p2/Customizing Metadata|customizations of the p2 metadata]] produced from the product file.</p>
+
<p><tt>&lt;productName&gt;.p2.inf</tt> (optional): p2 advice file for low-level [[Equinox/p2/Customizing Metadata|customizations of the p2 metadata]] produced from the product file.</p>
 
<p>''Editor support'': None. Only suitable for advanced users.</p>
 
<p>''Editor support'': None. Only suitable for advanced users.</p>
 
</li>
 
</li>
 
</ul>
 
</ul>
 +
 +
 +
== Build results ==
 +
 +
The main artifact of an <tt>eclipse-repository</tt> project is a zipped p2 repository.
 +
 +
TODO describe aggregation logic
 +
 +
== Build steps ==
 +
 +
TODO list included goals with links to sitedoc
 +
 +
== Usage scenarios ==
 +
 +
=== Creating Product Distributions ===
 +
 +
TODO copy from packaging types page

Revision as of 12:18, 4 March 2014

The packaging type eclipse-repository is Tycho's packaging type for aggregating content into a p2 repository (aka. "update site"). It can also be used for building Eclipse/RCP application distributions.


Source files

The following source files are taken into account in eclipse-repository projects:

  • category.xml (optional): Selects features for the p2 repository and specifies how to categorize them in the p2 installation dialog.

    Example:

    <?xml version="1.0" encoding="UTF-8"?>
    <site>
       <feature id="mytool.addon.feature" />
       <feature id="mytool.feature">
          <category name="mytool.category.id"/>
       </feature>
       <category-def name="mytool.category.id" label="My Tool">
          <description>
             My Eclipse tool built with Tycho
          </description>
       </category-def>
    </site>
    
    With this category.xml, the features mytool.addon.feature and mytool.feature would be included into the p2 repository. mytool.feature would be shown in the category "My Tool", and mytool.addon.feature in the automatically created category "Uncategorized".

    Editor support: category.xml files can be edited with the PDE's Category Manifest Editor.

  • <productName>.product (optional): Defines a product configuration, which contains the information needed to create an Eclipse or RCP application installation. The product configuration definition (and the content listed in it) is included in the p2 repository. See this usage scenario for how to also create a product installation in the build.

    Example:

    <?xml version="1.0" encoding="UTF-8"?>
    <?pde version="3.5"?>
    
    <product uid="mytool.product" id="org.eclipse.platform.ide" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
    
       <configIni use="default">
       </configIni>
    
       <launcherArgs>
          <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
       </launcherArgs>
    
       <features>
          <feature id="org.eclipse.platform"/>
          <feature id="mytool.feature"/>
          <feature id="mytool.addon.feature" installMode="root"/>
       </features>
    
       <configurations>
          <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
          <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
          <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
       </configurations>
    
    </product>
    

    This example product configuration would result in an Eclipse installation with the features org.eclipse.platform, mytool.feature, and mytool.addon.feature. The mytool.addon.feature would be marked as separately installed feature in the installation, so that it could be updated or uninstalled independently from the product.

    Editor support: product files can be edited with the PDE's Product Configuration Editor. Note that the installMode attribute is an extension of the product file format which is currently not supported by the PDE, so you may need to re-insert the attribute after having used the Product Configuration Editor.

  • <productName>.p2.inf (optional): p2 advice file for low-level customizations of the p2 metadata produced from the product file.

    Editor support: None. Only suitable for advanced users.


Build results

The main artifact of an eclipse-repository project is a zipped p2 repository.

TODO describe aggregation logic

Build steps

TODO list included goals with links to sitedoc

Usage scenarios

Creating Product Distributions

TODO copy from packaging types page

Copyright © Eclipse Foundation, Inc. All Rights Reserved.