Installing external plug-ins manually

From Event-B
Jump to: navigation, search

Although it is preferred to install additional plug-ins into the Rodin platform using the Update Manager of Eclipse, this might not always be practical. In this case, a manner to install these plug-ins is to emulate either manually or using ad-hoc scripts the operations normally performed by the Update Manager.

This manual installation of plug-ins is described below, using the example of the B4free provers.

Finding the Update Site

The first thing to do is to find the update site from which the plug-ins are downloaded by the Rodin platform. A list of default update sites is available in file feature.xml of the org.eventb.ide feature. In a regular installation, this file has the following path relative to the root of the installation tree:

 features/org.eventb.ide_0.8.2/feature.xml


Decoding the site.xml file

From the URL given in this file, download the corresponding site.xml file that describes the available features from the corresponding site. For instance, for the B4free provers, the URL in the feature.xml file is

 http://bmethod.com/update_site/b4free_provers

Hence, the file to retrieve is

 http://bmethod.com/update_site/b4free_provers/site.xml

At the time of writing, this file contains:

   <?xml version="1.0" encoding="UTF-8"?>
   <site>
      <feature url="features/com.b4free.rodin_0.8.3.jar"
               id="com.b4free.rodin"
	       version="0.8.3"
               os="linux,macosx,win32"
	       arch="ppc,x86"/>
   </site>

Hence, the feature for the B4free provers is located at

  http://bmethod.com/update_site/b4free_provers/features/com.b4free.rodin_0.8.3.jar

Installing a feature

Retrieve this file. Then, create a directory with the same base name (i.e. same name without the .jar extension) in the features directory of your rodin installation and extract the contents of the jar file in it. For instance, on a Linux machine, this can be done with the following commands:

   cd /path/to/installed/rodin
   mkdir features/com.b4free.rodin_0.8.3
   cd features/com.b4free.rodin_0.8.3
   unzip -q /path/to/downloaded/com.b4free.rodin_0.8.3.jar

Installing the corresponding plug-ins

Then examine the feature.xml file that has been extracted in the previous operation. It contains a list of plugin description in XML format. For instance, the first plug-in listed is described as:

   <plugin
         id="com.b4free.rodin"
         download-size="0"
         install-size="0"
         version="0.8.0"/>

Using the URL of the update site, the plug-in id and version, one infers that this plugin lies at URL

  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin_0.8.0.jar

At the time of writing, the other plug-ins are at URLs:

  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin.core_0.8.2.jar
  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin.core.linux_0.8.2.jar
  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin.core.macosx_0.8.2.jar
  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin.core.win32_0.8.2.jar
  http://bmethod.com/update_site/b4free_provers/plugins/com.b4free.rodin.ui_0.8.0.jar

For each plug-in listed in the feature file, retrieve it using the appropriate URL and copy it in the plugins directory of your Rodin installation. Note that you need only one of the platform specific plug-ins (depending on your target installation: linux, macosx or win32).

Checking the installation

Then, start the Rodin platform and click About Rodin platform in the menubar. The manually installed plug-ins should now be available in the Rodin platform.