The P2PP version 3 Tool - Installation

Supported Platforms

In principle, P2PP 3.4.3 will work within any Java Virtual Machine which supports the Java Runtime Environment (JRE) 1.7.0 or a higher version. It should thus work on a variety of Unix platforms and Linux distributions, as well as MacOS X 10.7.3 and higher.

At present, the official ESO integration and testing platform for P2PP is Scientific Linux.

We provide the installation kit for P2PP in the form of a tarball (see below).You should have Java 1.7 (or 1.8) installed on your machine to run the software. As a courtesy, we also provide ready-to-use Java 1.7 tarballs for some platforms.

Although ESO is not able to guarantee that P2PP will work correctly on all platforms, support is available on a best-effort basis from the ESO User Support Department.

Notes about Java 1.7 (aka Java 7)

P2PP 3.4.3 requires version 1.7 or higher of Java to run. This version is available for many different platforms and is available for download on the Oracle web site. In case you do not have Java 1.7 or higher already installed on your machine, please visit this site to retrieve the corresponding software package. Note that it is possible to have several versions of Java installed on your machine, e.g. if some of the tools you are using still require Java 1.6 to run. If you are running Linux, we also provide tarballs for the Java Runtime Environment (JRE) directly from our P2PP download page. Please note that alternative versions of Java (e.g. OpenJDK) may create issues, hence we recommend sticking to the JRE provided by Oracle.

In case you are using a Mac, please note that Java 1.7 and higher are only available for MacOS X 10.7.3 and above. Unlike earlier versions, Java is not directly supported by Apple, and it is thus not part of the operating system anymore. You will have to manually download Java from the official Java page if you are missing it on your machine. You can install either just the Java Runtime Environment (JRE - ~55MB) or the full Java Development Kit (JDK - ~220MB), both the JRE and the JDK are available from here.

How to Install P2PP version 3

To be able to run P2PP, you will need to unpack the installation kit, make sure that the Java binary can be found and start the P2PP executable.

Please follow these steps:

  • Change to the directory where you have downloaded P2PP. In the following, we call this directory the installation directory.
  • Run the following sequence of commands:
        gunzip -c p2pp-3.4.3.tar.gz | tar xvf -
  • Since P2PP is a Java application, you need to have it installed on your machine:
    • make sure that a Java 7 or newer Runtime Environment (JRE) is installed on your computer.
    • For Linux machines: define the JAVA_HOME environment variable to point to its installation directory (example command: "export JAVA_HOME=<path-to-Java-install-dir>"). The JAVA_HOME directory must contain the "bin" subdirectory where the Java executable can be found. If you have retrieved a Java package from our download page, you can unpack it using this command:
      gunzip -c jre<version>.tar.gz | tar xvf -

      This will create a directory named jre. Set the variable JAVA_HOME to point to it.

    • For MacOSX machines: You can install either just the Java Runtime Environment (JRE - ~55MB) or the full Java Development Kit (JDK - ~220MB), both the JRE and the JDK are available from here. If you install/have installed a standard JDK, the command "/usr/libexec/java_home" will return the path to your Java 1.7+ JDK installation, no further step is required. Otherwise define the JAVA_HOME variable as described just above. If you have a standard JRE installed JAVA_HOME will need to be set to something like 
      "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home".

This completes the installation process. To run the executable from any directory, also add <installation-directory>/p2pp-3.4.3/bin to your $PATH environment variable. Possible files to update are: $HOME/.tcshrc, $HOME/.cshrc, $HOME/.login

Execute P2PP by issuing the command p2pp in a terminal window, possibly after issuing rehash or hash -r.

If the P2PP login window appears, then you have successfully installed P2PP. You can then delete the compressed TAR file.

Important: after starting P2PP for the first time, please ensure you download your observing runs and instrument packages through the "Download/Refresh Observing Runs" menu under the "File" menu.

Warning: please make sure you are really running the right version of P2PP. The P2PP version is listed at the top of the main window. Also, please note that the directories "p2pp-3.4.3/cache/", "p2pp-3.4.3/instruments/" and all their subdirectories have to be writable for every user of P2PP. This may require to change the permissions on this directory if you are installing P2PP in a system-wide location on your machine.

Note about the upgrade to version 3.4.2+

Versions 3.4.2 and above of P2PP include new features that allow the software to communicate with the unified GuideCam tool when it is running on the same machine. Because the exchanges between the two tools make use of a specific TCP port, it is not possible anymore to have several instances of P2PP running at the same time on the same machine. In practice it is thus not feasible to have a system-wide installation of P2PP shared between several users.


The format of the internal data cache of P2PP 3.4.3 is backward compatible with version 3.4.1 and 3.4.2. In case you wish to retrieve OBs present in the local cache of your 3.4.1/3.4.2 installation, simply copy the whole contents of the "p2pp-3.4.x/cache" directory to "p2pp-3.4.3/cache" before starting to work with the new version. Note that it is however not possible to do the same with versions 3.4.0 or earlier. In case you need to transfer some OBs from your earlier installation of P2PP, please run the old version of the software, select the OBs and use the command "File > Export" to create a backup. Then, start P2PP 3.4.3 and use the function "File > Import" to ingest the OBs into the new version of P2PP.

Instrument selector