Cross build and packaging

It compiles! Ship it!

Introduction Let’s start by clarifying what we mean by cross-building and cross-packaging. Cross-compilation is the process of compiling source code on one platform, called the host, in order to generate an executable binary for a different target platform. The emphasis here is on the word “different”. The target platform may have a different CPU architecture, such as when we work on an x86 computer and want to build software for a Raspberry Pi board with an ARM CPU. [Read More]

Reverse dependencies

Dependencies are like pets, they bring joy but also require constant attention.

As start let’s sort it out what is dependency and what is reverse dependency. Dependencies and reverse dependencies in Linux distributions are important concepts to understand. A package dependency means that another package relies on it in order to function. For example, if package B requires package A to be installed in order to work, then package B is dependent on package A and is considered a reverse dependency of package A. [Read More]

Build system statistics

Okey, let's start with a boring cliché...

From time to time we should ask ourselves how are we doing. Are we successful, are we on the right track, are we heading to the right direction, are we fast enough, are we accelerating or slowing down? This time I am talking about the openSUSE Linux Distribution and about the SUSE Linux Enterprise Server. And here I quickly would like to note an important disclaimer with a short story. [Read More]

Checking changelogs with zypper

The future you see is the future you get.

I have heard way to often the question from Linux and specially SUSE Linux users that “How can I check the changelog of a package or new version of a package available on the repository, but not yet installed”. There was no easy answer for that question, so I have decided to make a little tool for that. How it is done All the enabled repositories have a bunch of configuration files in a well structured directory tree under the /var/cache/zypp/raw/. [Read More]

Data visualization with Grafana and Telegraf

There are decades where nothing happens; and there are weeks where decades happen.

It all started when… Few weeks ago we have decided to create a dashboard where we can monitor the status of the SUSE Linux Enterprise maintenance update queue. Naturally there are tons of cool open source solutions to build this type of monitoring. Two decades ago I probably would have written a Perl or Python based monitoring script for the monitoring part and use the good old gnuplot ( to visualize the data and create an active page written in some silly web UI framework. [Read More]

Audio controlled Shelly devices

I can see you're talking to me in riddles. Do what you like, you go where the wind blows.

The idea came from Tina Müller who was giving and awesome demo of the Vosk library. I quickly checked out the Alphacephei pages. I fundamentally like when a cool library has Python APIs. Vosk is an offline open source speech recognition toolkit. It enables speech recognition for lots of languages. The vosk models are small (50 Mb) but still provide continuous large vocabulary transcription, zero-latency response with streaming API. [Read More]