This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
packages:pear [2008-08-02 23:25] grizz |
packages:pear [2008-08-04 16:11] glen |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | |||
- | |||
- | ====== PEAR Packages in PLD Linux ====== | ||
- | |||
- | |||
- | ===== Creating new PEAR Package ===== | ||
- | Install ''php-pear-PEAR_Command_Packaging'' package. | ||
- | |||
- | To prevent such messages on console: | ||
- | |||
- | <file>WARNING: channel "pear.php.net" has updated its protocols, use "channel-update pear.php.net" to update | ||
- | </file> | ||
- | Run: | ||
- | |||
- | <file>$ sudo pear channel-update pear.php.net | ||
- | Updating channel "pear.php.net" | ||
- | Update of Channel "pear.php.net" succeeded | ||
- | </file> | ||
- | Download tarball | ||
- | |||
- | <file>$ 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 | ||
- | </file> | ||
- | It might complain that the package is not in stable state, then force another state: | ||
- | |||
- | <file>$ 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 | ||
- | </file> | ||
- | Now you can make PEAR to make the specfile: | ||
- | |||
- | <file>$ pear make-rpm-spec Text_Wiki_Cowiki-0.0.2.tgz | ||
- | Wrote RPM spec file php-pear-Text_Wiki_Cowiki.spec | ||
- | </file> | ||
- | Filter, test, edit the created spec via: | ||
- | |||
- | <file>$ ./pearize.sh php-pear-Text_Wiki_Cowiki.spec | ||
- | </file> | ||
- | 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 | ||
- | |||
- | <file>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. | ||
- | ---- | ||
- | CategoryUpdateNeeded | ||
- | |||
- | </file> | ||