Upgrading QGo to QT5

My Day job has me messing around with QT5. We’rer building various RPMs for different RHEL and CentOS versions, and I wanted to get a little more experience on this. Specifically, I wanted to be able to do trial and error on a package that would not pollute our work stream. I wanted it to be something QT based. And I wanted it to be fun.

So I am working on repackaging QGo for Fedora 34 using QT5. Here’s what I am learning.

Continue reading

Unifying Audio with Pipewire

ALSA. Jack. PulseAudio. MIDI. Musescore. Jamulus.

My musical interactions with Linux are not the most complex in the world, but they ain’t trivial. The complexity of the Linux audio landscape has been a stumbling block so far. Pipewire has just gotten me past that.

The title of this article implies that you need to do something other than install Pipewire. So far, this is not true. On my system, at least, it Just works.

Continue reading

Updating config.sub in a bitbake recipe

config.sub is used to determine, among other things, the architecture of the machine. This is used in the configure script for an autotools based make file.

Older config.sub files don’t know how to handle aarch64, the generic name used for ARM64 servers in the build process. We have a recipe that pulls in code using an older config.sub file and I need to update.

My first approach was to build a patch. This works fine, and it was my fallback, but it is tedious to do for every recipe that needs this update, every time it needs it. It turns out we have a better approach that follows the guide of “don’t repeat yourself.”

Continue reading

Jamulus Server with a Low Latency Kernel on F33

I’m trying to run a Jamulus server . I got it running, but the latency was high. My first step was to add the real time kernel from CCRMA.

CCRMA no longer ships a super-package for core. The main thing missing seems to be the rtirq package.

  • installed the ccrma repo file.
  • installed the real time Kernel
  • Set the RT kernel as the default.
  • installed the rtirq scripts rpm
  • enabler the systemd module for rtirq
  • rebooted
  • cloned the Jamulus repo from git
  • configure, built, and installed Jamulus from the sources
  • added a systemd module for Jamulus
  • set selinux to permissive mode (starting Jamulus failed without this)
  • started Jamulus
  • ensured I could connect to it
  • stopped jamulus
  • set selinux to enforcing mode
  • restarted Jamulus from systemctl
  • connected from my desktop to the Jamulus server
  • Jammed

It does not seem to have much impact on the latency I am seeing. I think that is bound more by network.