Re: PEAR installer - ideas....

From: Date: Fri, 23 Nov 2001 12:10:36 +0000
Subject: Re: PEAR installer - ideas....
References: 1  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-3059@lists.php.net to get a copy of this message
On Friday 23 November 2001 04:13, Alan Knowles wrote: > Hi, I have been looking at the installer on pear for some more > generic uses, here are the two situations > > 1. I would like my application to install into the PEAR directory > (not supplied by PEAR, but installed in that directory..) > 2. I wanted to use the CVSLib from chora, but I dont want to copy the > code into my application (and keep updating it manually), I needed a > way to create a downloader that would install it using http calls to > chora.. Well, the CVS free hosting ("pear" CVS module) and the pear web/installer are different things and shouldn't be mixed. Also IMHO is not very safe to rely in http calls to Chora. > Looking at the current situation with the pear installer (ignoring C > extension issues at present..) I had the following issues > At present the Pear installer depends on extensions :zlib, expat > and Pear module Archive_tar (not sure what else....) ..., Console_GetOpt, System.php, the php cgi version and of course all the classes under php4/pear/PEAR/. > from the angle here = the base installer should not depend on > anything other than php existing. That's a little bit difficult but at least it should only depend on things that comes with the php distribution (Archive_Tar is part of the php-4.1 branch AFAIK). > I built an installer for phpmole, and intend to use it to try and > solve the CVSLib problem, > > These are some of the ideas I used to build it - they may be worth > considering for the PEAR installer. > > 1. The package.xml can contain a 4 line script to access the > installer script. see note at end about #php package.xml > 2. the core installer is a single small php file. - Its purpose is to > download (if the not already installed, the key classes to run a > installer) The idea of a small script that updates/downloads the self install scripts is good, but I think that this small script only should download the hole installer. Then the user should call the installer. > 3. the key files that the installer grabs are: a pure php > based xml parser/tree builder, and the installer class. Well, the pear installer is not only a simple "un-tar". It has (or will have) a packages registry, dependencies check, user configuration stuff, updates/removes, etc. > 4. the package definition file is extended to include meta data about > dependancies, download location etc. I'm not sure what kind of dependencies you check, but our requirements were specified by Stig (click here: http://cvs.php.net/co.php/pearweb/rfc/003-dependencies.txt?r=1.2). I'll review your code about this to see if it can be added. > The installer could then be started by > php package.xml > or > php http://cvs.php.net/co.php/php4/pear/PEAR/package.xml The remote cvs packager would be a cool stuff. > Anyway - let me know what you think -- not too many flames pls:) That's what I think, no flames :-) Tomas V.V.Cox

« previous php.pear.dev (#3059) next »