Coding with Titans

so breaking things happens constantly, but never on purpose

Secure access to PostgreSQL on Raspberry Pi

First time this month I thought about doing something right. It's the end of the year and what about creation of really secured environment for my PostgreSQL database on a Raspberry Pi, that I could expose publicly. What could go wrong here :) ? The goals were clear: Setup a dedicated low-privileged system user, so I could proxy to the database over SSH. Create a new low-privileged PostgreSQL user, so it can access own database only (or ones created in the future). Read more →

HowTo migrate PostgreSQL 9.6 to 11.5

Recently I have created a post on how to upgrade OS on Raspberry Pi. It worked pretty well until I figured out there is something wired with my PostgreSQL installation. And it turned out I ended up with two instances installed one next to the other. So I had the 9.6 version running with my existing databases and as well a cluster for version 11.5. Let me try then to rephrase the other guide, I found here, explaining, how to upgrade PostgreSQL to latest and migrate the databases. Read more →

Gitea on Raspberry Pi with no heatmap refreshed

In the times before private repositories were available for free on I had my own git-server installed on a NAS using gitolite. But in a long run I stopped liking managing from console and also I don't like, when some other corporation looks into my own hidden projects and could be able to cut me off. As a result I migrated again, this time installing Gitea on a Raspberry Pi following this marvelous guide. Read more →

HowTo: OS upgrade on Raspberry Pi 4

The process of system upgrade is very easy and was already described here. This is a really great guide. I just want to add few comments, that affected my installation. The main actions to perform to install latest version of Raspbian are: Go to and check the latest OS codename. Verify, if this version is not already installed on the Raspberry using cat /etc/os-release command. Read more →

HowTo: Enable video 4k@60Hz on Raspberry Pi 4

Here I wish to present a quick guide, how to enable 4k video output on Raspberry Pi 4 with 60Hz refresh rate. It's not hard at all. It just requires to know some facts before, to avoid unnecessary frustration. Let me briefly summarize it: 4k@60Hz is disabled by default on Raspberry Pi 4 (due to a fact of increased memory consumption and device temperature - check docs - that is not needed by most of Pi users). Read more →

SSD over USB 3.0 on Raspberry Pi 4

I wasn't even surprised, when I plugged-in an SSD via USB 3.0 into Raspberry Pi 4 and it didn't work at all. That became a killer for my idea of keeping data outside of the Pi's microSD card. Observed suspicious symptoms were too obvious: booting time increased from 20 seconds to 3 minutes LED light of the drive was constantly blinking some commands took extremely long time to execute (sudo blkid, sudo fdisk -l) and even later mounting finished failing or partition formatting hanged indefinitely. Read more →

Raspberry Pi 3 and QEMU

At first glance, it seemed to me to be a really easy task. Install QEMU for Windows, download latest Raspbian and run! Unfortunately after whole evening of tries I still fail to have it usable anyhow. Maybe it’s not totally not running, but still it’s pretty useless in terms of any further development of application without a device. Simply, at current state (as of 2018-02-18) of QEMU, it doesn’t support emulation of the USB controller, and since the whole network relays on it, there are huge connectivity issues (no network interface at all, so no SSH, no tools installation, no file transfers neither). Read more →

Wake-on-LAN from Raspberry Pi and Synology NAS

Some time ago I have written a post about, how to setup Windows 10 to wake it up remotely via network using magic packet. The question that remained unanswered is: how to actually send this packet to the PC to trigger it running. In the first example I will use Raspberry Pi with Rasbpian Stretch Lite installed: First make sure a tool etherwake is available. If not, this could be fixed with following command, otherwise skip this step: sudo apt-get install etherwake Then simply invoke it with proper arguments: sudo etherwake –i <ethernet-interface-name> <PC MAC-address> Some explanations: Read more →

Recover GitLab after PostgreSQL 9.6.2 failed upgrade

Recently I described, how to keep in sync with GitLab latest releases on the Raspberry Pi. And of course it lead me to a problem after unsuccessful update to version 8.17-rc3. This release has the PostgreSQL 9.6.2 embedded and apparently everything got broken in the middle of the upgrade process. After all my tries to revert to previous GitLab version, lots of time wasted (yes, each call to apt-get upgrade or install specified GitLab version was taking several hours! Read more →

GitLab on Raspberry Pi not updating

I recently noticed that my GitLab installed on Raspberry Pi (running Jessy) stopped updating and stick to version 8.7.9, however the latest one as of today is 8.16.4. Normally apt-get updateand **apt-get upgrade**should do the trick. But it turned out there was a change in the build system and newer packages don’t get uploaded into ‘raspbian’ version of repository. For details - take a look on issue #1303. Although quick patch is following and short: Read more →