I was able to boot my Raspberry Pi using the Pi Imager and the Fedora AARCH64 Raw Image. While this makes me happy, I don’t really understand what these pieces are. So, I want to take a little more look at them.
Continue readingUpgrading 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 readingExporting a git repo as a tarball
git archive --format=tar.gz -o ~/neptune3-ui-5.15.tar.gz 5.15 --prefix=neptune3-ui-5.15/ |
These are the options I needed. the -o says where to put the file, and the –prefix (with the / at the end) puts it in a subdir.
Unmounting inside a container
We do RPM things. Some of those RPM things need the /proc file system. Not forever, but for a short while. So we mount /proc, do something, and unmount. Which works fine.
Until we tried to do it in a container.
Continue readingPipewire low latency
Just wanted to leave myself a note here. On QJackCtrl It shows the latency in the bottom right of the Parameters page. If I drop the Frames/Period to 16 (Lowest) the latency drops to 1 msec. For a Jamulus server with a ping time of 22ms I get an overall delay of 44 ms.
And that is over wireless.
This is on my laptop, not my NUC, and it does not have the Scarlet Solo USB Analog-to-Digital converter on it.
But it is encouraging.
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 readingCustom RPMS and meta-rpm
We are trying to enable the graphics hardware subsystem on the Raspberry Pi 4. This driver lives in mesa. The current Centos mesa.spec file does not enable the V3D Driver we need. Here are the steps I am going through to build the driver and integrate it into the meta-rpm build.
Continue readingQuerying hostnames from beaker
If you have requested a single host from beaker, the following one liner will tell the hostname for it.
bkr job-results $( bkr job-list -o $USER --unfinished | jq -r ".[]" ) | xpath -q -e string\(/job/recipeSet/recipe/roles/role/system/@value\) |
This requires jq and xpath, as well as the beaker command line packages.
For me on Fedora 33 the packages are:
- perl-XML-XPath-1.44-7.fc33.noarch
- jq-1.6-5.fc33.x86_64
- python3-beaker-1.10.0-9.fc33.noarch
- beaker-redhat-0.2.1-2.fc33eng.noarch
- beaker-common-28.2-1.fc33.noarch
- beaker-client-28.2-1.fc33.noarch
Running do_ scripts from yocto
I wanted to see how my work had diverged from the standard Raspberry Pi build. Specifically, the image creation stage is failing in my work. I can run the script in the original (upstream) version by doing thing following.
Continue readingMerging root and home filesystems
Yocto takes up a lot of space when it builds. If the /home partition is 30 GB or smaller, I am going to fill it up. The systems I get provisioned from Beaker are routinely splitting their disks between / and /home. These are both logical volumes in the same volume group. This is easy to merge.
In order to merge them I find myself performing the following steps.
umount /home/ mkdir /althome |
I then modify /etc/fstab so that the /home entry is now pointing to /althome. If I have done any work in /home/ayoung (almost always) I have to copy it to the new /home partition
mount /alhome/ cp /althome/ayoung /home/ayoung |
Once the home volume has been cleared, I can reclaim the space. The following lines will vary depending on the name of the machine.
lvremove /dev/rhel_hpe-moonshot-02-c07/home lvresize -L +32.48G /dev/rhel_hpe-moonshot-02-c07/root |
I am explicitly reclaiming the size of the /home volume, which in this case is 32.48 GB.
A little bit of foresight can obviously avoid this problem; properly allocate the disks according to the workload. Requesting a machine with more disk is also an option.
But sometimes we have to fix mistakes.
Note that I use the lvdisplay command to see the names of the volumes.
In order to make use of the new space, I have to resize the file system. Since it is XFS, I use the xfs_grow command. I want the full size, so I don’t need to pass a parameter.
xfs_growfs /dev/mapper/rhel_hpe--moonshot--02--c07-root |