Wednesday, August 19, 2015

Blank DELL on DisplayPort

I've been struggling since ever with my DELL U3014 on the DisplayPort saying there's no signal after a power cycle of the monitor.

I just found a solution to bring the monitor back to life without rebooting the box; just ssh into and issue:

$ DISPLAY=:0 xset dpms force off
$ DISPLAY=:0 xset dpms force on

I'm running Gnome3 on Arch Linux, so YMMV.

Tuesday, August 11, 2015

Testing PHP extensions on Travis-CI

Testing PECL extensions on Travis-CI has always been cumbersome for me; build PHP in different versions and debug/threadsafe flavors, install PECL dependencies and so on, which usually results in a mess of command line scripts, repeated for every extension.

Enter travis-pecl.

This tiny support bin comes with a Makefile and small PHP scripts to generate the build matrix and check your package.xml file. It supports building PHP in a wide variety of flavors, installing PECL dependencies from the PECL website or from bundled pharext packages and running the testsuite with a comprehensive set of commands.

Let's look at a few commands with a properly set up environment from the test matrix:

 - PHP=5.6 enable_debug=yes with_iconv=yes enable_json=yes

Build PHP:

make -f travis/pecl/Makefile php

Install a PECL dependency:

make -f travis/pecl/Makefile pecl PECL=propro

Install a PECL dependency from a pharext package, located in travis/:

make -f travis/pecl/Makefile pharext/raphf-phpng

Build the currently checked out extension;

make -f travis/pecl/Makefile ext PECL=http

Run the testsuite:

make -f travis/pecl/Makefile test

Finally, check out the README and have a look at a couple of complete examples here: