/* page was renamed from PEAR */ ====== 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.