All blog posts
Optimize LEDs on Freifunk routers

This is about the default configuration of the LEDs on router devices with the Freifunk / Gluon firmware (https://www.freifunk.net). For example, on my “TP-Link TL-WR841N/ND v9” the WAN and wifi LEDs are constantly blinking as there is constant traffic on the according devices.…

No more Compulsory Routers - Routerfreiheit bei NetCologne

tl;dr: this post is about the free choice of routers to be used on home broadband connections in Germany. Since August 1st, a new law enables customers to receive credentials for the DSL connections as well as for VoIP services in order to use end devices (i.…

Report generator for Logstash parse failures

Since quite some I’m using Logstash (actually the whole ELK stack) for collecting, enriching and storing log events from various servers and applications. While Logstash is great for this job, sometimes it cannot parse some log events because the events have an unknown formatting or my parsing rules don’t match well enough.…

Easily check SSL certificates on websites

Here is a simple script to quickly get an overview of the SSL certificates used on various websites, e.g. to check expiration or issuer. For me, this helped a lot while migrating website certificates to Let’s Encrypt.…

Windows binary for libgit2 0.22.2 (UPDATE: 0.23.2 available)

I recently needed a Windows binary of libgit2 to build some Geany code against the library. Since I could not find any reliable and trustworthy source for Windows builds of libgit2, I had to compile it myself.…

"Memory Slots" (or: how to save memory in Python)

I recently sort of locked my workstation while I tried to query a SOAP webservice at work about for 24000 entities. While my request was as simple as “list all entities you know” to the server, its response was heavy, obviously.…

Add CAcert root certificate to Firefox OS

While being quite happy with my new Firefox OS phone so far, the biggest stopper for me was that, like all Mozilla products, the root certificate of CAcert was not included and so I could not access sites using certificates assured by CAcert.…

Build GIT version of Xfce4

This is a little build script for Xfce4 to fetch and compile the sources from GIT (master). Short instructions: You should start with an empty directory, where you put this script.…

df -h + mount = di

There is a command line tool called di which basically combines the information of df and mount. I like this tool very much because it quickly prints lots of useful information about the existing filesystems on system and about their type, usage and mountpoint.…

Faking a browser with Mechanize

Some time ago I tried to get the current balance of my prepaid mobile phone plan in order to implement some kind of notification if it is lower than 10 Euro.…

Geany 1.22 is out!

If you didn’t notice it already, Geany 1.22 is out. As usual, Geany got new features, more and updated translations and of course several fixes. Read the release announcement on Geany’s website.…

Geany 1.23.1 has been released

A little heads up: Geany 1.23.1 has been released. This is a bugfix release to address two regressions in the previous 1.23 release. On Windows, after 1.23 it was no longer possible to open files from the command line because we added a change to change the working directory on Windows to the installation directory of Geany.…

Github ReadMe Preview

Have you ever wondered how your ReadMe you are just writing will show up on the GitHub website? I did, a couple of times actually. And it is just annoying to make a change, commit, reload the website, check, make another change, commit, ……

gpg-update-key

If you are using GnuPG, you may receive new signatures or do other changes to your GPG key and want to upload it to keyservers and/or your webserver to make it easier for other people to find it.…

Monitoring UBC failcounts with Zabbix: the efficient way

A couple of times I searched for an efficient way to monitor the UBC failcounts of OpenVZ containers on a hardware node with Zabbix. Most solutions I found on the net were about using items for each UBC and container and watch for changes in the failcounts.…

Presenting Xfce and Geany on conferences

Introduction I’d thought it might be useful to share some information and experiences about the “public relationship” work happening in Germany for the Xfce and Geany projects. In the last years (since about 2010), a few guys of the German Xfce community organized Xfce presentation booths at various Linux conferences (Froscon near Cologne, OpenRheinRuhr in Oberhausen, Chemnitzer Linux Tage in Chemnitz).…

Restore a SSH public key

I recently had the problem that I had on a system the private part of the SSH key but its public part got lost. Generating a new key pair wasn’t pBEGIN TRANSACTION;ossible as the public part was still installed on other systems foBEGIN TRANSACTION;r proper public key authentication and I could not change this.…

Show or hide the mouse cursor

hide_cursor.c is a small tool, to hide or show the mouse cursor on an X display. The source code is based on a tool from Nevrax (www.nevrax.com). To compile it, just type something like:…

Strange search results

While viewing the logs of geany.uvena.de, I noticed one of the logged search keyphrases was “die moldau friedrich smetana”. As this classical music composer and his most popular symphonic poem “The Moldau” is in no way related to Geany, it’s quite surprising that a very popular search engine lists geany.…

Yet another Zabbix template to monitor Memcache

Similar to my search for an efficient way to monitor UBC values on an OpenVZ hardware node, existing methods of monitoring a memcached server available on the net didn’t make me happy.…

Getting IPv6 in the IPv6 no-man's-land

While more and more ISPs and hosting providers start offering IPv6 subnets alongside with usual IPv4 addresses in dual-stack mode, there are still IPv4-only areas. Luckily, the ISP providing my internet link at home, offers native IPv6 since a few weeks in some kind of beta phase for interested users.…

Django, MySQL, Time zones and how to fix it

I just stumpled upon an error while customizing the Admin in a new Django project where I first used Django 1.6: Database returned an invalid value in QuerySet.dates(). Are time zone definitions and pytz installed?…