A few years ago my fascination with hurdy gurdies went as far as ordering one. From there things only got worse. Delivery went well, but the climate around here (north of the Arctic circle, land-locked: no humidity to speak of) immediately got to the instrument causing a crack here, some warping there. A crack spanning nicely along the body of the instrument. It looks like the wood is very soft…
There’s a new thing going around in the blogosphere 1 : human.json . The idea is quite charming: set up such a file to declare that you are human who doesn’t use LLMs to write stuff an your website. Then link to other websites of which you know the owner to be a human who doesn’t use LLMs to write stuff on their website (in their terminology this is called “vouching”). This is…
If you are not humming “Roll the old chariot along” by now, you clearly have some internet-searching to do 1 . That being said, I decided to add a blog roll to this website so you might find other blogs with (arguably more) interesting stuff! To the blog roll! I recommend any version by David Coffin. ↩︎
As was pointed out in abundance, having open source depend entirely on centralised infrastructure (github comes to mind) is not great. While there are projects like forgejo , radicle , and of course gitlab, these are all way over the top for what I had in mind. I really only wanted to allow people to browse source code (or any other plain text folder, really) without having to clone a repo, or…
Running any type of computer these days without full disk encryption (FDE 1 ) is a bad idea; but I’m surprised just how that is implemented in many of the installation images of Linux. So, here’s what I do instead 2 . Table of contents Why change things that work? LVM-based layout Setup steps Partitions on disk Encryption Logical volumes Create file systems Boot configuration Boot loader…
Bruno Croci recently wrote about his fantasy book title generator and it reminded me that I had indeed done a similar thing in a generalized form, but never really documented or published it (mainly because it’s so small and quite silly). It’s nothing more than a script automating the process of selecting a random word each from tables 1, 2, and 3 (or more, or less) and putting them…
Let’s have a look at a few concepts first. If you already know about robots.txt and webservers delivering gzip ‘ed content, you can also just skip the first part . Compressed file delivery In websites it can be quite useful to compress big files (javascript frameworks come to mind, or very big CSS or SVG files) and have them sent to the client in compressed form, but telling the…
In a previous article I looked at the templating method for reMarkable tablets that was newly introduced with software version 3.17. Apparently I had missed one of the very interesting components: repeating groups! Suppose you want to have your own lined paper template with a certain line height. Your my_lines.template file could look something like this: { "name" : "My Lines" , "author" : "me" ,…
When I first encountered a Linux 1 , I was surprised how an operating system, let alone the software coming along, could be free of charge 2 . It was wild and exciting! Until then I had seen software only being sold in shops (Windows, file managers, anti virus software, in big cardboard boxes with flashy pictures and a floppy disk or CD tumbling about inside) or handed around surreptitiously on…
This is an article describing what my keyboard layout looks like and why. If you have not been drawn into the rabbit hole that is keyboards and keyboard layouts, I recommend you leave now. You have been warned. Table of contents The layout The hardware The Layers Letters Characters The Numpad Navigation and Control Keys International Characters Typographical Niceties Unintended Consequences and…
Apparently Microsoft, famously changing their stance from “Linux is a cancer” 1 , to actually running a Linux subsystem in Windows (weirdly abbreviated as WSL) yesterday, at the time of writing, now released WSL under the MIT license (to the surprise of pretty much everyone), leaving open-source advocates open-mouthed in surprise while Microsoft enjoyers celebrate. In Microsoft’s…
The good thing about infrastructure, that deserves that name, like streets, bridges, and pipes in the ground, is, that it remains usable even when the supplier goes away. The satellites in low earth orbit (550 km, more or less) are supposed to have an expected life-time of five years before they deorbit and turn into very expensive, very fine mostly-metal dust in the atmosphere. Would you accept a…
We received a small stack of old laptops in our hackerspace, to do with them as we see fit. One of these was a Dell Chromebook from around 2015. After successfully setting the device into developer mode and getting a proper Coreboot running on it, we could boot from an external USB stick with a live Linux and at least confirm that this part was going to work reasonably fine. The word…
With the release of the reMarkable Paper Pro (rmPP) and at least software version 3.17 on the reMarkable2 (rm2), there is a new way to define page templates in town: Methods . Previous templates were .svg vector graphics in the /usr/share/remarkable/templates folder, each file registered in the index of at /usr/share/remarkable/templates/templates.json . Creating your own templates was very easy,…
Every now and then there are screenshots with text scrolling by on the social medias and it might be convenient to copy the text out. So, here is a tiny script that does just that. It works on wayland if you have slurp , grim , wl-copy , and tesseract installed: snapocr.sh . The details are really rather boring: slurp is used to select the area of the screen, grim takes the screenshot, tesseract…
A while back I got my hands on a reMarkable 2 and I guess I might as well write about how I use it. For those not in the know, the reMarkable 2 (rm2, in short) is a tablet pretending to be a notebook replacement. It has a black/white (some greyscale) e-ink screen and is about the size of an A4 paper block, but not quite a thick. Table of contents Overview The Good The Bad Why not the one with…
Hugo appears to be where all the cool kids are going these days; so I decided to move the website over to that, too. Well, there are other reasons, too, like trying to learn about hugo for work and non-work related use-cases. So here we are. I hope this did not break your RSS feed, dear reader. If it did: I’m very sorry.
Most desktop environments will not easily accept that users prefer a commandline program for their email. The result is that clicking on email addresses in a browser leads to awkward questions, or worse other default actions. To make sure that my desktop environment understands that NeoMutt 1 is perfectly capable to serve as my standard MUA , first I had to introduce it to my desktop environment…
This is a bit of a rant. You have been warned. LLM and AI training requires enormous amounts of information. Yes, we’ve reached the stage where machines roam the world of knowledge and gobble up anything that comes from human brains (or anything that looks like it comes from human brains, anyway). This relentless scraping is at best annoying, and at worst can take smaller websites off the…
The Steam Deck has in essence an ArchLinux on a read-only btrfs. This poses a few complications when attempting to set up an always-on VPN connection through, for example, Tailscale. But why even do that? Having the Steam Deck on a VPN would allow you to play games “on the local network” with everyone else on the same VPN—no matter where on the world they actually are. It’s neat™.…
Every now and then open source projects are not on any of the popular platforms, but you’d still like to participate by contributing code, report bugs, or ask for new features. Here’s how you can contribute to the code base of projects that are living over at vonshednob.cc . Get the source code Signed Releases All releases on vonshednob are signed with the releases OpenPGP key. You can…
Sometimes it’s quite nice to be able to see where time went. However, so do so in a plain text format. Luckily for general (usually financial) accounting, there are projects like beancount (there’s also ledger but I prefer the former). Turns out time can be considered a commodity, like money, so keeping track of where time went is quite easy (and readable) with beancount: ;; -*- mode: beancount…
HTML in emails is a bit of a curse. And yet, some people have set their email program to not use monospace fonts to display emails which makes sending tables inside of an email a bit of a problem 1 . Luckily there is such a thing as multipart/alternative that allows you to write emails in plain text and attach another HTML file as the alternative for those with questionably configured MUAs. To…
This article describes how to select attachments in mutt and neomutt through the command line file manager ranger . Selecting files to attach to my emails in (neo)mutt is not quite as convenient as it could be. Especially since I’m quite pampered using ranger for my usual file management needs in the command line. As it turns out, combining the two is much easier than anticipated. First…
Usually a person has multiple email addresses and when receiving email on one of them, it’s a good idea to have the email program automatically use that address as the sender when replying. Thanks to (neo)mutt’s scripting and hooks it is fairly easy to have a similar behaviour. Each identity is stored in its own file in the ~/.config/neomutt/profiles.d/ folder, so it is sufficient to source that…
For sending emails you could set up (neo)mutt to do the sending on its own. However, since we have multiple identities we would have to switch between various sending configurations depending on the From address. Luckily there’s msmtp to do that for us: you use it just like a normal smtp client. But when it comes to sending it will look at the From and determine what mail server to send the mail…
I like unicode. Emojis? Well. I guess they are not going away any time soon. As it happens they do not work great in the command line unless you have a font that includes all of them, or at least most. My font does not, so here is my filter setup to deal with people that write emails that include emojis. This tells (neo)mutt to refer to the mailcap file when displaying the text/plain part of an…
For displaying email (neo)mutt uses the built-in pager (unless you configure an external pager through the pager setting) which is actually quite good, because it allows you to quickly access the attachments directly, or on the spot reply to the email. There is a status line for the pager which can be reconfigured to display only the relevant information, like the sender, subject, and number of…
By default (neo)mutt will list emails rather bluntly like this: This is what the default view of an inbox looks like. There is some quick help on top, the emails are sorted by date, the most recent at the bottom. You can see the date, sender, size, and subject of each mail. Yes, it’s all spam. The first step is to change the sorting to go by date of arrival and have the most recent mail at the…
In order to tell (neo)mutt where to find your local emails, as obtained earlier , let’s first revisit the directory structure. All the mail is in ~/Mail , but in three folders: ~/Mail/local – the local archive, mails that do not need to be on any IMAP server anymore but are too precious to delete ~/Mail/example.org – the synchronised copy of the private email ~/Mail/bigcompany.com – the…
This is the second article in a series on how to configure (neo)mutt. Now that the mail is synchronised and stored on the local machine, it’s time to read it. I’m using neomutt , but most of the configuration options that are shown here should be compatible with good old mutt , if you prefer that 1 . (neo)mutt uses several different screens (or as they call them: menus) for the different actions…
In order to run mutt independently from my mail provider I keep my mail synchronised between my machine and the server(s). This is a somewhat different approach from both IMAP and POP3, because I neither have to decide to keep my mail exclusively offline (the POP3 approach) nor do I have to keep it on the server (the IMAP approach). Instead there’s a full copy of all mails on the server and on my…
As a start why not actually have a look at this website? As you’ve seen it just consists of a bunch of HTML files. Of course I did not write each and every one by hand. Instead I’m using a Static Site Generator . That means, I write the content reStructuredText and a program generates the HTML files. So it’s almost like WordPress. The only difference is that I don’t have…
On this website I’m mainly going to present my email setup which took me a few years to get to the current state. I plan to collect and present all the hints, scraps and bits of information that I had to search for in the various corners of the internet. Just in case anyone else wants to have a similar setup—or I somehow lose and forget mine. Now, what does this setup look like? In its essence…