This project does NOT follow semantic versioning. The version increases as follows:
- Major version updates are breaking updates to the build infrastructure. These should be very rare.
- Minor version updates are made for every major Buildroot release. This may also include Erlang/OTP and Linux kernel updates. These are made four times a year shortly after the Buildroot releases.
- Patch version updates are made for Buildroot minor releases, Erlang/OTP releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure.
v2.0.3
This is a security and bug fix release.
Changes
- Use https for the backup site
Package updates
v2.0.2
This is a security update.
- Package updates
v2.0.1
This is a security update.
- Package updates
v2.0.0
This is a major update of nerves_system_rpi0_2 that changes the MicroSD/eMMC
layout in order to support automatic rollback of non-working firmware updates.
IMPORTANT This is a one way upgrade. Going back to the old partitioning requires manually reflashing of the RPi's storage.
Previous releases assumed that firmware updates worked. This one requires that
firmware images mark themselves as good using
Nerves.Runtime.validate_firmware/0. See Nerves.Runtime for more information
on this. Firmware not marked as good reverts back to the previous version.
Changes
- Fix camera support by enabling the unicam-legacy Linux device driver
- Enabled multipath TCP support in the Linux kernel
- Deleted all use of
nerves_fw_activesince it was sometimes incorrect and caused confusion - Add gpio-poweroff overlay to support Soleil
Package updates
v1.33.0
This is a major Buildroot and Linux update. It should be seamless for most 1.32.0 users.
Changes
- Refresh
ramoops-overlay.dts. This actually changes the default pstore settings to reserve less DRAM based on experience of not needing nearly as much. Settings can be overridden now via theconfig.txt. - Use EEx to generate the
fwup.conf. This removes a lot of repetition. If you've made a customfwup.conf, please review git commit log for details.
- Refresh
Updated dependencies
v1.32.0
This is a major Erlang and Buildroot update. This updates from Erlang/OTP 27 to Erlang/OTP 28.
Changes
- Remove unneeded call to
rngdand therng-toolspackage. This was formerly needed to provide entropy to Linux during initialization.
- Remove unneeded call to
Package updates
Updated dependencies
v1.31.4
- Changes
- Synchronize and fix Raspberry Pi camera settings
v1.31.3
This is an important security/bug fix that addresses Erlang CVEs for the ssh module (see Erlang release notes).
Package updates
Important derived package updates
v1.31.2
This is a security/bug fix release.
Package updates
Important derived package updates
v1.31.1
This is a security/bug fix release.
- Package updates
- Erlang/OTP 27.3.4.1
- Buildroot 2025.02.3 (fixed 2025.02.2)
- Raspberry Pi WiFi firmware 1:20240709-2~bpo12+1+rpt3
- rpi-libcamera v0.5.0+rpt20250429
- rpicam-apps 1.7.0
- erlinit 1.14.3
- fwup 1.13.0
v1.31.0
This is a major Buildroot update.
Please see the nerves_system_br v1.31.0 release notes for additional information if you've forked this system.
- Updated dependencies
v1.30.1
This is a security/bug fix update.
- Updated dependencies
v1.30.0
This is a major Buildroot update.
Please see the nerves_system_br v1.30.0 release notes for upgrade instructions if you've forked this system.
Changes
- Add REUSE compliance to help improve OSS copyright and licensing accuracy
- Update Raspberry Pi libraries and firmware to latest releases
Updated dependencies
- Erlang/OTP 27.3
- Buildroot 2024.11.2
- Linux 6.6.74 (Raspberry Pi 1.20250127 release)
- rpicam-apps 1.5.3
- rpi-libcamera v0.3.2+rpt20241119
- rpi-distro-firmware-nonfree 1:20230625-2+rpt3
v1.29.1
This is a security/bug fix update.
- Updated dependencies
- nerves_system_br v1.29.3
- Buildroot 2024.08.3
- Erlang/OTP 27.2
- Linux 6.6.64 with the Raspberry Pi and PREEMPT_RT patches
- fwup v1.12.0
v1.29.0
This is a major Erlang and Buildroot update.
Please see the nerves_system_br v1.29.0 release notes for upgrade instructions if you've forked this system.
Changes
- Applied and enabled the Real-Time Linux patch set, PREEMPT_RT. Please see write-ups on the web for benefits and how to use. The impact of this patch shouldn't be noticeable to most Nerves users.
- Switch CPU frequency governor from conservative to the more modern schedutil. See LWN article for details.
- Upgrade
fwup-revert.confto more capablefwup-ops.conf
Updated dependencies
- nerves_system_br v1.29.1
- Buildroot 2024.08.2
- Linux 6.6.51 (Raspberry Pi stable_20241008 release)
v1.28.1
This is a security/bug fix update.
Changes
- Enable libdrm so that camera preview works
Updated dependencies
v1.28.0
This is a major Erlang and Buildroot.
Please see the nerves_system_br v1.28.0 release notes for upgrade instructions if you've forked this system.
Changes
- Elixir 1.17 and Erlang/OTP 27 support
- Reduce copy/pasted definitions in the
fwup.confby extracting them tofwup_include/fwup-common.conf. (No functional changes)
Fixes
- The serial numbers returned by
Nerves.Runtime.serial_number/0now contain the whole serial number. If you forked this system, check theboardid.configanderlinit.configfor the changes and to keep the hostname the same.
- The serial numbers returned by
Updated dependencies
- Linux 6.6.31 (Raspberry Pi stable_20240529 release)
- nerves_system_br v1.28.1
- Buildroot 2024.05
- Erlang/OTP 27.0
v1.27.1
This is a security/bug fix update.
- Package updates
v1.27.0
This is a major Buildroot update.
Please see the nerves_system_br v1.27.0 release notes for upgrade instructions if you've forked this system.
Changes
- The
libcameraandrpicam_appspackages have been replaced with the Raspberry Pi-forked versions for better compatibility. Please seenerves_system_brrelease notes. - Add back
CONFIG_RASPBERRYPI_GPIOMEMto support thedhtlibrary.
- The
Updated dependencies
- Linux 6.1.73 (Raspberry Pi 20240124 release)
- nerves_system_br v1.27.0
- Buildroot 2024.02
- Erlang/OTP 26.2.3
v1.26.0
This is a major Buildroot update.
Please see the nerves_system_br v1.26.0 release notes for upgrade instructions if you've forked this system.
New features
- Add the imx296 overlays for the Raspberry Pi Global Shutter Camera
Updated dependencies
v1.25.1
This is a security/bug fix update.
- Package updates
- Erlang/OTP 26.2.1
- nerves_heart 2.3.0
v1.25.0
This is a major Buildroot and toolchain update that also adds support for using Scenic without customizing the system.
Please see nerves_system_br v1.25.0 release notes for upgrade instructions if you've forked this system.
New features
- Add libcairo for Scenic support
Updated dependencies
v1.24.1
This is a security/bug fix update.
- Package updates
v1.24.0
This is a Buildroot version update that appears to mostly contain bug and security fixes. It should be a low risk upgrade from v1.23.2.
- Updated dependencies
v1.23.2
- Updated dependencies
v1.23.1
This is a bug and security fix update. It should be a low risk upgrade.
Fixes
- Fix CTRL+R over ssh
Updated dependencies
v1.23.0
This is a major update that brings in Erlang/OTP 26, Buildroot 2023.02.2, Linux 6.1, and Raspberry Pi firmware updates.
New features
- The Raspberry Pi cameras now work with libcamera. The libcamera apps are included. See the Raspberry Pi Camera docs.
- CA certificates are included for OTP 26.
Changes
- The
start.elfandfixup.datfiles were renamed tostart4.elfandfixup4.datto be more consistent with the RaspberryPi OS naming.
- The
Updated dependencies
- nerves_system_br v1.23.1
- Buildroot 2023.02.2
- Erlang/OTP 26.0.2
- Linux 6.1.21 (Raspberry Pi Linux tag 1.20230405)
Previous releases
This is a fork of nerves_system_rpi3a. See that project for previous history. The version numbers were kept for convenience.