From 5d77207b664badfb238aed356f143936961864fe Mon Sep 17 00:00:00 2001 From: "Geoffrey D. Bennett" Date: Thu, 11 Apr 2024 17:53:39 +0930 Subject: [PATCH] Download and include scarlett2 firmware in flatpak Fixes: #112. --- src/scarlett2-firmware.c | 7 ++++++- vu.b4.alsa-scarlett-gui.yml | 12 ++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/scarlett2-firmware.c b/src/scarlett2-firmware.c index d46362d..9f14263 100644 --- a/src/scarlett2-firmware.c +++ b/src/scarlett2-firmware.c @@ -265,7 +265,12 @@ static void enum_firmware_dir(const char *dir_name) { void scarlett2_enum_firmware(void) { init_best_firmware(); - enum_firmware_dir(SCARLETT2_FIRMWARE_DIR); + + const char *fw_dir = getenv("SCARLETT2_FIRMWARE_DIR"); + + if (!fw_dir) + fw_dir = SCARLETT2_FIRMWARE_DIR; + enum_firmware_dir(fw_dir); } uint32_t scarlett2_get_best_firmware_version(uint32_t pid) { diff --git a/vu.b4.alsa-scarlett-gui.yml b/vu.b4.alsa-scarlett-gui.yml index 11288be..a51fd2d 100644 --- a/vu.b4.alsa-scarlett-gui.yml +++ b/vu.b4.alsa-scarlett-gui.yml @@ -14,6 +14,8 @@ finish-args: - --socket=wayland # Needs access to ALSA device nodes: - --device=all + # Point to the firmware directory + - --env=SCARLETT2_FIRMWARE_DIR=/app/lib/firmware/scarlett2 modules: - name: alsa-scarlett-gui buildsystem: simple @@ -26,3 +28,13 @@ modules: # - type: git # url: https://github.com/geoffreybennett/alsa-scarlett-gui.git # tag: "0.2" + + - name: scarlett2-firmware + buildsystem: simple + build-commands: + - mkdir -p $FLATPAK_DEST/lib/firmware/scarlett2 + - cp -a LICENSE.Focusrite firmware/* $FLATPAK_DEST/lib/firmware/scarlett2 + sources: + - type: archive + url: https://github.com/geoffreybennett/scarlett2-firmware/archive/refs/tags/2128b.tar.gz + sha256: 4a17fdbe2110855c2f7f6cfc5ea1894943a6e58770f3dff5ef283961f8ae2a03