From dca93d24c7dfb943d84601d2bc4a089f9b66b87f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Le=20Ray?= Date: Tue, 9 Jul 2024 11:08:38 +0200 Subject: [PATCH 01/10] README: add specific stage build for Docker (#777) --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 53e1fb9..71be938 100644 --- a/README.md +++ b/README.md @@ -392,7 +392,8 @@ follows: * Run build.sh to build all stages * Add SKIP files to the earlier successfully built stages * Modify the last stage - * Rebuild just the last stage using ```sudo CLEAN=1 ./build.sh``` + * Rebuild just the last stage using ```sudo CLEAN=1 ./build.sh``` (or, for docker builds + ```PRESERVE_CONTAINER=1 CONTINUE=1 CLEAN=1 ./build-docker.sh```) * Once you're happy with the image you can remove the SKIP_IMAGES files and export your image to test From 21e8e54d22e2db7382aa3788c98489580f80b28a Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Tue, 23 Jul 2024 13:39:53 +0100 Subject: [PATCH 02/10] export-image: generate sbom file if syft is available --- export-image/05-finalise/01-run.sh | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/export-image/05-finalise/01-run.sh b/export-image/05-finalise/01-run.sh index 771aa7a..89c60b9 100755 --- a/export-image/05-finalise/01-run.sh +++ b/export-image/05-finalise/01-run.sh @@ -2,6 +2,7 @@ IMG_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.img" INFO_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.info" +SBOM_FILE="${STAGE_WORK_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.sbom" sed -i 's/^update_initramfs=.*/update_initramfs=all/' "${ROOTFS_DIR}/etc/initramfs-tools/update-initramfs.conf" @@ -61,10 +62,8 @@ if ! [ -L "${ROOTFS_DIR}/boot/issue.txt" ]; then ln -s firmware/issue.txt "${ROOTFS_DIR}/boot/issue.txt" fi - cp "$ROOTFS_DIR/etc/rpi-issue" "$INFO_FILE" - { if [ -f "$ROOTFS_DIR/usr/share/doc/raspberrypi-kernel/changelog.Debian.gz" ]; then firmware=$(zgrep "firmware as of" \ @@ -83,6 +82,14 @@ cp "$ROOTFS_DIR/etc/rpi-issue" "$INFO_FILE" dpkg -l --root "$ROOTFS_DIR" } >> "$INFO_FILE" +if hash syft 2>/dev/null; then + syft scan dir:"${ROOTFS_DIR}" \ + --base-path="${ROOTFS_DIR}" \ + --source-name="${IMG_NAME}${IMG_SUFFIX}" \ + --source-version="${IMG_DATE}" \ + -o spdx-json="${SBOM_FILE}" +fi + ROOT_DEV="$(awk "\$2 == \"${ROOTFS_DIR}\" {print \$1}" /etc/mtab)" unmount "${ROOTFS_DIR}" @@ -115,4 +122,7 @@ none | *) ;; esac +if [ -f "${SBOM_FILE}" ]; then + xz -c "${SBOM_FILE}" > "$DEPLOY_DIR/image_$(basename "${SBOM_FILE}").xz" +fi cp "$INFO_FILE" "$DEPLOY_DIR/" From 7fe9ae553c26acf359e2073a09d795ee84205239 Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Tue, 27 Aug 2024 13:00:07 +0100 Subject: [PATCH 03/10] stage3: Switch chromium package and remove unnecessary steps --- stage3/00-install-packages/00-debconf | 2 -- stage3/00-install-packages/00-packages | 2 +- stage3/00-install-packages/01-run.sh | 8 ++------ 3 files changed, 3 insertions(+), 9 deletions(-) delete mode 100644 stage3/00-install-packages/00-debconf diff --git a/stage3/00-install-packages/00-debconf b/stage3/00-install-packages/00-debconf deleted file mode 100644 index 7dbd12e..0000000 --- a/stage3/00-install-packages/00-debconf +++ /dev/null @@ -1,2 +0,0 @@ -# Adobe Flash Player. Copyright 1996-2015. Adobe Systems Incorporated. All Rights Reserved. -rpi-chromium-mods rpi-chromium-mods/adobe note diff --git a/stage3/00-install-packages/00-packages b/stage3/00-install-packages/00-packages index 69f8c45..002a32c 100644 --- a/stage3/00-install-packages/00-packages +++ b/stage3/00-install-packages/00-packages @@ -5,7 +5,7 @@ git policykit-1 gvfs rfkill -chromium-browser rpi-chromium-mods libwidevinecdm0 +chromium rpi-chromium-mods libwidevinecdm0 firefox rpi-firefox-mods gldriver-test fonts-droid-fallback diff --git a/stage3/00-install-packages/01-run.sh b/stage3/00-install-packages/01-run.sh index 0e8248d..7fb0f4b 100755 --- a/stage3/00-install-packages/01-run.sh +++ b/stage3/00-install-packages/01-run.sh @@ -1,9 +1,5 @@ #!/bin/bash -e -on_chroot << EOF -update-alternatives --install /usr/bin/x-www-browser \ - x-www-browser /usr/bin/chromium-browser 86 -update-alternatives --install /usr/bin/gnome-www-browser \ - gnome-www-browser /usr/bin/chromium-browser 86 - apt-mark auto python3-pyqt5 python3-opengl +on_chroot <<- EOF + apt-mark auto python3-pyqt5 python3-opengl EOF From 40a5c1ceed18a669cc59957e8be94d708a75b39a Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 11 Sep 2024 13:38:16 +0100 Subject: [PATCH 04/10] stage3: switch to labwc by default --- stage4/06-enable-wayland/00-run.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stage4/06-enable-wayland/00-run.sh b/stage4/06-enable-wayland/00-run.sh index bd8bbc3..d1f240d 100755 --- a/stage4/06-enable-wayland/00-run.sh +++ b/stage4/06-enable-wayland/00-run.sh @@ -1,5 +1,5 @@ #!/bin/bash -e on_chroot << EOF - SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_wayland W2 + SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_wayland W3 EOF From a766e71ff141aba2556599db8f860dbf393b160d Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 11 Sep 2024 13:39:38 +0100 Subject: [PATCH 05/10] stage3: switch from arandr to raindrop --- stage3/00-install-packages/00-packages | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stage3/00-install-packages/00-packages b/stage3/00-install-packages/00-packages index 002a32c..329b6fe 100644 --- a/stage3/00-install-packages/00-packages +++ b/stage3/00-install-packages/00-packages @@ -11,7 +11,7 @@ gldriver-test fonts-droid-fallback fonts-liberation2 obconf -arandr +raindrop libcamera-tools rpicam-apps python3-picamera2 From 674c30e864b298ab036a6c8bd0b1037cef87aedd Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 18 Sep 2024 13:53:46 +0100 Subject: [PATCH 06/10] Replace python3-rpi.gpio with python3-rpi-lgpio --- stage2/01-sys-tweaks/00-packages | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stage2/01-sys-tweaks/00-packages b/stage2/01-sys-tweaks/00-packages index 93a69be..f06f7d0 100644 --- a/stage2/01-sys-tweaks/00-packages +++ b/stage2/01-sys-tweaks/00-packages @@ -5,7 +5,7 @@ python-is-python3 v4l-utils gpiod python3-libgpiod python3-gpiozero -pigpio python3-pigpio raspi-gpio python3-rpi.gpio +pigpio python3-pigpio raspi-gpio python3-rpi-lgpio python3-spidev python3-smbus2 avahi-daemon From 8f88b83a9a376d0488b59f4c34d9b67bd6d18c6e Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Mon, 23 Sep 2024 15:21:08 +0100 Subject: [PATCH 07/10] stage4: install squeekboard --- stage4/00-install-packages/00-packages | 1 + 1 file changed, 1 insertion(+) diff --git a/stage4/00-install-packages/00-packages b/stage4/00-install-packages/00-packages index ebd1af4..511941c 100644 --- a/stage4/00-install-packages/00-packages +++ b/stage4/00-install-packages/00-packages @@ -21,6 +21,7 @@ vlc rpi-connect rpi-imager labwc +squeekboard # ninja-build and openocd needed for vscode pico extension meson openocd From 9e65ea75d85cebae98d3f303d4cad8e50d11decb Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Thu, 26 Sep 2024 17:51:36 +0100 Subject: [PATCH 08/10] Update release notes --- .../00-release/files/release_notes.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/export-noobs/00-release/files/release_notes.txt b/export-noobs/00-release/files/release_notes.txt index 3512df2..73ee6e9 100644 --- a/export-noobs/00-release/files/release_notes.txt +++ b/export-noobs/00-release/files/release_notes.txt @@ -1,4 +1,22 @@ UNRELEASED: + * labwc compositor now used as the default on all models of Raspberry Pi + * wf-panel-pi now loads plugins dynamically at runtime + * New raindrop screen configuration tool to replace arandr + * squeekboard on-screen keyboard installed; will automatically run on systems with touchscreens, and can be manually enabled in rc-gui for others + * Update installer moved out of panel code into separate gui-updater package + * Missing cursors added to icon theme + * Wizard no longer auto-pairs Bluetooth HID devices by default - create the file "/boot/firmware/btautopair" to enable, or reboot wizard after first run + * Safety info URL added to main menu + * Various memory leaks in pcmanfm fixed + * Bug fix - crash when running Appearance Settings on headless systems + * Bug fix - crash when opening icon chooser in application properties dialog + * Translations updated + * RPi.GPIO replaced with rpi-lgpio + * Chromium updated to 129.0.6668.89 + * Firefox updated to 131.0 + * Raspberry Pi firmware a2e586ba98ce68f7d11b1c717ad8329b95dcb3b6 + * Linux kernel 6.6.51 - 82a50e430ef1d6eb37d78e25aa572c1f6ea56160 +2024-07-04: * pipanel - allow customisation of more than 2 desktops * pipanel - add customisation for labwc * gui-pkinst - add whitelist to restrict installation to specified packages only From f165f8a3a8c8b286a73cd4d3316b583ad38ba466 Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Mon, 28 Oct 2024 08:11:44 +0000 Subject: [PATCH 09/10] Update release notes --- .../00-release/files/release_notes.txt | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/export-noobs/00-release/files/release_notes.txt b/export-noobs/00-release/files/release_notes.txt index 73ee6e9..c95afa5 100644 --- a/export-noobs/00-release/files/release_notes.txt +++ b/export-noobs/00-release/files/release_notes.txt @@ -2,20 +2,30 @@ UNRELEASED: * labwc compositor now used as the default on all models of Raspberry Pi * wf-panel-pi now loads plugins dynamically at runtime * New raindrop screen configuration tool to replace arandr - * squeekboard on-screen keyboard installed; will automatically run on systems with touchscreens, and can be manually enabled in rc-gui for others + * squeekboard on-screen keyboard installed; will automatically run on systems + with touchscreens, and can be manually enabled in rc-gui for others + * Improved support for touchscreens - long press for right-click, and + double-tap for double-click * Update installer moved out of panel code into separate gui-updater package * Missing cursors added to icon theme - * Wizard no longer auto-pairs Bluetooth HID devices by default - create the file "/boot/firmware/btautopair" to enable, or reboot wizard after first run + * Wizard no longer auto-pairs Bluetooth HID devices by default - create the + file "/boot/firmware/btautopair" to enable, or reboot wizard after first run + * Modified handling of Pi 5 power button to reduce CPU load when in shutdown + dialog + * Raspberry Pi Connect now controlled by dedicated panel plugin instead of + system tray icon and option in rc-gui + * Screen sharing in Raspberry Pi Connect now available as soon as a running + WayVNC server is detected * Safety info URL added to main menu + * Chromium package renamed from chromium-browser to chromium * Various memory leaks in pcmanfm fixed * Bug fix - crash when running Appearance Settings on headless systems * Bug fix - crash when opening icon chooser in application properties dialog * Translations updated - * RPi.GPIO replaced with rpi-lgpio - * Chromium updated to 129.0.6668.89 - * Firefox updated to 131.0 + * Chromium updated to 130.0.6723.58 + * Firefox updated to 131.0.3 * Raspberry Pi firmware a2e586ba98ce68f7d11b1c717ad8329b95dcb3b6 - * Linux kernel 6.6.51 - 82a50e430ef1d6eb37d78e25aa572c1f6ea56160 + * Linux kernel 6.6.51 - 5aeecea9f4a45248bcf564dec924965e066a7bfd 2024-07-04: * pipanel - allow customisation of more than 2 desktops * pipanel - add customisation for labwc From 9dfbb1546db161697dcba1038aabebeb076b0942 Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Mon, 28 Oct 2024 08:26:59 +0000 Subject: [PATCH 10/10] Update release notes --- export-noobs/00-release/files/release_notes.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/export-noobs/00-release/files/release_notes.txt b/export-noobs/00-release/files/release_notes.txt index c95afa5..e905541 100644 --- a/export-noobs/00-release/files/release_notes.txt +++ b/export-noobs/00-release/files/release_notes.txt @@ -1,4 +1,6 @@ UNRELEASED: + * +2024-10-22: * labwc compositor now used as the default on all models of Raspberry Pi * wf-panel-pi now loads plugins dynamically at runtime * New raindrop screen configuration tool to replace arandr