[Beta] Patchbox OS Bookworm ARM64 2024-04-04

Thanks @Giedrius for the quick reply!

  1. The FluidSynth plugins were downloaded straight from the patchstorage mechanism in the MODEP webpage (but I see them here on patchstorage, e.g. Fluid Percussion | Patchstorage). There I see that they are nominally arm64, but something is clearly not working.
  2. I just downloaded the updated arm64 Midihub editor (thanks!), but now it’s complaining since it isn’t finding SSL 1.1 libraries - which is not surprising since I only have 3.0 from the OS image, Installing libssl1.1 by hand got it working, so I think I’m OK, but maybe this needs to be documented (or 1.1 added to the image)?
  • Peter

@Giedrius @steinber I see that a user named @Jhordies uploaded the Fluid Synth plugins 2 months ago. I can also confirm that I tried several and each time I try to add one to my pedalboard I’m getting “Error adding effect”. Perhaps Jerome can help?

Hello guys,

Sorry about that, I will delete them.
My build setup is broken.

Best

@Jhordies I’d be interested in how you got these to compile. I tried many months ago and was unsuccessful. Unfortunately I could not figure out how to resolve.

How did you install it? Via APT?

Yes - just “apt install libssl1.1”.

1 Like

I installed libssl1.1 by hand and cannot get any of the Fluid plugins to load. Still getting: Error adding effect.

Looking at the log I see:

Jul 10 10:31:39 patchbox mod-host[907]: lilv_lib_open(): error: Failed to open library /var/modep/lv2/FluidSynthPads.lv2/FluidPlug.so (/var/modep/lv2/FluidSynthPads.lv2/FluidPlug.so: ELF load command address/offset not>
Jul 10 10:31:39 patchbox mod-host[907]: can’t get lilv instance
Jul 10 10:33:07 patchbox mod-host[907]: lilv_lib_open(): error: Failed to open library /var/modep/lv2/FluidGuitars.lv2/FluidPlug.so (/var/modep/lv2/FluidGuitars.lv2/FluidPlug.so: ELF load command address/offset not pag>
Jul 10 10:33:07 patchbox mod-host[907]: can’t get lilv instance

Anything else needed to get these working?

libssl1.1 install was required to get the ARM64 Midihub Editor running.

D’oh! Thought it was for the fluid plugins.

Yeah I would love to too, because apparently I didn’t manage to compile them properly either.
All I remember is that It took a lot of fiddling with dependencies.
I have broken my install after an upgrade so I am considering starting from scratch.

Ok so long story short, I managed to rebuild and republished the fluid plugins (ie: Fluid Strings | Patchstorage )
But they still fail.
What I did:

I reinstalled the above mentioned Image on my pi5 8gb.
Applied updates
Flipped the kernel to realtime.
Followed the steps: GitHub - moddevices/mod-plugin-builder: MOD Plugin Builder
(don’t forget to do the following after cloning the repo)

git submodule init
git submodule update

I had to run the ./bootstrap.sh generic-aarch64 multiple times to get it to complete.
The build would hang and even make the pi completely unresponsive.
To actually complete the boostrap and avoid OOM I had to limit the number of compilation threads of wpewebkit to 3 by changing the mod-plugin-builder/global-packages/buildroot-2023.11.3/wpewebkit/wpewebkit.mk (line 30)

# limit build to 8 jobs
#WPEWEBKIT_BUILD_OPTS = -j$(shell [[ $(PARALLEL_JOBS) -le 8 ]] && echo $(PARALLEL_JOBS) || echo 8)
# limit build to 3 jobs
WPEWEBKIT_BUILD_OPTS = -j$(shell [[ $(PARALLEL_JOBS) -le 3 ]] && echo $(PARALLEL_JOBS) || echo 3)

I don’t know what is going wrong, all I can tell you is this all process takes HOURS on the pi5 and I can’t seem to build the plugins properly.

Maybe I should use some other platform than generic-aarch64, as it allows for generic-aarch64-a55 generic-aarch64-a76.a55 generic-aarch64-debug

Or I should have used this repo GitHub - patchstorage/patchstorage-lv2-builder: Patchstorage Plugin Builder instead of GitHub - moddevices/mod-plugin-builder: MOD Plugin Builder

@Jhordies you should use the link for the patchstorage-lv2-builder. That’s what I used to upload all the plugins that I added to patchstorage. I would advise to run the docker image on a decent laptop/desktop. Compiling on the Pi (even a 5) will be slow. It will be much faster on laptop/desktop. I have Docker installed on an Ubuntu machine fwiw.

Yes, you should try and use the patchstorage-lv2-builder fork - it features prebuilt Docker images containing the toolchains for multiple platforms, easing and speeding up the cross compilation efforts. You may submit a pull request in case you know what changes to make to get it building.

Hello,

Does this method builds fluid and MDA plugins?
Can you publish them?

Thanks

Unfortunately it does not compile the fluid plugins. I took it upon myself to try and compile and upload many of the plugins in patch storage, fixing things that were within my technical abilities. The fluid plugins threw errors that I did not know how to fix. Perhaps you have some experience? See the attached error file when trying to compile fluid.
fluidplug.txt (11.3 KB)

I got the generated and published plugins to work on the pi 5 by adding

 kernel=kernel8.img

in the /boot/firmware/config.txt

It is now using page sizes of 4k rather than 16k
see: Pi5 16K PageSize Kernel Incompatible Software · Issue #107 · raspberrypi/bookworm-feedback · GitHub

1 Like

That’s awesome! Did you re-publish the plugins to patchstorage? Would be happy to help test.

The published plugins already work, you will need to change the page size of your own machine to make them work.
It seems that some software are not compatible with the 16k page size used by default in the ARM64 2024-04-04 image, one can switch to 4k page size by using the other kernel image (already present in /firmware)

@Jhordies have you noticed any impact to other plugins as a result of this change? I’d be curious specifically about NAM or AidaX

Is anybody else having troubles with the download? I’m seeing estimates of 1.5 to 2.5 days to complete, and the download dies between about 1.5MB and 2.0MB downloaded.

EDIT: I just tried again, and this time it made it to 5.2MB before dying.