phorkie is composer-installable

To be able to install all of phorkie's dependencies with composer, I spent a good part of the last week to bring a number of PEAR package onto packagist.org. ​

Previously I had resorted to composer's PEAR server interface, which is pretty slow and error-prone. Time to get that fixed. ​

Services_Libravatar​

phorkie uses Services_Libravatar to fetch avatar images from e-mail addresses and OpenIDs of logged-in users. It's a library for the libravatar.org API that provides a federated and self-hostable alternative to Gravatar. ​

The first obstacle was finding the sources, because it had been hosted on gitorious.org, which had been acquired by gitlab and shut down shortly after. ​

Thanks to the Archiveteam the git repositories have been preserved and I was able to obtain a commit that was missing in my local copy. ​

After it had been transferred to Github, I configured the travis-ci.org integration and added a proper README.rst file. ​

OpenID​

The OpenID package is used to log people into phorkie without registration and without permanently saving any personal data. ​

The package had no composer.json file, and when adding it I noticed that three out of five dependencies were also not composer-installable :/ ​

After the dependencies were fixed and the composer.json file added, I tagged it as v0.4.0+composer. That tag is picked up properly by composer as version 0.4.0, and I did not have to increase the version number just for composer compatibility. ​

Cache_Lite​

Cache_Lite is one of the OpenID dependencies. It had a composer.json, but no entry on packagist.org. ​

Crypt_DiffieHellman​

Also required by the OpenID package, Crypt_DiffieHellman had several problems: ​

All of them is fixed now. ​

Services_Yadis​

Services_Yadis only needed new dependency versions and a tag. ​

VersionControl_Git​

phorkie uses VersionControl_Git to init, commit into and extract information from git repositories. ​

When setting up automated unit test runs I saw that some tests were broken. It turned out to be a date issue; the original author had a different timezone and relied on that in the tests. After adjusting the dates and replacing date() calls with gmdate(), the tests run in any timezone now. ​

Services_Linkback​

The PEAR2 Services_Linkback package sends out pingbacks and webmentions, and was missing an entry on packagist.org. ​

Fin​

After all those packages have been made ready, installing dependencies on a phorkie git checkout only requires you to run composer install now. It's time to self-host your pastes and gists! It's never been that easy to get phorkie running :) ​

Written by Christian Weiske.

Comments? Please send an e-mail.