Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: for the plan.

Jump to: navigation, search

EPP/Obsolete/Galileo Packages

Note: The contents of this page is obsolete, but it may still contain some interesting tid-bits.


  • All EPP Packages for the Galileo release are build from p2 repositories with the p2 director.
  • Every package is defined by
    • a feature
    • a branding plug-in
    • a epp.product file that is used to generate the EPP p2 repository
    • a eclipse_PACKAGENAME_galileo.xml file (the old EPP config file) that is used for generating the website only.
  • EPP p2 composite repository with all milestones and release candidates:

p2 Repositories

EPP uses the following p2 repositories:

Package Definition

All EPP consists of two projects that are available from the EPP CVS. Changes should be requested by submitting a bug in bugzilla with an attached patch.

cvs -d checkout -P org.eclipse.epp/packages

Feature org.eclipse.epp.package.PACKAGENAME.feature

  • eclipse_PACKAGENAME_galileo.xml: This file is the old EPP configuration file. It is only used to drive the website and contains the name, description, links to bugzilla, name of the maintainer, links to new and noteworthy, etc. The content of the package is not defined in this file (see feature.xml)!
  • epp.product: Product configuration file that is used to generate the p2 repository which can be used by the p2 director to build the final package.
  • feature.xml: See the examples in CVS. This file contains the branding plug-in and defines the content of the package [currently] in the "requires" section of the feature definition, e.g.
  <import feature="org.eclipse.cvs" version="1.1.0" match="greaterOrEqual"/>
  <import feature="org.eclipse.equinox.p2.user.ui" version="1.1.0" match="greaterOrEqual"/>
  <import feature="" version="1.1.0" match="greaterOrEqual"/>

Plug-in org.eclipse.epp.package.PACKAGENAME

  • plugin_customization.ini: Among other things a package can specify it default perspective in here:
  • plugin.xml: This is used to specify the product and all properties that are necessary for the product:
        description="The EPP Pulsar Package."
        name="EPP Pulsar Package">

Local Package Build

A local package build is the same as running the p2 director on the above p2 repositories and installing special root IU's from the repositories. Available root IU's: epp.package.cpp,, epp.package.jee, epp.package.modeling, epp.package.php, epp.package.pulsar, epp.package.rcp, epp.package.reporting.

Using the repositories

IMPORTANT: Use Eclipse 3.5 and use a operating system with a filesystem that knows about access rights, executable bits and case sensitive directory and file names.

eclipse -nosplash -consoleLog \
-application org.eclipse.equinox.p2.director \
-m, \
-a, \
-installIU epp.package.cpp \
-destination /tmp/epp/eclipse \
-profile epp.package.cpp \
-flavor tooling \
-profileProperties org.eclipse.update.install.features=true \
-bundlepool /tmp/epp/eclipse \
-p2.os linux gtk -p2.arch x86_64 \
-roaming -vmargs -Declipse.p2.mirrors=false

This command will install the CPP package with the root IU epp.package.cpp for the platform linux/gtk/x86_64 into the directory /tmp/epp/eclipse.

Using a local repository generated from the .product file

  • Use the PDE product editor and use the Eclipse Product Export Wizard to export the product to some place on your disk
    • Make sure that you enable 'Generate metadata repository'
  • Replace the EPP repository in the above command with your local repository, e.g. file:///tmp/...

Back to the top