RSS Amplifier

Blog

devroom.io

Recent content on devroom.io

devroom.ioRSS feed ↗345 posts

Written by

Latest posts

Migrating from Fathom Lite to Umami

Migrating 6 years of analytics data from Fathom Lite (SQLite) to Umami v3 (PostgreSQL) with a Python script that expands hourly aggregates into individual event rows.

Using GitHub Actions in Self-Hosted Forgejo

If you’re running a self-hosted Forgejo instance and want to use GitHub Actions, you might have noticed that Forgejo defaults to using data.forgejo.org for action resolution instead of GitHub or your local mirrors. Here’s how to configure it properly.

Rocksmith 2014 on CachyOS/Arch Linux

Introduction Yes! 2025 is the year of the Linux desktop! I’ve always liked Linux as a desktop OS, but one thing was lacking: gaming. Lots of things happened in the gaming on Linux space. I’m not an expert, but I think the Steam Deck played a big role. SteamOS, the software that runs on the Steam Deck, is based on Arch Linux and KDE/Plasma. Many games are either compatible with Linux,…

Programming with AI: You're Probably Doing It Wrong

2025 is the year of Artificial Intelligence. With GPT-5 just released, many developers will re-evaluate their use of large language models for assisting in their daily work. I’m here to tell you: you’re probably doing it wrong. And you’re missing out on the real power that AI assisted development can give you.

Downsizing a Proxmox VE Cluster: From Three Nodes to Two Stand‑Alone Hosts

Background Over time I’ve accumulated quite a bit of hardware for my homelab. I started with a three‑node Proxmox VE setup: Node ID Hostname Role 1 Treebeard Main hypervisor (all production VMs & ZFS pool) 2 Aragorn Going away – VMs are migrating to Treebeard 3 Samwise Tiny SFF box; runs a single Flight‑Radar VM With Aragorn about to be decommissioned, there’s no real benefit in keeping the…

Proxmox: Replace a failed bootable ZFS disk in rpool

It’s what every sysadmin dreads and prepares for: a failed hard drive. Replacing a failed SSD in a Proxmox boot pool (rpool) can be a daunting task, especially considering the critical role it plays in your server’s operation. A mirrored ZFS boot pool provides redundancy, but when one of the drives fails, it’s imperative to address the issue promptly to maintain system integrity and prevent…

Fixing a Toyota Yaris water leak

I’ve owned this Toyota Yaris new from 2010. We don’t use it that often, but it’s a cheap car to own and it’s great to have around when needed. Unfortunately, during some very wet winter weather, we noticed that the car was very wet on the inside.

Comments are back on the menu

Allowing comments on your website is scary. You have to keep a constant eye on them and there’s lots of spam and trolling. The upside is getting that warm, fuzzy feeling when people react positively to your work.

Why Asahi Linux is not for me

In previous posts I discussed some Asahi Linux specific setup to make Asahi Linux play nice with my MacbookPro M1 Max. After running Asahi for about a week on my production laptop , I’m ready to do some evaluation.

MacbookPro M1 with Asahi Linux: Fractional Display Scaling in GNOME

The MacbookPro has a high pixels-per-inch screen, or as Apple likes to call it, a Liquid Retina XDR display . Including the notch area, it measures in at 3456x2234 pixels at 254 PPI. It’s a beautiful screen…

MacbookPro M1 with Asahi Linux: Fixing the touchpad

I’m a big Linux fan. On my Ryzen 3700X desktop rig I run Arch Linux and I like it. The only times I boot into Windows are to play Rocksmith 2014 , because I still haven’t got that game to work properly on Steam/Proton.

NowNowNow

This is my Now page where I share what I’m up to right now . Consider getting your own. Updated: 2026-06-13 Personal In the process of settling an inheritance. Playing with AI, a lot Putting the VW Cabriolet back together for it’s periodical inspection Professional Facilitating Code Retreat workshops . Working on an exciting new project (which I can’t talk about)

Peel before use: mistakes were made

The stock AMD Wraith cooler on my linux box was getting loud. Since I recently migrated the complete system from a (too) tight mini-ATX case to a larger Corsair 4000D Airflow , I decided to splurge on some new cooling.

Import Google Photos Takeout into Immich

