Thursday, April 28, 2011

There is an app^Wppa for that

Want to try out PHP5.next (PHP5.4?) on Ubuntu?
After the death of PHP6.0 a while ago, development of PHP.next (PHP5.4 probably?) has been going on.
There are a lot of cool features there try out - like traits, scalar type hint, and sh**loads of smaller features.

There is still no public "development preview" or alpha release, but that doesn't mean we can't play around with it, report bugs, ensuring our apps still properly work with it etc etc etc.
It is however a bit annoying needing to "go old-school" and fetch a snapshot and build it yourself though.

When I was playing with launchpad the other day I figured.. why not provide a daily build of PHP trunk/ (PHP.next, PHP5.4 or whatever you want to call it)?

Launchpad isn't all to happy with git, and doesn't support mirroring git branches, so a fork of the php5-vanilla-ubuntu repo to php5-next-vanilla-ubuntu was needed as some of the patches there don't apply to trunk/. But that was about it.

So, want to try out PHP5.4 daily builds? Checkout the PHP5.4-daily PPA on launchpad!

Play around with the new features, provide feedback to the PHP development mailinglist, and make sure your application if forward compatible with it today.

Sunday, April 17, 2011

up2date PHP5.3 packages for Ubuntu

Most Linux distributions have a policy of not being to up to date with upstream releases of software, mostly for good reasons. This however is extremely painful for developers, as it means they often need to use really outdated version, containing all sorts of bugs - and even missing features.

This has been pissing me off for quite some time, so I have been running my own PHP builds for a while - but when it comes to deploying the apps... the sysadmins obviously start complaining that they have to invest a lot more work into maintaining the servers then they otherwise would have to.
So.. What can we do about that? Launchpad to the rescue!

Launchpad makes it really easy to provide your own custom packages, and even has a vast build farm to build packages automatically for different architectures and different Ubuntu releases. The only down side is it doesn't build rpm packages.. Thats fine by me, but that would be really useful for those wishing to deploy on a RedHat based distro.

After hunting down the debian PHP packaging repo, I forked it onto github (as php5-vanilla-ubuntu) and started ripping out some of their weird patches and enabled mysqlnd, but otherwise keeping their package splitting and the things you would expect from a debian package.



What does this mean?
- Well, if you are looking for up2date PHP packages (currently PHP5.3.6) to work with, checkout the PHP5.3 PPA on launchpad :)
This PPA works just fine as a drop-in-replacement for the default Ubuntu packages, and provides builds for Lucid and Maverick (there are some changes in Natty I need to look into..).

I have been running these packages for some time now, but if you notice any issues - please let me know :)