yahuxo’s blog

Using Mallard tools for generating a static website

April 23rd, 2013

After more than ten years I finally managed to update my personal homepage. I have searched a bit for some static website generator tool and finally selected Mallard together with mallard-site-tool. Installation was quite easy as most things (yelp-tools, yelp-xsl, itstool) were packaged for my distribution (Ubuntu), only mallard-site-tool needs to be installed from sources.

It took me some time to realize the difference between “Mallard” as a generic specification and the behavior of the actual implementation in Yelp tools. With the help of Shaun McCance I managed to get HTML pass-through working in mallard-site-tool by implementing Mallard’s support for external namespaces. This allows one to embed HTML elements within Mallard pages like in the following small example:

<page xmlns="http://projectmallard.org/1.0/"
   type="topic" id="external">
<title>External Namespaces</title>
   <html:input type="button" value="Hello" onclick="alert('Hello World!');"/>

For future reference the solution is to use some custom XSL during site generation by including it in “index.site”:

<?xml version="1.0"?>
<site xmlns="http://projectmallard.org/site/1.0/">
   <link type="site-root" href="."/>
   <link type="site-custom-xsl" href="custom.xsl"/>

The stylesheet file “custom.xsl” then contains the following template to pass-through HTML elements together with their attributes:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

<!-- pass-through of inline HTML -->
<xsl:template mode="mal2html.inline.mode" match="html:*">
  <xsl:element name="{local-name(.)}" namespace="{$html.namespace}">
      <xsl:for-each select="./@*">
         <xsl:attribute name="{name()}">
            <xsl:value-of select="."/>
    <xsl:apply-templates mode="mal2html.inline.mode"/>


The site looks quite nice now and editing Mallard pages is fun. So hopefully the next update will take less than ten years.

Wanted: software for flash audio recorder

January 14th, 2010

Last month I bought a Tascam DR-07 which is a nice flash-based digital audio recorder. With it I am able to record all the fun I have with my kids and friends (e.g. when playing Taboo). All audio material is recorded in PCM (WAV) format on the SD card of the device and can be transferred easily onto my GNU/Linux machine.

Unfortunately I have not found a good solution to manage the audio material that is generated yet. I have started to convert all files into FLAC format simply because no tagging tool seems to be available that supports metadata embedding into WAV files. Most media players support FLAC metadata but they are restricted to the Disc/Album/Track view. My output files do not fit to this scheme and my preferred view on the files would be more likely organized around Recording Date/Location/Persons information (similar to handling images from a digital camera).

So I am looking for a good approach to handle my audio files using free software. The software that comes closest is perhaps the Windows-only, closed-source tool Mp3tag as it allows convenient handling of custom tags. Does anybody know some similar tool for GNU/Linux? If you have an idea what software fits to my situation please leave a comment or send a mail to yahuxo(at)fsfe(dot)org.

Hello, my name is…

February 16th, 2007

Hello, my name is Tobias Rapp and I’m fellow #951.

I live in a small village near Stuttgart, Germany together with my wife Tabea. We both are active members of our local church and it’s youth group  "Jugendkreis Oppelsbohm". We like to watch movies, read books and to invite people to our house.

I started to use "Linux" when buying my first computer in 1997 mostly because it was so cheap and I didn’t have the money for a commercial OS. It didn’t take long to find out the freedom philosophy behind the software and that there is a "GNU" in front of the word "Linux". I learned programming by adapting some small programs to my needs (e.g. I’m a fan of the LIRC project) and finally started to study "technical software engineering" (thus I can read C code and the color code on resistors). Currently I’m working for NOA Audio Solutions which provides software and hardware for professional audio archiving.

Finally I became a member of FSF Europe these weeks. I did this for several reasons:

  • to get a nice OpenPGP card to protect my privacy
  • to have a voice that speaks against software patents in the EU (I know Georg Greve is quite busy around that), something that threatens my personal job
  • to support free software in general which is part of my christian responsibility for people that do not have the money to buy proprietary software

I see free software as something that frees people from restrictive software licenses and instead treats each person as someone who is able to participate.