How to add an audio delay for video conferencing on Linux/Pulseaudio

After recently switching to work under Linux, I needed a way to replicate my existing solution for delaying audio under Windows under Linux/Pulseaudio. To once again explain my situation, I use OBS also for video conferencing, through the virtual camera1. OBS does not offer a built-in way to provide a virtual microphone with all the filters and such applied as well (in my case noise reduction and a limiter), so I need to solve this in a separate way....

March 11, 2023 · 2 min

How to remap keys under Linux and Wayland

Edit 2024-09-09: Please be advised that this post refers to an older version of keyd that still used a different configuration format. An older version also stated the config file was stored at ~/.config/keyd, that was an error on my part. Thanks to a reader for the related heads-up! As a German living in Germany with umlauts in my last name and a US ANSI keyboard layout on all my devices1 I need to remap some stuff to be able to easily type ä, ö, ü and ß....

March 3, 2023 · Updated September 9, 2024 · 6 min

How to make dnf default to yes

I’m currently in the process of setting up my new Frame.work laptop, and since I’ve been using Debian-derivatives for the past two decades now, I decided to use the opportunity, try something new for once and installed Fedora1. Something that got annoying quickly is that the package manager command dnf defaults to “no” when asking if you really want to install a package plus its dependencies. I’m very used to apt’s behaviour here that allows me to type sudo apt install <package> and then just hit Enter on the sanity check....

March 2, 2023 · 1 min

How to add itch.io games to the Steamdeck

I’m currently setting up some alternative game stores on my Steamdeck, specifically Emudeck for my retro collection, Heroic Launcher1 for GOG and Epic, and also itch.io. I stumbled across this Reddit post that recommended to use the itch.io Windows launcher instead of the native Linux one: Itch.io has an app, that even has linux version. But it has issues - it can only use one wine version, if you have it installed globally, it can’t even handle linux games well....

February 24, 2023 · 3 min

How to automatically sync screenshots from the Steamdeck to Google Photos

As a follow-up to my earlier post about how to sync screenshots to Google Drive here’s how to achieve the same but with a dedicated “Steamdeck” album on Google Photos instead. Once again we are using rclone for syncing. First I created a new target gphoto by running ~/bin/rclone config again and then following these steps. Quick summary: New remote gphoto Empty application ID and secret Full access No advanced config Use web browser to authenticate I then created a new album:...

February 19, 2023 · 1 min

How to add a switch for a port forward on Unifi to Home Assistant

This is admittedly something I did not learn today but rather learned and adapted a couple years ago from this post on the Home Assistant forum, but I just had to use it again today and so I figured I’d write it down with all the bells and whistles just in case I ever need this information again - or anyone else does. First of all, in your unifi controller you should create a new user that Home Assistant will act as to manage your port forward(s) for you....

February 17, 2023 · 3 min

How to automatically sync screenshots from the Steamdeck to Google Drive

I wanted to automatically sync the screenshots I take on my Steamdeck to some cloud, without having to manually do it for every single one in the Steamdeck’s own uploader. I came across this gist by pegasd that accomplishes this via rclone, a path monitoring systemd service and some reconfiguration in Steam. However, I had to adjust things slightly for everything to really work - I could imagine that some past Steam update changed things slightly vs when the gist was created:...

February 11, 2023 · Updated February 19, 2023 · 3 min

How to trim screenshots via the commandline

I just had to trim a bunch of screenshots that had some black borders around them. I didn’t want to do this manually or via a GUI, but ideally batch-able via the commandline. Thankfully, that’s one of the many things that ImageMagick can do for you. I put all my screenshot PNGs into a folder, and then in that folder ran this mogrify command: magick mogrify -trim -define trim:percent-background=0% -background black -path output/ *....

February 9, 2023 · 1 min

How to quickly generate a QR Code with transparent background

For an upcoming presentation I wanted to quickly generate a QR Code of my web site’s URL to include on the final slide. Since my slide theme has a green gradient background with white text, I wanted the QR Code to be white on a transparent background, as a PNG. Enter node-qrcode which runs easily via npx1: npx qrcode -o output.png -d FFFF -l 0000 -w 500 "https://foosel.net" -o output.png sets the output file -d FFFF sets the dark color (usually black) to white with 100% opacity -l 0000 sets the light color (usually white) to black with 0% opacity - fully transparent -w 500 sets the size to 500px For further options like error correction or QR code version, or how to use it as a library or in the browser, see node-qrcode’s repo linked above....

February 6, 2023 · 1 min

How to use jq to extract new posts from a JSON Feed

I’m currently looking into ways to automate some stuff around new posts on this page (be it blog or TIL post) directly during the page build on GitHub Actions. For this, I first need to be able to reliably detect new posts, from a bash run step. So here’s how to do that with jq. The idea is to get the current feed.json prior to publishing the page, and then compare it to the one that was just generated during the build....

February 2, 2023 · 2 min
Mastodon