Instalar PEAR en Debian Squeeze siendo usuario normal

Estándar

Para un proyecto PHP en el que estoy trabajando necesitaba instalar una versión reciente de PEAR. Como no quería realizar la instalación de manera global para no interferir con el sistema de paquetes de Debian ni utilizar la ya instalada por ser anticuada busqué la forma de hacerlo en un directorio de mi elección.

El proceso

Antes que nada abrimos una terminal que nos de acceso a un interprete de línea de comando.

Necesitamos el archivo phar que contiene el administrador de paquetes PEAR. Lo descargamos de esta URL: http://pear.php.net/go-pear.phar. Teniendo instalado wget u otro gestor de descarga de nuestra elección, ejecutamos:

$ wget http://pear.php.net/go-pear.phar

o lo bajamos directamente usando el navegador web actual.

Por defecto, la versión de PHP 5.3 que trae Debian tiene incorporado el parche Suhosin, el cual agrega seguridad al interprete pero resulta en ligeras incomodidades para los desarrolladores. Por mi parte aplaudo la decisión del equipo empaquetador. En consecuencia, si ejecutamos a continuación $ php go-pear.phar como muchos intuirían veremos que no pasa nada. Ni siquiera un mensaje indicando que el comando no tuvo éxito. Solo si inspeccionamos el archivo /var/log/syslog veremos unas líneas producidas por Suhosin indicando el error ocurrido. Esto pasa porque la configuración por defecto de PHP que trae Debian prohíbe la ejecución del especificado tipo de archivo.

Para sobrepasar este escollo debemos decirle al interprete de PHP que ignore dicha directiva solo por esta ejecución y ejecute el archivo phar indicado:

$ php -d suhosin.executor.include.whitelist="phar" go-pear.phar

Con lo cual la instalación iniciará su curso normal. Solo resta seguir las instrucciones que aparecen en pantalla.