From 1e62da25193c17a04e528a20095d97f59b9921af Mon Sep 17 00:00:00 2001 From: Anupam Basak <anupam.basak27@gmail.com> Date: Mon, 3 Jun 2024 19:01:09 +0530 Subject: [PATCH] Build zynthbox-qml and zyncoder from dev branches manually --- .gitlab-ci.yml | 71 +++++++++++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 29 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a715b6c..c5c68f3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,9 +15,9 @@ build-zynthbox-image-armhf: - debian_release_name="bookworm" - image_name="zynthbox_rpi4_${debian_release_name}_$(date "+%F_%H%M").img" - - image_name_miko="zynthbox_miko_${debian_release_name}_$(date "+%F_%H%M").img" + - image_name_miko="zynthbox_miko_rpi5_${debian_release_name}_$(date "+%F_%H%M").img" - log_file_name="$image_name.build.log" - - KERN=6.1.54-llat-v7l+ + #- KERN=6.1.54-llat-v7l+ - mountdir=$(mktemp -d) # Ensuring key security @@ -29,33 +29,33 @@ build-zynthbox-image-armhf: - apt-get update - apt-get install -y coreutils p7zip-full qemu-user-static sudo git wget curl python3 lsof fdisk xz-utils openssh-client jq zip - # Build custom base image with Low Latency Kernel - - wget -c --trust-server-names 'https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2024-03-15/2024-03-15-raspios-bookworm-armhf-lite.img.xz' -O ./raspios-${debian_release_name}-armhf-lite.img.xz - - xz -dv ./raspios-${debian_release_name}-armhf-lite.img.xz - - sudo mount -o loop,offset=$(get_partition_start_offset root ./raspios-${debian_release_name}-armhf-lite.img),sizelimit=$(get_partition_size root ./raspios-${debian_release_name}-armhf-lite.img) ./raspios-${debian_release_name}-armhf-lite.img $mountdir - - sudo mount -o loop,offset=$(get_partition_start_offset boot ./raspios-${debian_release_name}-armhf-lite.img),sizelimit=$(get_partition_size boot ./raspios-${debian_release_name}-armhf-lite.img) ./raspios-${debian_release_name}-armhf-lite.img $mountdir/boot - - sudo mount --bind /dev $mountdir/dev - - sudo mount --bind /dev/pts $mountdir/dev/pts - - sudo mount --bind /proc $mountdir/proc - - sudo mount --bind /sys $mountdir/sys - - echo "# Cleaning up old and unused kernels" - - sudo chroot $mountdir apt -yy remove "linux-headers-6.6.2*" "linux-image-6.6.2*" "linux-headers-rpi-v*" "linux-image-rpi-v*" "linux-kbuild-6.6.2*" - - echo "# Installing kernel ${KERN}" - - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-headers-6.1.54-llat-v7l+_6.1.54-1_armhf.deb - - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-image-6.1.54-llat-v7l+_6.1.54-1_armhf.deb - - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-libc-dev_6.1.54-1_armhf.deb - - sudo chroot $mountdir bash -c 'dpkg -i *.deb' - - sudo chroot $mountdir bash -c 'rm -v *.deb' - - sudo chroot $mountdir mkdir -p /boot/$KERN/overlays/ - - sudo chroot $mountdir bash -c "cp -d /usr/lib/linux-image-$KERN/overlays/* /boot/$KERN/overlays/" - - sudo chroot $mountdir bash -c "cp -dr /usr/lib/linux-image-$KERN/* /boot/$KERN/" - - sudo chroot $mountdir touch /boot/$KERN/overlays/README - - sudo chroot $mountdir mv /boot/vmlinuz-$KERN /boot/$KERN/ - - sudo chroot $mountdir mv /boot/System.map-$KERN /boot/$KERN/ - - sudo chroot $mountdir cp /boot/config-$KERN /boot/$KERN/ - - sudo umount $mountdir/boot/ $mountdir/dev/pts $mountdir/dev/ $mountdir/proc/ $mountdir/sys/ - - sudo umount $mountdir - - zip ./raspios-${debian_release_name}-armhf-lite.img.zip ./raspios-${debian_release_name}-armhf-lite.img + # # Build custom base image with Low Latency Kernel + # - wget -c --trust-server-names 'https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2024-03-15/2024-03-15-raspios-bookworm-armhf-lite.img.xz' -O ./raspios-${debian_release_name}-armhf-lite.img.xz + # - xz -dv ./raspios-${debian_release_name}-armhf-lite.img.xz + # - sudo mount -o loop,offset=$(get_partition_start_offset root ./raspios-${debian_release_name}-armhf-lite.img),sizelimit=$(get_partition_size root ./raspios-${debian_release_name}-armhf-lite.img) ./raspios-${debian_release_name}-armhf-lite.img $mountdir + # - sudo mount -o loop,offset=$(get_partition_start_offset boot ./raspios-${debian_release_name}-armhf-lite.img),sizelimit=$(get_partition_size boot ./raspios-${debian_release_name}-armhf-lite.img) ./raspios-${debian_release_name}-armhf-lite.img $mountdir/boot + # - sudo mount --bind /dev $mountdir/dev + # - sudo mount --bind /dev/pts $mountdir/dev/pts + # - sudo mount --bind /proc $mountdir/proc + # - sudo mount --bind /sys $mountdir/sys + # - echo "# Cleaning up old and unused kernels" + # - sudo chroot $mountdir apt -yy remove "linux-headers-6.6.2*" "linux-image-6.6.2*" "linux-headers-rpi-v*" "linux-image-rpi-v*" "linux-kbuild-6.6.2*" + # - echo "# Installing kernel ${KERN}" + # - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-headers-6.1.54-llat-v7l+_6.1.54-1_armhf.deb + # - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-image-6.1.54-llat-v7l+_6.1.54-1_armhf.deb + # - sudo chroot $mountdir wget https://github.com/kdoren/linux/releases/download/rpi_6.1.54/linux-libc-dev_6.1.54-1_armhf.deb + # - sudo chroot $mountdir bash -c 'dpkg -i *.deb' + # - sudo chroot $mountdir bash -c 'rm -v *.deb' + # - sudo chroot $mountdir mkdir -p /boot/$KERN/overlays/ + # - sudo chroot $mountdir bash -c "cp -d /usr/lib/linux-image-$KERN/overlays/* /boot/$KERN/overlays/" + # - sudo chroot $mountdir bash -c "cp -dr /usr/lib/linux-image-$KERN/* /boot/$KERN/" + # - sudo chroot $mountdir touch /boot/$KERN/overlays/README + # - sudo chroot $mountdir mv /boot/vmlinuz-$KERN /boot/$KERN/ + # - sudo chroot $mountdir mv /boot/System.map-$KERN /boot/$KERN/ + # - sudo chroot $mountdir cp /boot/config-$KERN /boot/$KERN/ + # - sudo umount $mountdir/boot/ $mountdir/dev/pts $mountdir/dev/ $mountdir/proc/ $mountdir/sys/ + # - sudo umount $mountdir + # - zip ./raspios-${debian_release_name}-armhf-lite.img.zip ./raspios-${debian_release_name}-armhf-lite.img # Clone repositories required to generate zynthbox image - echo "# Clone repositories required to generate zynthbox image" @@ -99,6 +99,19 @@ build-zynthbox-image-armhf: - sudo chroot $mountdir apt install zynthbox-z2-setup - sudo chroot $mountdir apt -y clean - sudo chroot $mountdir rm -rf /var/lib/apt/lists/* + - | + set -x + cat << EOF | sudo chroot $mountdir + cd /zynthian + rm -rf zynthbox-qml + git clone https://github.com/zynthbox/zynthbox-qml.git -b dev-rpi5 + apt install libgpiod-dev + git clone https://github.com/zynthbox/zyncoder.git -b dev-rpi5-libgpiod + mkdir -P zyncoder/build + cd zyncoder/build + ZYNTHIAN_WIRING_LAYOUT="Z2_V2" cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo + make -j$(nproc) install + EOF - sudo umount $mountdir/boot/ $mountdir/dev/pts $mountdir/dev/ $mountdir/proc/ $mountdir/sys/ - sudo umount $mountdir # Compress miko image -- GitLab