Gratifying vanity with vanity keys

I found out about the Nostr social network a couple months ago. The network is based on public key cryptography. While browsing the feeds, I noticed some people had really nice public keys which contained their username in some form, like Snowden’s npub1sn0wdenkukak0d9dfczzeacvhkrgz92ak56egt7vdgzn8pv2wfqqhrjdv9. My key is still being generated, since my username is quite a mouthful. So I wondered if GPG keys can be generated like this too. And of course, they can.

Ditching the Gmail app

I like the Gmail app. I like its design, simplicity, its features (or lack thereof). I am a fan of KISS philosophy, so it’s all in line with my thinking. I like the iOS Mail app even more for this. But the EAS implementation in Gmail app on Android is full of bad surprises.

How I physically moved my server between locations without outage

This is a story about how I moved my server between locations 250 kilometers apart. The primary reason for making this move was to perform the initial backup to a new off-site storage location on a faster connection than what I have available at home. The second and better reason was, of course, curiosity. The server in this case is my Thinkpad T430. The setup This is what my setup looks like:

Finally on XMPP - via Matrix

I was hesitant to even set up an XMPP account since even Matrix is barely getting any traction. And I really don’t like unnecessary fragmentation. However, the software from XMPP ecosystem is way more lightweight than Matrix so my first steps were to set up Ejabberd and check out what it’s all about. I know it’s not the most lightweight of XMPP servers, but it seemed to have the most features and docker images available by upstream.

My (slightly unethical) RSS setup

I love RSS. I used it way before Fediverse even existed. I mention Fediverse because a lot of people call them out on trying to reinvent the wheel in this sense. Following an independent website is nothing new. Of course, like everyone, I try to make RSS even better and more comfortable to use and the core of my aproach is sending full articles to e-mail I know about the existence of self-hosted RSS readers like FreshRSS.

Self-hosted email absurdities - sending mail

Sending email is hard. Yes, that’s right. If you don’t own or control your whole IP subnet and have built-up reputation on it, you aren’t reaching anything other than the recipient’s spam folder.

Lock the screen automatically when it turns off on Windows

I hate how the lock screen works on Windows. This is perhaps an oversight and for me a security issue, so I’ll share some information on how to make it work better. This applies to pretty much all Windows versions in use today as far as I can tell. By default, when Windows turns off the screen, it won’t lock it. It makes no sense to me why this is the default behavior.

Show Always On Display while charging on Galaxy phones

It is easily possible to show the Always On Display on Galaxy phones while charging through such option in Settings, but then you lose the ability to show it when tapping the display. Here is a quick tutorial on how to make it show up both ways.

Thoughts on Chrome OS

After a long time of ignoring this platform and only ever having tried CloudReady (which this is based on), I tried to install ChromeOS on some of my older machines. While the older ones like Thinkpad X200 performed poorly as expected, newer machines performed well. I’ll elaborate on a few different points in which I see the value of this OS. Installation There aren’t many options to choose from and when installing this OS, you are going to wipe your existing OS.

My personal cloud server upgrades

About a year ago I decided to revamp my personal cloud. Main objectives were to make it more manageable and use as much pre-made software suites as possible instead of maintaining my own. This article is about what software I chose, which software it replaced as well as reasons why this was done. Oh and of course, I’ll start with hardware. Hardware and Performance Considerations old solution: Thinkpad X200 + ultrabase

Forza Horizon 5 performance hit on VFIO system

I am trying to document how much of an impact VFIO has on gaming performance. More benchmarks will come in the future, but for now, let’s look at Forza Horizon 5. I picked Forza Horizon 5 to do these tests as it is somewhat demanding and has a benchmark mode which displays somewhat interesting results. The graphics are all maxed out and both vsync and g-sync are off, in game and in any applicable place.

Moving many btrfs subvolumes to another disk

As I was migrating my whole system over to btrfs the other day, I came across my docker volume which was already btrfs and using subvolumes. This was of course intentional, however, I had no idea how to properly move those subvolumes to the new disk. Surprisingly, it was somewhat easy. Btrfs has send-receive functionality which you can use to move data between disks (even do stuff like incremental backups, replication and so on.

Recovering some lost information on the Internet

I will be adding more information as I learn more. This is a summary of the knowledge on the subject I have gained so far. Wayback machine This is an obvious go-to website where you can see historic versions of sites. It is run by Internet Archive non-profit digital library. Google cache You can see cached version of sites in Google search by clicking the little down-arrow next to the URL.

How to remove supervisor password on older Thinkpads

If you lock your 2008-2010-era Thinkpad with a supervisor password and forget it, there is not much you can do. Unplugging the battery won’t help (although I have heard that supervisor password on some models can be removed this way) and getting Lenovo to fix it for you can be time-consuming, especially compared to how easy to service and how well documented these machines are. This tutorial could work on other laptops, not only Thinkpads.

The smart and easy ACME client

After trying out different ACME clients, like dehydrated or getssl, I always came back to certbot. But now, I have finally switched to, which, as a simple shell script, is compatible with my KISS ideology. It is used by some big projects like FreeBSD and Proxmox, for their SSL needs. Lots of features Out of the box, you get support for over 70 DNS hooks (from cloud providers like Amazon to actual software like PowerDNS).

How to enable Chrome's dark mode on Android

Recently Google started rolling out this new feature to Windows users and apparently it is possible on Android as well. It has been in the Chrome for Android Beta for quite some time. You can follow this tutorial to guide you through the process. Prerequisites Make sure your Chrome browser is up-to-date (requires at least 74 or Beta 73) Make sure you are running a recent version of Android (tested on 6, which is pretty old)

Changing disk identifiers in ZFS zpool

With ZFS on Linux, it often happens that zpool is created using disk identifiers such as /dev/sda. While this is fine for most scenarios, the recommended practice is to use the more guaranteed disk identifiers such as the ones found in /dev/disk/by-id. This blog post describes 3 methods how to change the disk identifiers in such zpool after it has been created. All this without migrating data, adding disks or having physical access to the machine.

Voidlinux with encrypted root on Raspberry Pi

So I have decided to go Void Linux on all my machines. One of the advantages for me was the absence of systemd and the presence of musl libc, my admiration for which I shared in a recent blog post about Alpine Linux. I was trying to find a tutorial on how to make an encrypted root partition work with Raspberry Pi. I have a strong belief that all offline storage should be encrypted today.

Alpine Linux as a desktop operating system

Alpine Linux is an interesting Linux distribution meant for embedded devices. Its key ability is running on a diskless system. Unlike other embedded distributions, it remains very usable for desktop use. The recommended, standard edition, runs a hardened Linux kernel with grsec and PaX patchsets. This strengthens the security of an already secure operating system. I will explain why I chose Alpine as my daily driver and share my opinion on its package management, memory footprint and shortcomings.