Update 2025-09-08 It was brought to my attention by several readers that these instructions are outdated and no longer working. Immich now provides Immich CLI , which allows you to easily upload photos from a terminal.

How to extract multiple .tgz Google takeout archives

I love Google Photos for its easy of use and features. But, it’s Google . As you may knwo I like to selfhost all the things, but for the longest time I was not able to find a good selfhosted alternative for Google Photos.

ZFS: Upgrade single disk to mirror

For a while now I’ve had a single 3TB WD Green in my NAS to store local Borg backups before syncing them to Google Drive a Hetzner Storage Box . Because I recently replaced my 3TB Reds for 10TB HGST’s, I have some spare drives left.

Arch Linux: Improve boot time performance

I run Debian on all my servers. It’s a great stable OS and I love it. Proxmox, which I run on my homelab server , is also based on Debian. However, on my desktop I run Arch Linux . It’s a great distro to tinker with. It comes with a lot of up to date packages, but it also has the AUR - Arch User Repository. So for any app you can find, there probably is an easy way to install it.

Troubleshooting zfs online not working

Yesterday the first 10TB recertified drive tested all okay . I’ve decided to upgrade the four 3TB drives in my pool to 10TB to expand capacity. I have a 16 bay hot-swap chassis with 13 slots filled.

Prepare new harddisk for ZFS/NAS

You can read more on my homelab and datahoarding problem here and here . Today I scored two recertified 10TB HGST drives for very little. Normally I’d go for the brand new stuff, but this deal was too good to be true.

Volkswagen Golf Cabrio - Update

It’s been almost 18 months since I purchased a, let’s be honest here, beat-up Volkswagen Golf Cabrio from 1994. At the time my knowledge about car mechanics was pretty much zero. Did I tell you I like a good challenge?

Base2Tone Cave Dark for Slack

I like my colorschemes. The most recent one I discoved is Base2Tone Cave Dark . So, naturally I wanted to have it in Slack too, so I created a custom theme. Here it is.

Volkswagen Golf III Cabrio (1994)

And now for something completely different: I’m going to fix up 1994 Volkswagen Golf III Cabrio at home.

10GB Ethernet with Proxmox and Ryzentosh 3700X with macos Catalina

Please read my previous post on my DIY NAS here: 1 and 2 . 10 gigabit . That is 10,000 megabit . I come from a time when fast internet meant you had ISDN. For reference, that’s 192kbps, or roughly 24KB/s.

The Big DIY NAS Update

Please read my previous post on my DIY NAS here: https://www.devroom.io/2020/02/28/building-a-diy-home-server-with-freenas A brief history In May 2019 I decided it was time to jump on the NAS bandwagon. I started out with the following:

Repairing a Xiaomi Roborock S5 Max

Many less-tech savvy people I know have a robot vacuum cleaner. So why didn’t I? I don’t know, so I bought one. I was able to get a good deal through a Chinese reseller that could ship directly from Spain. As it turned out, they shipped with Amazon.

Repair: Philips 42" 3D LED TV with Ambilight - AGAIN

This week our Philips TV died. I repaired it before, and it seemed the problem was back.

Why I will not repair your amplifier

I like tinkering with electronics and one awesome way of doing that is by repairing things that are broken . I get about ten or more requests every month from random people from the internet to help them repair there device. My reaction is always the same: no, I will not. This posts tries to explain why I say no and what alternative I can offer them.

Test Flutter on Drone CI

This post is specific to Drone CI , but is probably easily adoptable to other CI systems, like Gitlab. Flutter is UI library based on Dart to create beautiful, natively compiled applications for mobile. Web and desktop targets are also in the works.

A Drone Hugo plugin that works

This article contains some background to why I wrote this plugin. If you just want to use it, see github.com/ariejan/drone-hugo for details. I recently moved away from Gitlab + Gitlab CI to a Gitea + Drone setup. Both Gitea and Drone are lightweight and fast, and let’s be honest, more than enough for an engineering enthusiast like myself. They now also run on my NAS Homelab Server as docker…

The git submodule cheat sheet

A git submodule, in its essence, is a reference to another git repository. It’s a great way to include vendor code (like plugins or themes) into your own code base. This post contains some examples on how to use git submodules effectively.

Building a DIY Home Server with FreeNAS

Keep reading! I’ve documented several upgrades to my DIY NAS at the bottom of this post. After you’re doing reading this, hop over to my latest update on my homelab server / NAS.

