PLDWWW: PEAR

glen glen at pld-linux.org
Thu Nov 8 19:18:23 CET 2007


Author: glen   Date: Thu Nov  8 18:18:23 2007 GMT
Module: PLDWWW   URL: http://www.pld-linux.org/PEAR
---- Log message:


---- Page affected: PEAR

---- Diffs:

================================================================
New page:
= PEAR Packages in PLD Linux =

== Creating new PEAR Package ==

Install {{{php-pear-PEAR_Command_Packaging}}} package.

To prevent such messages on console:
{{{
WARNING: channel "pear.php.net" has updated its protocols, use "channel-update pear.php.net" to update
}}}

Run:
{{{
$ sudo pear channel-update pear.php.net
Updating channel "pear.php.net"
Update of Channel "pear.php.net" succeeded
}}}

Download tarball
{{{
$ pear download Text_Wiki_Cowiki
Failed to download pear/Text_Wiki_Cowiki within preferred state "stable", latest release is version 0.0.2, stability "alpha", use "channel://pear.php.net/Text_Wiki_Cowiki-0.0.2" to install
Cannot initialize 'Text_Wiki_Cowiki', invalid or missing package file
Package "Text_Wiki_Cowiki" is not valid
download failed
}}}

It might complain that the package is not in stable state, then force another state:
{{{
$ pear download Text_Wiki_Cowiki-alpha
downloading Text_Wiki_Cowiki-0.0.2.tgz ...
Starting to download Text_Wiki_Cowiki-0.0.2.tgz (23,915 bytes)
........done: 23,915 bytes
File /home/glen/rpm/pld/SPECS/Text_Wiki_Cowiki-0.0.2.tgz downloaded
}}}

Now you can make PEAR to make the specfile:
{{{
$ pear make-rpm-spec Text_Wiki_Cowiki-0.0.2.tgz
Wrote RPM spec file php-pear-Text_Wiki_Cowiki.spec
}}}

Filter, test, edit the created spec via:
{{{
$ ./pearize.sh php-pear-Text_Wiki_Cowiki.spec
}}}

Now cleanup the void rpm if statements (%if 0), test, check %dir and other %file section items, build and commit to CVS.

also worth running {{{SPECS/rpmdb-checkdir.sh}} in /usr/share/pear after you've installed your new package to see if all dirs are owned properly.

== Updating PEAR Package ==

...

... and filter through {{{./pearize.sh}}} script. of course verify the diffs it makes, as it is still not perfect.

== Conventions ==

Only php-pear-PEAR subpackages should depend on php-pear-PEAR, ohers should use just php-pear-PEAR-core dependency. of course you need to test to be sure that it is so.

For optional packages a textfile is created and output in {{{%post}}}. The optional packages are excluded from requirement using rpm macro {{{_noautoreq}}} defintion in spec.


More information about the pld-cvs-commit mailing list