• I love astroid! #ilovefs

    Hugo and me declaring our love to astroid

    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!

    Okay, maybe I’ll add two or three words to explain why I am so grateful to the authors of this awesome Free Software application. Firstly, I should note that until ~6 months ago I have used Thunderbird – extended with lots of add-ons but still a mail user agent that most of you will know. But with each new email and project it became obvious to me that I have to find a way to organise my tenthousands of mails in a better way: not folder-based but tag-based, but not to the expense of overview and comfort.

    Thanks to Hugo I became aware of astroid, an application that unites my needs and is open to multiple workflows. Let’s read how astroid describes itself:

    Astroid is a lightweight and fast Mail User Agent that provides a graphical interface to searching, display and composing email, organized in thread and tags. Astroid uses the notmuch backend for blazingly fast searches through tons of email. Astroid searches, displays and composes emails – and rely on other programs for fetching, syncing and sending email.

    My currently unread and tagged emails

    Astroid is roughly 3 years old, is based on sup, and is mainly developed by Gaute Hope, an awesome programmer who encourages people – also non-programmers like me – to engage in the small and friendly community.

    Why is astroid so cool?

    That’s one secret of astroid: it doesn’t try to catch up to programs that do certain jobs very well already. So astroid relies on external POP/IMAP fetching (e.g. offlineimap), SMTP server (e.g. msmtp), email indexing (notmuch), and mail editors (e.g. vim, emacs). This way, astroid can concentrate on offering a unique interface that unites many strenghts:

    Saved searches on the left, a new editor window on the right

    • astroid encourages you to use tabs. Email threads open in a new tab, a newly composed message is a separate tab, as well as a search query. You won’t loose any information when you write an email while researching in your archive while keeping an eye on incoming unread mails. If your tab bar becomes too long, just open another astroid instance.
    • It can be used by either keyboard or mouse. Beginners value to have a similar experience as with mouse-based mail agents like Thunderbird, experts hunt through their mails with the configurable keyboard shortcuts.
    • Tagging of emails is blazingly fast and efficient. You can either tag single mails or whole email threads with certain keywords that you can freely choose. Astroid doesn’t impose a certain tagging scheme on its users.
    • astroid already included the possibility to read HTML or GPG-exncrypted emails. No need to create a demotivatingly huge configuration file like with mutt.
    • Theming your personal astoid is easy. The templates can be configured using HTML and CSS syntax.
    • It is expandable by Python and lua plugins.
    • It’s incredibly fast! Thunderbird or Evolution users will never have to bother with 20+ seconds startup time anymore. Efficiency hooray!

      On startup, I see my saved search queries

    Because it is open to any workflow, you can also easily use astroid with rather uncommon workflows. I, personally, use a mix of folder- and tag-based sorting. My mail server automatically moves incoming mails to certain folders (mostly based on mailing lists) which is important to me because I often use my mobile phone that doesn’t include a tagging-based email client, too. But with my laptop I can add additional tags or tag unsorted mails. Based on these tags, I again sort these mails to certain folders to reduce the amount of mails lying around in my unsorted inbox. Such a strange setup would have been impossible with many other email agents but with astroid (almost) everything is possible.

    Did I convince you? Well, certainly not. Switching one’s email client is a huge step because for most people it involves changing the way how most of theor digital communication happens. But hopefully I convinced you to have a look at astroid and think about whether this awesome client may fulfill some of your demands better than your existing one. If you already use notmuch, a local SMTP server, offlineimap, procmail or other required parts, testing astroid will be very easy for you. And if your way to using astroid will be longer, as mine was, feel free to ask me or the helpful community.

    PS: FSFE activists in Berlin carried out two awesome activities for ILoveFS!

  • 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. Now if an editor wants to create or edit a page, she needs to wait a few minutes until the build system has finished everytime she wants to test how the website looks like. So in this guide I will show how to build single websites on your own computer in a fraction of the FSFE’s system build time, so you’ll only need to commit your changes as soon as the file looks as you want it. All you need is a bit hard disk space and around one hour time to set up everything.

    The whole idea is based on what FSFE’s webmaster Paul Hänsch has coded and written. On his blog he explains the new build script. He explains how to build files locally, too. However, this guide aims to make it a bit easier and more verbose.

    Before we’re getting started, let me shortly explain the concept of what we’ll be doing. Basically, we’ll have three directories: trunk, status, and fsfe.org. Most likely you already have trunk, it’s a clone of the FSFE’s main SVN repository, and the source of all operations. All those files in there have to be compiled to generate the final HTML files we can browse. The location of these finished files will be fsfe.org. status, the third directory, contains error messages and temporary files.

    After we (1) created these directories, partly by downloading a repository with some useful scripts and configuration files, we’ll (2) build the whole FSFE website on our own computer. In the next step, we’ll (3) set up a local webserver so you can actually browse these files. And lastly we’ll (4) set up a small script which you can use to quickly build single XHTML files. Last but not least I’ll give some real-world examples. [ » Read More…]

  • OpenRheinRuhr 2016 – A report of iron and freedom


    Our Dutch iron fighters

    Last weekend, I visited Oberhausen to participate in OpenRheinRuhr, a well-known Free Software event in north-western Germany. Over two days I was part of FSFE’s booth team, gave a talk, and enjoyed talking to tons of like-minded people about politics, technology and other stuff. In the next few minutes you will learn what coat hangers have to do with flat irons and which hotel you shouldn’t book if you plan to visit Oberhausen.

    On Friday, Matthias, Erik, and I arrived at the event location which normally is a museum collecting memories of heavy industries in the Ruhr area: old machines, the history and background of industry workers, and pictures of people fighting for their rights. Because we arrived a bit too early we helped the (fantastic!) orga team with some remaining work in the exhibition hall before setting up FSFE’s booth. While doing so, we already sold the first tshirt and baby romper (is this a new record?) and had nice talks. Afterwards we enjoyed a free evening and prepared for the next busy day.

    But Matthias and I faced a bad suprised: our hotel rooms were build for midgets and lacked a few basic features. For example, Matthias‘ room had no heating, and in my bathroom someone has stolen the shelf. At least I’ve been given a bedside lamp – except the little fact that the architect forgot to install a socket nearby. Another (semi-)funny bug were the emergency exits in front of our doors: by escaping from dangers inside the hotel, taking these exits won’t rescue you but instead increase the probability of dying from severe bone fractures. So if you ever need a hotel in Oberhausen, try to avoid City Lounge Hotel by any means. Pictures at the end of this article. [ » Read More…]

  • Switching my code from gitweb to Gogs

    gogs-logoSince 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! By doing so, people can now register with my Gogs instance, open issue tickets, fork my projects and send pull requests – very similar to non/semi-free services like GitHub or GitLab.


    As a user of the German hosting service Uberspace I had to follow some special ways to install Gogs. But thanks to a nice guide it was quite simple, so it was finished after only 15 minutes. The only tricky part was the SSH feature with which I spent a few hours to make it work. The problem was that using the same public key with Gogs as you’re using for logging into the server’s SSH won’t work. You’ll have to generate a new SSH key and use it’s public key for Gogs. Then you have to edit your client’s SSH config: [ » Read More…]

  • I love Free Software (Apps)

    Yoda-ilovefsDo you know being in a restaurant and getting a menu which is longer than the average novel, and you cannot decide for a single meal because every single one sounds more delicious than the other? That’s similar to the problem I was having when writing this blog post…

    Today is the „I love Free Software“ day, on which people all over the world say „thank you“ to contributors of Free Software, often created in free time and with lots of passion. This is software you can use for any purpose, which source code you or others can analyse, which can be modified and distributed – any program respecting these essential freedoms benefits a fair society, and our most personal privacy and security in return.

    After I thanked ZNC and Taskwarrior last Valentine’s Days, this year I want to focus on software running on the device that’s almost always in my pocket. My mobile phone is the gatekeeper of most of my communication: short messages, pictures, emails, social media, todo lists, calendar… it’s amazing thinking about what this tiny computer has to achieve to satisfy my needs. But of course, I also want to use as much Free Software as possible to secure my sensitive data. And because of that I cannot name a single software but have to list a few which I depend on almost every single day, and I want to sincerely thank the people contributing to them! [ » Read More…]

  • German Government wants authorities to advertise PDFreaders

    pdfreaders-logoShould authorities be allowed to make advertisement for only one company and ignore all the others? Many people strongly disagree, among them myself, the Free Software Foundation Europe (FSFE) and also the CIO of the Federal Republic of Germany, the IT commissioner of the German Government.

    The whole story began with something we all had to read sometimes, at least subconsciously, on a website providing PDF documents: „To open the PDF files please download Adobe Acrobat Reader.“. Such notices are unnecessary advertisement for a proprietary (non-free) product — there are dozens of software applications which can do the same or even more, many of them Free Software. Because of that the FSFE started a campaign called „PDFreaders“ to make this deficiency public, and contact administrations and companies with thousands of letters and emails.

    One big success of this campaign in Germany is PDFreaders being mentioned in the official current Migration Guide of Germany’s Chief Information Officer. This document explains some critical points of IT in administrations and companies and evaluates different software. Under point 4.3.7 „PDF readers and authoring“ the guide compares different PDF applications and also takes Free Software readers like Evince into account: [ » Read More…]

  • 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. The ongoing plan is the setup of 5-10 (and later more) new computers with a GNU/Linux OS in contrast to the ancient and non-free WindowsXP installations – project „Linux Classroom“ is officially born.

    But to install an operating system on a computer you need an installation medium. In the school a lot of (dubious) WindowsXP installation CD-ROMs are flying around but no current GNU/Linux. In the first world you would just download an .iso file and ~10 minutes later you could start installing it on your computer.

    But not here in Tanzania. With download rates of average 10kb/s it needs a hell of a time to download only one image file (not to mention the costs for the internet usage, ~1-3$ per 1GB). And that’s not all: Periodical power cuts cancel ongoing downloads abruptly. Of course you can restart a download but the large file may be already damaged and you loose even more time.

    My solution – splitDL

    To circumvent this drawback I coded a rather small Bash program called splitDL. With this helper script, one is able to split a huge file into smaller pieces. If during the download the power cuts off and damages the file, one just has to re-download this single small file instead of the huge complete file. To detect whether a small file is unharmed the script creates hashsums of the original huge and the several small files. The script also supports continuation of the download thanks to the great default built-in application wget. [ » Read More…]

  • Technology and Free Software in Tanzania

    mit-2After two months in Tanzania and in the computer education centre I work every day I learnt a lot about the culture of the locals in terms of their viewpoint on information technology. And in the same way I had to accept that my initial mental image of the people’s behaviour was (at least in parts) very wrong. So in this article I try to explain how I see the situation of modern technologies and the usage and understanding of Free Software in the region of Tanzania where I live.

    Free Software guarantees the full rights to use, study, share and improve it (but is not necessarily free of gratis). This sounds like something only interesting for IT specialists and nerds. But given the importance of software in our lifes one has to reconsider: Software controls our mobile phones, cars, air planes, heating systems, power plants, bank accounts and medical equipment. The one who controls this software is also the one who controls most parts of our lifes. Questions like „Does all my data belong to someone else?“, „Is my data safe?“ and „Who knows how much about me?“ can only be answered when we start thinking about Free Software. By some people Free Software is also called Open Source. More about Free Software.

    Let’s start with a list of what I thought and what’s in fact the reality:

    Misconception I

    Before I went to Tanzania it was quite clear to me that people here value Free Software quite much. This is because a lot of Free Software is also free of cost. Why should people use Windows, Adobe Photoshop and Microsoft Office when there’s also GNU/Linux, GIMP and LibreOffice/OpenOffice?

    Reality I

    „Free Software? What is this and can I eat it?“ It’s not that drastical though but the core message remains the same: The broad average population doesn’t know about Free Software and Open Source or even the applications I listed. When I gave a small workshop about GNU/Linux, noone of my students knew about it. But as we installed replacements of popular non-free software like LibreOffice, GIMP or VLC the questions marks in my students‘ heads became almost visible. Although they liked the idea of the whole world working on this software and that it’s for free, they asked me afterwards „…and how can we install Microsoft Frontpage?“. This is the perfect time for misconception 2. [ » Read More…]

  • In The End Freedom Is What Matters

    Yesterday I’ve been asked by a good friend of mine why I am investing so much time in the FSFE (Free Software¹ Foundation Europe) instead of putting more energy in other organisations with more focus on privacy issues. The background of his question is that I’m quite concerned about governmental and commercial surveillance and the lack of really private ways to communicate with each other and the impact this has on our online and offline behaviour. With Laura Poitras‘ recent movie „Citizenfour“ awarded with an Oscar, I use the media attention as an icebreaker to talk with my friends about these topics if the situation allows it.

    Back to question which can also be read as „Why are you investing your time in Free Software instead of privacy which seems to touch you more?“. To be honest I had to think about this a bit. But then I remembered Jacob Appelbaum saying[…] what people used to call liberty and freedom we now call privacy„. And I think that’s the reason why I stick with putting my energy as activist in FSFE rather than in other (very good!) organisations: Because I think that freedom is the foundation of everything we call privacy today and in the future. I’ll explain that in the following paragraphs. [ » Read More…]

  • I love Taskwarrior, therefore I love Free Software

    ilovefs-heart-pxIt’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).

    As last year with ZNC, I want to say thank you to a specific project which easies my daily life. As you might know by other blog posts here, organisation of tasks, mails and almost everything else is a very important issue for me. So this year I want to write some lines about Taskwarrior, taskd and Mirakel which enable me to take some free time without thinking of task which I could possibly forget to accomplish later on.

    My head is full of ideas and mental To-Do lists and so I’m in need of a handy tool which allows me to write down and organise items at any place and time: At my desk, in bus or train, when I’m offline or abroad. And its important that I don’t have (analog and digital) bits of paper everywhere, so I need a system that syncs all task inputs and outputs. I tried a lot of tools but Taskwarrior was the best so far. It used the well-known „Getting Things Done“ concept with different priorities. Taskwarrior also supports tagging tasks, organising them in projects, due dates, postponing, making tasks dependend on others and much more. And Taskwarrior has a (modifyable) algorhythm that sorts your tasks by urgency levels, so that the most important tasks always are on the top of the list. Even now I just took a glance at what Taskwarrior is able to do!

    Picture of a woman with a chalk board which expresses her apreciation for Taskwarrior

    Someone who loves Taskwarrior as much as I do

    Services and programs that organise tasks aren’t very special!“ one might think. But if you prefer sorting tasks digitally, you cannot simply chose a random todo-organising service provider. Most of the tools and services on the market aren’t free and transparent. All input may no longer belong to you, all the gathered information (which is a lot if you think of it!) could be used for targeted ads or worse. You cannot modify the algorhythm to suit your needs. And what happens if the service provider goes bankrupt? All data, all project history and all pending tasks would be lost at once. So using a free (as in freedom), decentralised, maybe self-hosted service is the best idea to organise your tasks decentrally. [ » Read More…]