Pyrus - Getting Started

From PEAR Wiki

Jump to: navigation, search

[edit] Getting started with Pyrus - the new installer for PEAR compatible packages

There are quite a few reasons to start playing with the new PEAR package manager - named Pyrus. The first of which is that it is filled with PHP 5 goodness, utilizing many features of the SPL. And secondly, PEAR2 is just around the corner and these are exciting times for PHP development.

Prerequisites:

  • PHP >= 5.3 (I believe you need libxml > 2.6.16, but could use some help verifying this)
  • SQLite Extension, should be included by default (sudo apt-get install php5-sqlite)


The first thing we need to do, is create a temporary directory to checkout the PEAR2 files from the repository:

Note: In case you haven't heard, PEAR2 source files are in subversion at http://svn.pear.php.net/PEAR2

mkdir ~/PEAR2_SVN
cd ~/PEAR2_SVN/
svn co http://svn.pear.php.net/PEAR2/all PEAR2

Great, now you have a copy of the latest files for Pyrus and PEAR2. (r 314 when this was written).

The following packages are the backbone of the new package manager:

  • PEAR2_Autoload
  • PEAR2_Exception
  • PEAR2_Pyrus
  • PEAR2_HTTP_Request
  • PEAR2_Developer (if you'd like to build some PEAR2/Pyrus installable packages)

The PEAR2 channel is not available yet, but we can install the individual packages in Pyrus by using their respective package.xml files within the svn checkout.

Before we install the new packages, let's create a directory to place our Pyrus installation, and tell Pyrus to manage that directory. Previously, users would create a system PEAR install in /usr/share/pear or similar, or a local PEAR install in ~/pear/. And at this point, you would have to make a decision you might have to live with for the rest of the installed packages' lives. But, don't worry! With PEAR2 we can move this Pyrus managed installation later if needed.

mkdir ~/pyrus
php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar mypear ~/pyrus

Now let's install some packages

php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar install ~/PEAR2_SVN/PEAR2/Autoload/package.xml 
php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar install ~/PEAR2_SVN/PEAR2/Exception/package.xml
php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar install ~/PEAR2_SVN/PEAR2/HTTP_Request/package.xml
php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar install ~/PEAR2_SVN/PEAR2/Pyrus/package.xml
php ~/PEAR2_SVN/PEAR2/Pyrus/pyrus.phar install ~/PEAR2_SVN/PEAR2/Pyrus_Developer/package.xml


Now you have Pyrus and all the necessary dependencies installed! To get started, you can create your PHP files which reference the PEAR2 autoloader by using:

<?php

require 'pyrus/src/PEAR2/Autoload.php';
...

Once you have a successful PEAR2 installation, why not move on and read Creating a PEAR2 Package.

Hopefully this gives you all a quick understanding of how to get started, and some idea of where things are headed.

Some api docs for Pyrus - http://ucommbieber.unl.edu/workspace/PEAR2/Pyrus/docs/

Personal tools