- Reorganized variable definitions for clarity and consistency.
- Encapsulated SWU file creation logic into 'create_swu_file' function for better modularity and readability.
- Implemented 'cleanup' function to handle temporary file cleanup, enhancing script robustness.
- Utilized bash array for 'SWUPDATE_FILES' to improve handling of multiple file entries.
- Simplified error handling with 'set -e' and streamlined script exit using 'trap' for cleanup operations.
- Cleaned up directory changing commands by redirecting 'pushd' and 'popd' output to '/dev/null'.
- Encapsulated functionality into functions for better script organization.
- Introduced 'write_os_release' and 'write_machine_info' functions for creating os-release and machine-info files.
- Streamlined Raspberry Pi specific file handling with 'handle_raspberry_pi' function.
- Consolidated script execution within a 'main' function for clearer flow and execution order.
- Improved readability with consistent formatting and added inline comments for clarity.
- Enhanced robustness with comprehensive error checking and streamlined command execution.
- RPI5 not supported yet.
- Streamlined variable declarations for improved readability.
- Added error checking to ensure successful retrieval of the image digest.
- Encapsulated core functionality into 'fetch_and_copy_image' function for better script structure.
- Introduced a 'lock_file' variable to clarify the file locking mechanism.
- Combined 'set' options into a single line and added 'pipefail' for robust error handling.
- Refined comments and structured the script into clearly defined sections.
As the SHA digest is the same for both the amd64 and arm64 arch
we need to download the images for each arch as otherwise it
skips the download and install the wrong arch to the system
from earlier downloaded images.
At the moment these quadlets do not auto start at boot yet.
Still thinking about the best way forward in regards with the upcoming
template support and the overall ovos-containers buildroot package.
- Raspberry Pi: Using the RT patches and select RT as PREEMPT
- Pipewire changes to upvote itself to prio 95% nice -19
- Other small kernel tweaks and fixes
It checks for i2c address of the sound hat first
If found it can be a WM8960 (2-mic) or WM8731 (Mark1) based hat.
It then checks if the right Arduino is connected to the right pins.
If so it assumes a Mark1 device and configures the device.