php-json on Ubuntu 13.10

Events happening in the community are now at Drupal community events on www.drupal.org.
riaan burger's picture

So I'm, setting up Ubuntu 13.10 boxes and come to the drush setup (just after installing PHP). Turns out php-json is no longer included in php-common. How odd, I think. Drush errors out not finding the often used json_encode() function.

You have to love free software! I sure doubled my love for it today. It would seem that the original author included a line to the MIT license: "The Software shall be used for Good, not Evil." that effectively makes it a proprietary license. We can't use that.

Here's a very funny bit where he talks about it: https://www.youtube.com/watch?v=-hCimLnIsDA

But it's less funny when it affects all the Linux distros that rely on it. Luckily we're coders right! So quick drop-in rewrite thanks to https://github.com/remicollet/pecl-json-c

Awesome! And Thanks!

For now, on your Ubuntu box, just add this to get functionality back, and don't start writing any evil doe OK!

apt-get install php5-json

Comments

riaan burger's picture

Haha, comeback. Just saw the last line on the github page for the replacement (better) package:

"The world will not be destroyed by those who do evil, but by those who watch them without doing anything. -- Albert Einstein"

Updated repositories?

michaelangela's picture

I was just working on a 13.10 install and php5-json isn't available. Did you modify the apt repositories to make it available?

[update] User error. I had mistakenly used a 13.04 base image instead of 13.10. All good now.

More work ahead with Apache 2.4

riaan burger's picture

13.10 also comes with Apache 2.4 which brings some interesting changes.

https://httpd.apache.org/docs/current/upgrading.html

For most, access control will be the notable change. Previously

Order deny,allow
Deny from all

will now be

Require all denied

But if you also run PHP5-FPM and use UNIX file sockets, you're out of luck. The new method to run it with mod_proxy doesn't support file sockets yet, so you'll have to use a network socket in your virtual host definition... something like (though I'd like to work on it before production use):

ProxyPassMatch ^/(.*.php)$ "fcgi://127.0.0.1:9200/home/--username--/hosted/--project--/http/www/$1"

I really just want my file sockets back.

Solution!

alfonsojosegarcia's picture

this is the solution:
https://groups.drupal.org/node/390018

Good Luck!

South Africa

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week