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.
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.
- Updated dependencies
- nerves_system_br v1.29.1
- Buildroot 2024.08.2
- Linux 5.4.284
This is a security/bug fix update.
- Updated dependencies
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.conf
by extracting them tofwup_include/fwup-common.conf
. (No functional changes)
-
Fixes
- The serial numbers returned by
Nerves.Runtime.serial_number/0
now contain the whole serial number. If you forked this system, check theboardid.config
anderlinit.config
for the changes and to keep the hostname the same.
- The serial numbers returned by
-
Updated dependencies
This is a security/bug fix update.
-
Changes
- Enable the
wpa_supplicant
option for allow wired 802.1x authentication
- Enable the
-
Package updates
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.
- Updated dependencies
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.
- Updated dependencies
This is a security/bug fix update.
Package updates
This is a major Buildroot and toolchain update.
Please see nerves_system_br v1.25.0 release notes for upgrade instructions if you've forked this system.
- Updated dependencies
This is a security/bug fix update.
- Package updates
This is a Buildroot version update that appears to mostly contain bug and security fixes. It should be a low risk upgrade from v0.14.2.
- Updated dependencies
- Updated dependencies
This is a bug and security fix update. It should be a low risk upgrade.
-
Fixes
- Fix CTRL+R over ssh
-
Updated dependencies
This is a major update that brings in Erlang/OTP 26 and Buildroot 2023.02.2.
-
New features
- CA certificates are included for OTP 26.
-
Updated dependencies
This is a bug and security fix update. It should be a low risk upgrade.
- Updated dependencies
This is a bug fix and Erlang version bump from 25.2 to 25.2.3. It should be a low risk upgrade.
-
Fixes
- Set Erlang crash dump timer to 5 seconds, so if an Erlang crash dump does happen, it will run for at most 5 seconds. See erlinit.conf.
-
Updated dependencies
This is a Buildroot version update that appears to mostly contain bug and security fixes. It should be a low risk upgrade.
- Updated dependencies
-
Changes
- Two Buildroot patch updates and an Erlang minor version update
- Nerves Heart v2.0 is now included. Nerves Heart connects the Erlang runtime to a hardware watchdog. v2.0 has numerous updates to improve information that you can get and also has more safeguards to avoid conditions that could cause a device to hang forever.
-
Updated dependencies
-
Changes
- Fix regression when building on x86_64 Linux where wrong toolchain was used.
-
Updated dependencies
-
Changes
- Support aarch64 Linux builds
- Add libdtc to support runtime loading of device tree overlays
-
Updated dependencies
- Updated dependencies
- Updated dependencies
This release updates to Buildroot 2022.05 and uses GCC 11.3 (from GCC 10.3).
- Updated dependencies
This release updates to Buildroot 2022.02.1 and OTP 25.0. While this should be an easy update for most projects, many programs have been updated. Please review the changes in the updated dependencies for details.
- Updated dependencies
This release bumps Erlang to 24.3.2 and should be a low risk upgrade from the previous release.
- Updated dependencies
This is a Buildroot and Erlang bug and security fix release. It should be a low risk upgrade from the previous release.
- Updated dependencies
This is a Buildroot and Erlang bug fix release. It should be a low risk upgrade from the previous release.
-
Updated dependencies
-
Changes
- Specify CPU-specific flags when compiling NIFs and ports. This fixes an issue where some optimizations could not be enabled in NIFs even though it should be possible to have them. E.g., ARM NEON support for CPUs that have it.
-
Updated dependencies
-
Changes
- Programs that use OpenMP will run now. The OpenMP shared library
(
libgomp.so
) was supplied by the toolchain, but not copied.
- Programs that use OpenMP will run now. The OpenMP shared library
(
This release updates to Buildroot 2021.11 and OTP 24.2. If you have made a
custom system, please review the nerves_system_br
release
notes.
-
Updated dependencies
-
Improvements
- Support for the
dl.nerves-project.org
backup site. Due to a GitHub outage in November, there was a 2 day period of failing builds since some packages could not be downloaded. We implemented the backup site to prevent this in the future. This update is in thenerves_defconfig
. - Use new build ORB on CircleCI. This ORB will shorten build times to fit in CircleCI's new free tier limits. Please update if building your own systems.
- Support for the
- Updated dependencies
- Updated dependencies
This is a security/bug fix patch release. It should be safe to update for everyone.
-
Updated dependencies
-
Improvements
- Include software versioning and licensing info (see legal-info directory in artifact)
This release updates to Buildroot 2021.08 and OTP 24.1. If you have made a
custom system off this one, please review the nerves_system_br v1.17.0
release
notes.
- Updated dependencies
This release updates Erlang/OTP from 24.0.3 to 24.0.5 and Buildroot from 2021.05 to 2021.05.1. Both of these are security/bug fix updates. This is expected to be a safe upgrade from v1.16.1 for all users.
-
Updated dependencies
-
Improvements
- Beta support for using a
runtime.exs
script for runtime configuration. - Added a
provision
task to thefwup.config
to enable re-provisioning a MicroSD card without changing its contents. - Adds a default
/etc/sysctl.conf
that enables use of ICMP in Erlang. This requiresnerves_runtime v0.11.5
or later to automatically load the sysctl variables. With it using:gen_udp
to send/receive ICMP will "just work". It also makes it easier to add other sysctl variables if needed.
- Beta support for using a
This release updates Nerves Toolchains to v1.4.3 and OTP 24.0.3. It should be safe for everyone to apply.
- Updated dependencies
This release updates to Buildroot 2021.05 and OTP 24.0.2. If you have made a
custom system off this one, please review the nerves_system_br v1.16.0
release
notes.
-
Updated dependencies
-
Improvements
- This release now contains debug symbols and includes the Build-ID in the ELF headers. This makes it easier to get stack traces from C programs. As before, the Nerves tooling strips all symbols from firmware images, so this won't make programs bigger.
- Enable compile-time
wpa_supplicant
options to support WPA3, mesh networking, WPS and autoscan.
This is a security/bug fix release that updates to Buildroot 2021.02.1 and OTP 23.3.1. It should be safe for everyone to apply.
- Updated dependencies
This release updates to Buildroot 2021.02 and OTP 23.2.7. If you have made a
custom system off this one, please review the nerves_system_br v1.15.0
release
notes.
The Nerves toolchain has also been updated to v1.4.2. This brings in Linux 4.14 headers to enable use of cdev and eBPF. This won't affect most users.
- Updated dependencies
This release updates to Buildroot 2020.11.2, GCC 10.2 and OTP 23.2.4.
When migrating custom systems based, please be aware of the following important changes:
-
There's a new
getrandom
syscall that is made early in BEAM startup. This has the potential to block the BEAM before Nerves can startrngd
to provide entropy. We have not seen this issue here, but have updatederlinit.config
for the time being as a precaution. -
The GCC 10.2.0 toolchain has a different name that calls out "nerves" as the vendor and the naming is now more consistent with other toolchain providers.
-
Experimental support for tooling that requires more information about the target has been added. The initial support focuses on zigler.
-
Updated dependencies
This is a bug fix release and contains no major changes.
- Updated dependencies
This release includes a patch release update to Buildroot 2020.08.2.
- Updated dependencies
-
Updated dependencies
-
Improvements
- Enabled reproducible builds in Buildroot to remove some timestamp and build path differences in firmware images. This helps delta firmware updates.
This release updates to Buildroot 2020.08 and OTP 23.1.1.
-
Updated dependencies
-
New features
- Added support for updating the root filesystem using firmware patches. See the firmware patch docs for more information.
This release updates to Buildroot 2020.05.1 and OTP 23.0.3 which are both bug fix releases.
-
Updated dependencies
-
New features
- The
/data
directory now exists for storing application-specific data. It is currently a symlink to/root
. Using/data
will eventually be encouraged over/root
even though currently there is no advantage. This change makes it possible to start migrating paths in applications and libraries.
- The
-
Fixes
- Fixed old references to the
-Os
compiler flag. All C/C++ code will default to using-O2
now.
- Fixed old references to the
- Fixes
- Remove
nerves_system_linter
from hex package. This fixes mix dependency errors in projects that reference systems with differentnerves_system_linter
dependency specs.
- Remove
This release updates the system to use Buildroot 2020.05 and Erlang/OTP 23. Please see the respective release notes for updates and deprecations in both projects for changes that may affect your application.
-
New features
- Enable WiFi mesh support in the 802.11 stack
-
Updated dependencies
- Updated dependencies
- Initial release
- nerves_system_br v1.11.4
- Erlang 22.3.4.1
- fwup 1.7.0