Saturday, September 26, 2026

Lessons from running K3s in RPI using Ansible and Flux

Running K3s on a Raspberry Pi sounds simple, until you try to make a rebuild repeatable: bootstrap the node, get Flux access to Git, and recreate credentials without committing plaintext secrets. I learned a bunch of things the hard way, and I hope writing them down saves the next person (or GenAI model) some of the same back-and-forth. The pattern that worked was a clean hand-off: Ansible prepares the host and the bootstrap prerequisites; Flux takes over once it can read the GitOps repo.

Sunday, September 20, 2026

Running Pi‑hole on k3s and how GenAI tried to make me run as root

I was wrestling with Pi‑hole on single node Kubernetes and hit the classic privileged‑port problem: DNS wants port 53, containers don’t. The first GenAI suggestions were blunt, run the container as root. After some challenging from my side, it pivoted to MetalLB which is a nice option in a multi node setup. After digging I discovered a much cleaner path: k3s’s built‑in load balancer (ServiceLB, formerly known as Klipper LoadBalancer). Configure Pi-hole to use port 5353 and map it to 53 at the ServiceLB, no root, no extra components, and it worked like a charm.

Monday, August 17, 2026

Resurrecting a Samsung Galaxy Tab E SM‑T560

During vacations, I spent a day bringing an old Samsung Galaxy Tab E (SM‑T560 / gtel3g) back to life. It started as a quick tweak and turned into a proper little surgery: replace the stock recovery, flash a custom LineageOS ROM to test, chase down a couple of quirks, and finally install an alternative Android, ViperOS, build focused on stability. This is what I did and the gotchas I hit.

Sunday, May 3, 2026

Upgrading asp.net 6 to 10

I recently upgraded one of my projects from .NET 6 to .NET 10, and while the process was smoother than expected, there were several important steps and breaking changes worth documenting. This post summarizes what I did.

Tuesday, December 30, 2025

Repairing a TVIX Remote Control aka Fixing Unresponsive Buttons

I stumbled upon my old TVIX HD M-7000A media player, and discovered that the OK button on the remote control was unresponsive, preventing menu selections and general usability. If you encounter similar issues with your TVIX remote, such as buttons failing to respond (e.g., the red LED does not illuminate upon pressing), the following steps may help restore functionality.

Tuesday, August 12, 2025

Using an indoor air conditioner with a broken outdoor unit

During the Daniel extreme flood event in Thessaly, I was fortunate not to lose anyone, but sustained material losses, including two cars and my air conditioners’ outdoor units, which were submerged for two days and destroyed. The internal units were safe, and I wondered if they could function independently for fun. It turns out that any internal air conditioner unit can operate as a fan without the need of an external unit.

Tuesday, November 12, 2024

How to fix Snip & Sketch not working on Windows 10 (Snipping Tool shortcut issues)

I often need to take a screenshot and annotate it a bit before I paste it into a chat, Jira ticket or document. On my Windows system, I love the simplicity of the Microsoft Snip & Sketch app (also known as Snipping Tool), which is always just a shortcut (Win+Shift+S) away. 

Unfortunately, on my work laptop (still running Windows 10), I've recently run into an issue where the shortcut stops working.  When I press the shortcut or even open the app and select to take new snip, no screenshot is taken, and the toolbar doesn’t appear. Instead, I see the cursor spinner for a few seconds, but nothing else happens.

After some troubleshooting, I found a solution, so I thought I'd write it down for future reference and to help anyone else facing the same issue!

Friday, October 18, 2024

Parse Excel XML using power query in excel

I wanted to load an Excel XML file (a.k.a. Microsoft Office Excel 2002 and Excel 2003 XML Format — SpreadsheetML) in another Excel file using Power Query M formula language. It turns out that it's trickier than I expected so I decided to blog my solution.

Friday, January 5, 2024

LogonCommand doesn't execute in windows sandbox

I was trying to use Windows Sandbox to run UniFi server and I wanted to install VC140 as a logon command which seemed to not work 🤔 I was mounting the Desktop folder where I had both the executable and the startup.cmd file. Opening the sandbox and running the script worked. This means that the LogonCommand should also work, right? 

Well, no, because the scripts needs to use full paths as mentioned in this youtube video.

Running Ubiquiti UniFi Network Server on Windows 11

