-
Notifications
You must be signed in to change notification settings - Fork 29
update the Raspbian to Debian 12 Bookworm to support Raspi 5 #100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
5e2efd6 to
79db124
Compare
6e71980 to
767ecf1
Compare
a449898 to
b2cf35c
Compare
ec690b2 to
fb1d76a
Compare
2fb0891 to
fb1d76a
Compare
|
Issue #92 can be linked to this PR! (I don't have rights to do this.) |
6620272 to
3f3b962
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request updates the Raspbian image from Debian Buster to Debian 12 Bookworm, primarily to add support for Raspberry Pi 5. The changes involve updating the image URL, adjusting package installations, and modifying APT sources for the new distribution.
Overall, the changes align with the goal of supporting Bookworm. However, there are a few critical and medium severity issues that need addressing, particularly concerning the validity of the new image URL and a typo in a script. Additionally, some dependency changes require clarification.
Summary of Findings
- Potentially Invalid Raspberry Pi OS Image URL: The
RASPIOS_URLinscript/make-raspbian.bash(line 91) points to an image dated2024-11-19, which appears to be a future date. This URL might be invalid and needs verification to ensure it points to a stable, released Bookworm image. - Critical Typo in Script Execution Permissions: A typo
chmoginstead ofchmodexists inscript/otbr-setup.bash(line 257). This will prevent/etc/rc.localfrom being made executable, which is a critical failure for its intended operation. - Unclear Rationale for
DHCPV6_PD_REF=1Removal: TheDHCPV6_PD_REF=1option was removed inscript/otbr-setup.bash(e.g., former line 178) forREFERENCE_RELEASE_TYPE="1.4"builds. Clarification is needed on whether this is intentional due to deprecation, incompatibility with Bookworm, or other reasons. - Unclear Rationale for
PyGObjectRemoval: ThePyGObjectPython package installation was removed fromscript/otbr-setup.bash(former line 235). The reason for this removal (e.g., no longer needed, transitive dependency, conflicts) should be clarified. - Risk from Unpinned
nrfutilVersion: ThenrfutilPython package version was unpinned inscript/otbr-setup.bash(line 247). This could lead to future build instabilities if newernrfutilversions introduce breaking changes. Confirmation of intent and testing is advised. - Python Virtual Environment Adoption: The introduction of a Python virtual environment (
.venv-otbr) inscript/otbr-setup.bash(lines 225-226) is a good practice for dependency management. - Updated
wiringpiInstallation Method: The change inscript/otbr-setup.bash(lines 250-251) to installwiringpivia direct download anddpkgis a necessary adaptation for Debian Bookworm, aswiringpiis often not available in standard APT repositories for newer OS versions. - Minor Stylistic Changes (Not commented due to settings): Some minor stylistic changes were made, such as adding blank lines in
README.md(lines 48, 56) and adjusting spacing in acasestatement inscript/make-firmware.bash(line 187). These improve readability but were not commented on directly due to review settings instructing to only comment on medium, high, or critical issues.
Merge Readiness
This pull request makes important updates for Debian Bookworm support. However, due to the critical issues identified (potentially invalid image URL and a script typo), and several medium-severity items requiring clarification, I recommend that these changes be addressed before merging. I am unable to approve pull requests, but based on this review, changes are requested. Please ensure these points are resolved and the build process is thoroughly tested with the corrected scripts and a valid image URL.
987a1bb to
f40f682
Compare
e2debc4 to
e99c509
Compare
|
The CI build error here looks like the one I've commented on here: #126 (comment) ; it now affects builds on every OS I tried except Ubuntu 20.04. |
28805ff to
2f36ec4
Compare
9203827 to
8de02ca
Compare
aabc1ff to
78a7681
Compare
9e47a82 to
0f5656f
Compare
0f5656f to
5b1ec9b
Compare
This PR updates the Raspbian OS from Debian 10 Buster to Debian 12 Bookworm. This change is necessary to add support for the Raspberry Pi 5, which requires the Bookworm release.
This OS update introduces several related changes:
Python Virtual Environment: Debian 12 enforces PEP 668, which prevents the installation of Python packages into the system-wide environment using pip. To comply with this, the setup script now creates and uses a Python virtual environment (venv) for installing dependencies.
Updated China Mirror: The APT source for the Tsinghua mirror has been updated to point to the bookworm repositories, ensuring users in China can download packages efficiently.
Prefix Delegation Configuration: For Thread 1.4 builds, the configuration is updated to use the OpenThread DHCPv6 PD client (
OTBR_DHCP6_PD_CLIENT=openthread), andsystemd-networkdwith its internal PD client disabled, for Thread PD.