How to background a running process over SSH

Today I was logged in on my FreeNAS server to setup Duplicity backups. After initial success on a small dataset of about 100MB, I cloned my configuration to backup my long term storage dataset. It contains about 50GB of data - or so I thought. It turns out there’s over 500GB there.

Repair: Philips 42" 3D LED TV with Ambilight

Last week I started a new repair project: a 42" Philips TV. The power supply was obviously defect, but I ran into another problem as well…

Design: Phono X, a RIAA Phono Preamplifier

Building a quality phono preamp is still one of the joys of the audio electronics enthusiast. This is my first take on a RIAA phono premap.

Bug severity explained

Recently I got an email asking me about how I classify bugs and issues and how the different categories for a bug’s severity, like Critical and Major can be explained clearly.

Repair: Hewlet Packard 34401A Bench Multimeter

After watching The Signal Path for some I decided to treat myself to a classic 34401A 6½ digit multimeter.

Repair: Denon AVR-4520

This unit sold from 2012-2015 as the top-of-the line AV Network Receiver from Denon. I got my hands on a unit with power protection issues. Here’s the repair log the Denon AVR-4520.

Repair: Rotel RB-970BX

Another lucky find: Rotel RB-970BX Power Amplifier with one defective channel. Let’s fix this!

Tmux and Vim: Copy and Paste on macOS Sierra

As a developer, more than anything, you copy and paste things. Making copy and paste work in properly with Vim and Tmux is, unfortunately, not trivial. There’s a lot of information to be found on the internet about setting up copy and paste with Tmux. There’s also lots of information on how to setup Vim. But then you run Vim 8. On macOS Sierra. And things break down quickly.

Image Zoom with plain JavaScript and CSS

Note: I’ve moved away from the solution outlined in this post. Mainly because I did not want to write an entire gallery from scratch. I’ve since opted to use lightgallery.js which is a pure JS image gallery solution with some nice goodies.

Bitcoin Mining Anno 2017

Bitcoin was introduced in 2008 and has gained much popularity since then. At the time of writing the exchange rate for 1 BTC is about €1100 (or $1166), quite an increase from when you could get 1 BTC for just a few euro.

Repair: Marantz PM80 Mk2

The venerable Marantz PM80 Mk2. This unit was completely dead, but I was able to bring it back to life!

Squash git commits when merging

Today I’ve been fighting to get our test suite to run against a newly delivered Oracle 12 database. Of course, that didn’t work out of the box, so there was some debugging, trial-and-error, and cursing involved. Finally, I managed to get the build back up and running. Yay!

Music Streaming Setup

I love music. Recently I got into vinyl and I love it. Although it’s not digital 24/96 studio quality, there is something relaxing about picking a record, putting it on my turn table and listening to the small diamond needle scanning the grooves of the record pressed 30 or 40 years ago. This post is not about vinyl, though.

Hanami and Multi-Database Testing with Travis

This is a re-post of my article over at Kabisa ’s The Guild . I’ve been busy rewriting Firefly for a while now using Hanami . Hanami is a fascinatingly fresh ruby web framework with a strong opinion on Clean Architecture . Me like!

Repair: Denon PMA 720A

A classic 1989 Denon PMA 720a Integrated Amp that made a bang and wont’t turn on. Let’s solve this!

Repair: Marantz SR5200

A Marantz SR5200 receiver with a non-working front-right channel. Let’s fix that!

Repair: Denon PMA-560

Log of diagnosing and repairing a Denon PMA560 Stereo integrated amplifier.

Putting ariejan.net on a diet: a 69% reduction

You may have recently read Website Obesity by Maciej Cegłowski , as featured on Hacker News . There’s a lot of great stuff in that article. The most obivous and striking thing is that there is a lot of bloat on the web. Examples include a tweet (140 characters) that is served as a 900kB website. How to optimize a website and remove bloat is a topic in and of itself. I can highly recommend…

El Capitan: Safari New Tab Slow Fix

Safari is a great browser. I know there are alternatives, like Firefox and Chrome, but I like Safari. Recently I noticed a lag of about 3-5 seconds when opening a new tab. I use tabs often, so this started to get in my way. Because I did not feel like switching browsers, I did some digging around to see if I could get this problem fixed.