Playing around with technology
Categories: Projects

sciolism 2019 for WordPress

sciolism 2019

As recently announced I created a WordPress version of the Hugo theme sciolism 2019. The theme recently passed the review process on and is now published in the theme repository. In addition you can also grab the theme on GitHub.

Categories: Projects

Kickstart 2021 with a little bit of WordPress action

The year 2021 is rather young and many people tend to have new year resolutions. My new year resolution is – just kidding – these usually don’t work out anyway.

Nevertheless, I’ve used the last days to ship an update of e.nigma 2015 which mainly focused on optimizing the code base and providing small fixes. In addition I’ve ported the recently introduced sciolism 2019 theme from Hugo to WordPress. The theme is currently waiting for a theme review so I guess it will take a couple of weeks before it is available in the WordPress theme repository. For the impatient there is of course the change to fetch the theme from GitHub.

Categories: Projects

Introducing sciolism 2019

sciolism 2019 header

Roughly a year ago I announced sciolism 2019. Yesterday I finally shipped the initial release of the theme. It look quite a long time to do the final tweaks and make a decision on when to ship the theme — maybe I should write about this process later because it was a very interesting journey.

sciolism 2019 is a light-weighted and minimalistic theme for the static site generator Hugo. The theme was designed for blogs. In fact this is the very theme that you are looking at right now. Further information is available in the theme’s Readme file. The theme is currently available via GitHub but I submitted the theme to the official Hugo Theme gallery, too. Let’s see when it will arrive there.

Categories: Technology

whoami with nginx

Out of the cookbook of services that you need from time to time there is another service which I decided to host myself: whoami. While “whoami” is a rather broadly used term with different meanings in this particular case it means: “what is my external IP address?”.

One way to find out is to use a service that returns your external IP address as a text string. Luckily this can be easily implemented in nginx. The configuration is rather simple:

server {
    listen          [::]:443 ssl http2;
    listen          443 ssl http2;
    server_name     whoami.mydomain.tld;
    default_type    text/plain;
    return          200 "$remote_addr\n";

    ssl_certificate […]/fullchain.pem;
    ssl_certificate_key […]/privkey.pem;

The most important lines are 5 and 6. These tell nginx to return1 a text string with the remote address (external IP) of the visitor. The \n after $remote_addr adds a end-of-line character to prevent issues with programs not recognizing the end of file otherwise. All other lines are commonly used nginx settings in order to use SSL, http2 etc. Further information on these commands is available from the nginx documentation.

So how do I get my IP address once everything is running? For instance you could use curl to get your IPv4 (using the -4 flag) or IPv6 (using the -6 flag) address:

curl -6 https://whoami.mydomain.tld

  1. We make use of the nginx return function which is shipped with the http_rewrite_module module. As long as you have not explicitly disabled building the module it should be available in your installation. ↩︎