Thoughts about tech, politics, and more
(Tag: tools)

Seafile Mirror - Simple automatic backup of your Seafile libraries

I have been using Seafile for years to host and synchronise files on my own server. It’s fast and reliable, especially when dealing with a large number and size of files. But making reliable backups of all its files isn’t so trivial. This is because the files are stored in a layout similar to bare Git repositories, and Seafile’s headless tool, seafile-cli, is… suboptimal. So I created what started out as a wrapper for it and ended up as a full-blown tool for automatically synchronising your libraries to a backup location: Seafile Mirror.

Docker2Caddy - An automatic Reverse Proxy for Docker containers

So you have a number of Docker containers running web services which you would like to expose to the outside? Well, you probably will at least have considered a reverse proxy already. Doing this manually for one, two or even five containers may be feasible, but everything above that will be a PITA for sure. At the FSFE we ran into the same issue with our own distributed container infrastructure at and crafted a neat solution that I would like to present to you in the next few minutes.

The power of git-sed

In the recent weeks and months, the FSFE Web Team has been doing some heavy work on the FSFE website. We moved and replaced thousands of files and their respective links to improve the structure of a historically grown website (19+ years, 23243 files, almost 39k commits). But how to do that most efficiently in a version controlled system like Git? In our scenarios, the steps executed often looked like the following:

I love astroid! #ilovefs

You cannot imagine how long I’ve waited to write this blog post. Normally I’m not the bragging kind of guy but for this year’s edition of my „I love Free Software“ declaration articles (after 2014, 2015 and 2016) I just want to shout out to the world: I have the world’s best mail client: astroid! Hugo and me declaring our love to astroid Hugo and me declaring our love to astroid Update February 2018: Meanwhile I have published my mail config incl.

Build FSFE websites locally

Note: This guide is also available in FSFE’s wiki now, and it will be the only version maintained. So please head over to the wiki if you’re planning to follow this guide. Those who create, edit, and translate FSFE websites already know that the source files are XHTML files which are build with a XSLT processor, including a lot of custom stuff. One of the huge advantages from that is that we don’t have to rely on dynamic website processors and databases, on the other hand there are a few drawbacks as well: websites need a few minutes to be generated by the central build system, and it’s quite easy to mess up with the XML syntax.

Switching my code from gitweb to Gogs

Since end of 2014 I published some of my Free Software code – mostly Bash, R and HTML/PHP – on a self-hosted gitweb instance. I did this because I wanted to share the work I’ve done with other people because I’ve learnt a lot by reading other people’s code. Although I’m just a „hobby programmer“, I hoped at least some people can benefit from it. The last few days, I switched from gitweb, a very simple web interface for my git repositories, to Gogs, a feature-rich webservice which still is lightweight, and quite simple to install and maintain – and of course Free Software!

splitDL – Downloading huge files from slow and unstable internet connections

Imagine you want install GNU/Linux but your bandwidth won’t let you… tl;dr: I wrote a rather small Bash script which splits huge files into several smaller ones and downloads them. To ensure the integrity, every small files is being checked for its hashsum and file size. That’s the problem I was facing in the past days. In the school I’m working at (Moshi Institute of Technology, MIT) I set up a GNU/Linux server to provide services like file sharing, website design (on local servers to avoid the slow internet) and central backups.

I love Taskwarrior, therefore I love Free Software

“It’s Valentine’s day and you’re writing a blog post? Are you nuts?” you might ask. Well, but it’s not only Valentine’s day but also I love Free Software day. This day is proclaimed every year on February 14 by the Free Software Foundation Europe to thank all developers and contributors of Free Software (software you can use for any purpose, which source code you or others can analyze, which can be modified and distributed).

Sharing is caring – my Git instance

Some days ago I noticed another time that I have far too little knowledge about Git. „Time to change that!“, I thought and set up my own Git instance and also installed gitweb for better usability. Upside 1: I can keep track of the many (mainly bash) scripts I wrote in the past and all the changes I will adopt in the future. Upside 2: You can hopefully benefit from using and reading my code.

Setting Openstreetmap as default in Thunderbird’s contacts

If you use Thunderbird and its contact functionality, you might already have stumbled over the „show on map“ feature. If you add addresses to your contacts (no matter if directly in Thunderbird or via CalDAV) there appears a button which enabled you to open a map with the contact’s location. The default search provider is Google Maps. If you don’t like this service and prefer free and open systems like me, you can also add openstreetmap.