PostGIS on Gitlab-CI

It took me a while to figure out how to setup postgis on a gitlab-ci build, and could not find anything on the docs, so here is a brief explanation of what I did:

First of all, I used mdillon/postgis as a base image for the service, to avoid having to install postgis on the postgres:9.4 base image over and over.

Using custom docker images as services is explained on the Using Docker Images page of the official guide.

But in short, all I had to do is make a few following changes to .gitlab-ci.yml:

services ...

Python3 development with Emacs

I am currently working on a mix of Python2/Python3 projects, and as such, I need to find a way to customize a few things on a per-project basis. This post contains notes I'm going to take along the path.

Per-directory variables

Using .dir-locals.el, you can customize things on a per-directory basis. Changes will affect all files in the directory containing this file, and all its subdirectories.

Note: you can use the M-x add-dir-local-variable command to quickly setup dir-locals. You'll be prompted to provide all the required information.

Custom flake8 executable

Set the flycheck-python-flake8-executable variable to the ...

Make Skype use desktop theme on 64bit Linux

To make Skype use the same theme as other desktop applications (in my case, the same theme I'm using for Gtk apps), you'll need to install the 32bit version of the gtk theme engine you're using.

On debian jessie, I simply did:

apt-get install gtk2-engines:i386

Also make sure you have ia32-libs installed, but should already be in order to make Skype work..

Deploying an Elasticsearch cluster via SaltStack

Here is a short guide covering the steps I followed in order to deploy an ElasticSearch cluster using SaltStack to manage configuration.


For the purposes of testing, I will be using a bunch of locally-installed virtualmachines. Specifically, we'll have:

  • A machine running salt master
  • Three elasticsearch nodes

Creating the VMs

To create the machines, I just installed a bare-bones wheezy image (under KVM) and cloned it four times:

virt-clone -o TemplateWheezy -n es-cluster-salt-master -f /mnt/virtualmachines/es-cluster-salt-master.img -m '52:54:00:ee:55:f0'
for id in 01 02 03; do
    virt-clone -o TemplateWheezy -n es-cluster-node-"$id ...

Hanging out the laundry - the engineer way

The problem

I live in a small apartment with just a shared garden, and I usually hang out the laundry inside on a drying rack which tends to be way too small, especially for things like bed sheets.

The solution

The only option to lay out a proper clothesline was between the roof beams.. which involved a bit of engineering and knowledge of sailing knots.

This was the final result:

How to put the rope up there, without using a ladder (which I currently didn't have at hand)?

The first one was simple: just attach some weight (a lighter ...

« Page 2 / 7 »