Fedora: Attempting to burn CD-ROM but keeps ejecting medium

When attempting to burn a CD-ROM using Fedora and Brasero the medium always gets ejected, before anything is written. Apparently, the solution is to set u+s on /usr/bin/wodim: sudo chmod u+s /usr/bin/wodim See https://bugzilla.redhat.com/show_bug.cgi?id=1580021 for reference.

March 4, 2022

Seafile with MariaDB 10.5: Got an error reading communication packets

After upgrading MariaDB to 10.5 Seafile stopped working. journalctl showed errors like the following for mariadb.service: [Warning] Aborted connection 62 to db: 'seafile_ccnet-db' user: 'seafile' host: 'localhost' (Got an error reading communication packets) Further investigation revealed the open files limit to be the root cause: root@server:~# mysql -e "SHOW VARIABLES LIKE 'open_files_limit';" +------------------+-------+ | Variable_name | Value | +------------------+-------+ | open_files_limit | 32768 | +------------------+-------+ To increase the limit the corresponding Systemd unit needs to be overriden using systemctl edit mariadb....

February 25, 2022

Laravel with MariaDB and GitLab CI/CD: Illuminate\Database\QueryException: SQLSTATE[HY000] [2006] MySQL server has gone away

When running many tests involving the database one might encounter the following issue: Illuminate\Database\QueryException: SQLSTATE[HY000] [2006] MySQL server has gone away The issue occurred reliably and always at the same test. Temporarily deleting test classes just made another test triggering the issue. When debugging locally it turns out that the maximum connection limit of MariaDB is the root cause. By default MariaDB comes with a connection limit of 100 connections. Laravel however does not use persistent connections by default and therefore consumes a lot of connections when running tests....

January 9, 2022

Debian Buster: Enable TTY inside KVM guests

When spinning up a new Debian VM using KVM virsh console <vm> does not work. The VM needs a running TTY for this: systemctl enable serial-getty@ttyS0.service systemctl start serial-getty@ttyS0.service

January 12, 2020

A year in 4 minutes: Timelapse with 10k pictures

This post describes how I shot a timelapse of an entire year consisting of nearly 10,000 pictures. The Setup The timelapse was shot with a Raspberry Pi 3 Model B and the camera module v2 . The Pi was installed inside so there was no need to protect it against the weather. To better mount it to the wall the Pi was put inside a case . The benefits of having the Pi mounted inside are also stable Wi-Fi access and a more or less stable power supply (more on that later)....

August 28, 2018

GitLab Runner on Uberspace

23.09.2017: Updated instructions for 10.0.x release of GitLab Runner. This post describes how to setup gitlab-runner on an Uberspace using the shell executor. Download gitlab-runner-linux-amd64 Download the Runner binary into the ~/bin directory and make it executable: $ mkdir ~/bin $ cd ~/bin $ wget https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64 $ chmod +x gitlab-runner-linux-amd64 Create a working directory for the Runner: $ mkdir ~/gitlab-ci Get configuration details for the Runner In your GitLab project navigate to Settings > CI/CD Pipelines....

June 15, 2017

Chrome 56: Install and use Extensions

Starting with Chrome 56 on Debian you might end up having no Extensions. To re-enable them again you have to start Chrome with --enable-remote-extensions To make this a default add this flag to the default flags in /etc/chromium.d/default-flags: # Enable extensions export CHROMIUM_FLAGS="$CHROMIUM_FLAGS --enable-remote-extensions" Reference: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=851927

March 1, 2017

Waiting for server to accept SSH connections

Sometimes you need to wait for a just booted server to accept SSH connections. This can be solved with a one-line bash script: until nc -w 10 -z $SERVER_IP 22; do echo "SSH not available" && sleep 5; done

October 22, 2016

npm install fails with "npm ERR! tar.unpack untar error"

Problem npm failed randomly while installing packages. It didn’t matter which packages or if running on Debian itself or inside virtual machines using Ubuntu (vagrant). Upgrading npm to the latest version (sudo npm install -g npm@latest) and clearing npm’s cache (npm cache clean) didn’t help either. After examining the downloaded temporary packages in /tmpI realized that they were corrupt. The corrupt packages changed randomly on every download attempt. Changing the temporary directory from /tmpto another location did not resolve the issue....

April 25, 2016

Simulate the environment of Cron Jobs

Often you will find yourself in the situation that one of your cron jobs works perfectly if you execute it manually but fails as soon as is gets executed by cron. The root cause might be the different environment. To simulate the environment of a cron job add the following entry to your crontab using crontab -e. This will create the file cronenv in your root directory and dump all available environment variables into it....

March 21, 2016