Category Archives: Development

Setting up IRC the weird way

I’m not going into why you should use IRC here as that’s a full blog-post in it’s own. Just so much: When you’re doing OSS development then there is almost no ways around IRC.

But IRC in itself has had some major drawbacks for myself:

  • I couldn’t log into IRC from different devices under one name
  • conversations that took place when I wasn’t logged in where lost to me
  • I didn’t get notified of mentiones when I wasn’t logged in.

Continue reading Setting up IRC the weird way

Scoping PHAR-files

PHAR-files are a great way to bundle code that can then be used like a binary. Therefore PHAR-files are often used for tools that can be included in a CI/CD setup. As they are self-contained archives they use their own autoloading mechanism and therefore don’t depend on your code. Which is great if you want to use them as build-tools because the tools dependencies don’t interfere with your project dependencies.

Imagine you’d want to use a build tool that requires PHP 7.2 with your legacy code that still needs to run with PHP 5.6… Most probably your composer require --dev awesome/build-tool would not work because of a dependency mismatch. Even though you might be on PHP 7.2 at the moment. Using the PHAR-file removes that dependency as all the required files are contained within the archive. And the PHARs autoloader takes care of getting the right files.

Continue reading Scoping PHAR-files

Encrypt a build-result – automaticaly

So in my last blogpost I showed how to automatically create a PHAR-file using Travis-CI. It didn’t take long for a challenge to show up: Digitally sign the resulting PHAR-file.

I already did some work with encrypting and decrypting stuff for an individual automated deployment to a server a few months back. So signing stuff shouldn’t be that complicated I thought. Therefore: Challenge accepted!