I was trying to run the self-hosted UniFi Network Server v8.0.26 on a newly installed Windows 11 but I was getting a cryptic message "Server taking too long to start…" followed by a "Start-up failed" error. It turns out that VC140 runtime is a hidden requirement (Visual C++ redistributable aka MSVC) and in my case it worked fine installing the latest MSVC for 2015,2017 and 2022 available in the official Microsoft site. Here is how I discovered the missing dependency.

Monday, October 16, 2023

Disabling critical battery action

 I have an old laptop with an almost dead battery, which I always use tethered to a power source, mostly as a media device connected to my TV. Occasionally, I need to move it, and if it's open, Windows realizes that the battery is very weak and decides to hibernate, as that's the default critical battery action. This can become very frustrating. The good news is that you can easily address this issue using Windows' powercfg command.

Tuesday, July 4, 2023

Installing Windows 11 in QEMU on Supported Hardware

When attempting to install Windows 11 in QEMU, you may encounter the "unsupported hardware" message. This occurs because QEMU does not enable TPM 2.0 support by default.

Saturday, May 6, 2023

Copy contacts from outlook to gmail

To transfer your contacts from Outlook to Gmail and keep the pictures, you need to export them as vCard files (vcf) and then import them into Google Contacts. However, Outlook does not support exporting multiple contacts as vCard files at once and neither does Google Contacts support importing multiple vCard files at once. You can use a workaround to export your contacts in batches and then combine them into a single file. Here are the steps:

Saturday, December 31, 2022

Dual boot two windows operating systems

I wanted a windows installation where I could write my book and escape from the apps of my everyday windows operating system. You will find plenty of articles about dual boot with Linux, but I couldn't find one on how to dual boot two windows installations. 

In hindsight, after talking to one of my colleagues, there is an easier way to do the same thing using just the windows boot disk and navigating through the UI wizard. This article is still relevant if you want to understand what the wizard does, if you want complete control, or if you want to upgrade the OS in just one of your partitions.

Thursday, December 8, 2022

Convert VHS mpg files to mp4 to import in DaVinci Resolve

I recently got my hands on a bunch of mpg files ripped from VHS cassettes (32 files spanning 157 GB), and I wanted to edit them with DaVinci Resolve. To my surprise, mpg files are not supported, so I had to convert them. I choose to use FFmpeg and convert them into H.264/MPEG-4 AVC compression format with Advanced Audio Coding (AAC) using the following command:

Wednesday, December 1, 2021

Genomics in Azure

Genomics analysis is an interesting field that has high computational and storage requirements. On top of that, there are compliance requirements, especially if the analysis happens on top of patient clinical data. This makes genomic research activities great candidates to run in an compliant elastic cloud, non other than Azure cloud which even has the recent NEN 7510 standard that is a mandatory requirement for all Netherland organizations that process patient health information.

Thursday, September 9, 2021

Network link is disconnected

You get a new device that has a 1Gb ethernet card (mine has the I219-LM) and you start getting random network disconnects. Been there and it is frustrating. There are a couple of reasons why this could happen (faulty drivers, faulty hardware, more than 100m from router) but in my case, it was a faulty cable that was easily identified with a ethernet cable continuity checker.

Thursday, December 24, 2020

Remove unknown locale qaa-Latn from windows

Got a fresh window 10 installation where I configure US keyboard as default and added Greek as well (the language with π and Σ symbols). I noticed that when I was switching languages a 3rd locale (qaa-Latn) appeared in the list which I couldn't remove from the windows list. In my case the keyboard was emitting Greek characters but the windows spelling couldn't recognize the words. In order to remove the extra locale I had to use the following powershell.

Sunday, September 20, 2020

Set proxy for command line in windows

 Ever wanted to force tools like curl and az cli to pass their traffic through a proxy while running them in cmd.exe?

Set the following environment variables and netsh will automatically pick up them and use them for all network connectivity.

Tuesday, February 18, 2020

Download new chromium based edge via powershell

If you ever need to download the stable version of the chromium based Edge via powershell, you can use the following one liner:


# Stable
# Invoke-WebRequest -Uri "https://c2rsetup.officeapps.live.com/c2r/downloadEdge.aspx?ProductreleaseID=Edge&platform=Default&version=Edge&source=EdgeStablePage&Channel=Stable&language=en" -OutFile "EdgeSetup.exe"
# Dev
Invoke-WebRequest -Uri "https://c2rsetup.officeapps.live.com/c2r/downloadEdge.aspx?ProductreleaseID=Edge&platform=Default&version=Edge&source=EdgeStablePage&Channel=Dev&language=en" -OutFile "EdgeSetup.exe"