-
This was the first year I participated in Advent of Code. In case you're not familiar with it, AoC is a Christmas themed programming competition consisting of 25 challenges published daily (from December 1st to December 25th). The web site produces personalized puzzle inputs for each user and expects only … -
Negotiating down to 100Mbit between two 1Gbit devices
Connecting two gigabit-capable devices via 4-wire UTP cable is an abomination, but sometimes we have to live with it (e.g. when a greedy ISP decides to save a few cents and pulls a cheap cable to your apartment). The fun starts when the devices try to negotiate Ethernet connection … -
"No user exists for uid" when pushing to git repo
Today I tried to automate pushing to a Git repository from a Docker container. And like many others I failed with an error: $ git push No user exists for uid 2918 fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository … -
Pip-installable Pelican themes
Installing Pelican themes the default way is not very pleasant: You need to invoke a separate CLI tool You may need to create some symlinks and ensure that they don't go stale the next time you use Pelican Some people (me) have resorted to git submodules instead of official CLI … -
Unexpected workaround for Libvirt VMs with cgroups v2 in Cirrus CI
Today I wrote a commit message that was several screens long. I think it deserves to be a blog post of its own Update: the commit linked above required some modification to remove flakiness, but the workaround still stands. Diff provided in this blog post was updated to reflect current … -
D-Link DIR-825 (rev.B1) throughput test
So, the year is 2022 and I'm still using D-Link DIR-825, rev.B1 as my edge router at home. Thanks to the power of opensource it is running a modern and secure OS (OpenWRT) long after the manufacturer has abandoned this product. Even though OpenWRT (and Linux in general) has … -
Ansible apt module fails to install python3-apt on Debian Testing
I have encountered an unexpected Ansible failure today that turned out to be not a bug. Ansible apt module had failed to auto install the required python3-apt package - only on Debian Testing. Same playbook worked fine with Debian Stable. TASK [install some apt packages] ********************************************* [WARNING]: Updating cache and auto-installing missing … -
Pegatron Cape 7 nettop (thin client)
Below are hardware details of an outdated compact computer that had since become available for low price on second-hand market. I bought mine for $15 (in March 2020). This post is inspired by ParkyTowers Thin Client Database - many thanks to David Parkinson for gathering and sharing all that knowledge! Pegatron … -
Running Libvirt (KVM) in Cirrus CI
Up until the middle of 2019 it was very unusual to even expect that any CI service would allow nested virtualization. Those who required such functionality had to maintain their own CI runners on their own infrastructure. Things changed when Google Cloud introduced nested KVM support. Cirrus CI was probably … -
Cirrus CI integration for GitLab projects
Cirrus CI is a relatively new hosted CI service that offers several unique features. It's probably the only CI provider to offer full virtualization (KVM) or FreeBSD runners for free. Currently their business model is centered around GitHub Marketplace and only the projects hosted at GitHub are supported. Fortunately Cirrus …