DotDEB Page

From Proxmox VE
Jump to: navigation, search


Dotdeb is a repository containing packages to turn your Debian boxes into powerful, stable and up-to-date LAMP servers :

  • Nginx,
  • PHP 5.4 and 5.3,
  • useful PHP extensions : APC, imagick, Pinba, xcache, Xdebug, XHprof…
  • MySQL 5.5,
  • Percona toolkit,
  • Redis,
  • Zabbix,
  • Passenger…

Dotdeb supports :

  • Debian 6.0 Squeeze
  • both amd64 and i386 architectures

Packaging scripts are hosted on Github.

The packages from Dotdeb should work on Ubuntu, but no additional support is provided.

Using Dotdeb is very simple

  • Add these two lines to your /etc/apt/sources.list file (you can also choose a mirror near you) :
deb squeeze all
deb-src squeeze all
  • Optional: If you want to install PHP 5.4 on Debian 6.0 Squeeze, add these two lines too :
deb squeeze-php54 all
deb-src squeeze-php54 all
  • Then fetch the appropriate GnuPG key
cat dotdeb.gpg | sudo apt-key add -
  • Run apt-get update

You should now be able to use the Dotdeb packages with apt-get (or dselect, or aptitude as well…)

Using it in Debian Squeeze

In a VM created from a template made with Debian Appliance Builder, the php currently installed is v5.3.3-7 (Circa May 2012) without readline support for the cli.

On executing apt-get dist-upgrade we get the following version of php with readline support (Use CTRL-D to execute each line in PHP CLI):

# php -v
PHP 5.3.13-1~dotdeb.0 with Suhosin-Patch (cli) (built: May  8 2012 21:47:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

# php -a
Interactive shell

php > echo 5+8;
php > exit;


Compiling your own readline

php readline debian (Circa 24 May 2011)

It is a shame that Debian's PHP does not include the readline extension, for a licencing problem.

Fortunately, it is very easy to replace readline with libedit (tested on debian6 (squeeze)). Here is how:

aptitude install php5-dev libedit-dev

Now, get the source of php5:

apt-get source php5-cli
cd to the readline extension, then compile it:
cd php5-5.3.3/ext/readline phpize ./configure make

copy the compiled extension somewhere (I use /usr/local/lib/php5):

cp modules/ /usr/local/lib/php5/

now, we must tell php to load this extension:

echo extension=/usr/local/lib/php5/ > /etc/php5/conf.d/readline.ini

That's all. Now, everytime you invoke php, the readline extension will be available.

to be sure, execute:

php -m | grep readline

If you use apache2, you have to restart it:

/etc/init.d/apache2 restart