In my previous post I
covered how Zola validates internal links and anchors at build time. As I'm
considering migrating my blog to Astro, I needed to solve the same problem:
how do I ensure that fragment links (anchors) actually point to existing
headings? Here's how I set up fra…
In my previous post I described
my setup with WPA3 on the 5GHz band and WPA2 with MAC filtering on the
2.4GHz band. The idea was sound: modern devices get modern security, legacy
devices get extra protection through access control lists. Reality,
however, had other plans.
The WPA…
While migrating my blog from Zola to Astro, I ran into an issue with
RouterOS syntax highlighting. Astro uses Shiki for code highlighting, and
Shiki doesn't include RouterOS out of the box. Here's how I solved it.
The problem#
When building the Astro site, I saw warnings like:
[…
After running brew upgrade on my Mac M3, OfflineIMAP suddenly stopped
working with this error:
OfflineIMAP 8.0.1
Licensed under the GNU GPL v2 or any later version (with an OpenSSL exception)
imaplib2 v3.06, Python v3.14.0, OpenSSL 3.6.0 1 Oct 2025
Account sync Peter:
*** Proc…
I have already write an update post about
bitwarden backup.
After running smoothly for months, my automated Bitwarden backup GitHub
Action suddenly started failing. The error message was cryptic:
Error [ERR_REQUIRE_ESM]: require() of ES Module /Users/peterbabic/backups/bitwarden/…
If you're using yazi as your terminal
file manager and coming from vim/neovim, you've probably tried to quit with
:q out of habit, only to be greeted with:
q: command not found
This happens because yazi's : key opens a shell command prompt, not a
vim-style command mode. So :q li…
I have already write a post about
bitwarden backup, about
this very topic. At first, I thought to just update it as I did with
cloudflare backup and later
with
faktury-online backup.
After a bit of changes to that post I have found out that I have made so
much changes to the whol…