Releases: nerves-project/nerves
v1.7.4
- Experimental features
- Packages can provide custom system environment variables to be exported.
The initial use case for this feature is to export system specific
information for llvm-based tools.
- Packages can provide custom system environment variables to be exported.
v1.6.6
v1.7.3
- Bug fixes
-
Fixes a hang when downloading artifacts from GitHub. The hang looked like
this and affected artifact downloads from public GitHub repositories:Resolving Nerves artifacts... Resolving nerves_toolchain_xyz => Trying https:...
-
v1.7.2
v1.7.1
- Enhancements
- Documentation and docker improvements for Windows Subsystem for Linux 2
v1.7.0
Nerves 1.7.0 removes support for creating OTP releases using Distillery and
only supports using Elixir releases. As a result, the minimum supported version
of Elixir is now version 1.9.
Official Nerves systems now support applying firmware using patches. This
greatly reduces the amount of data that required to push firmware updates
to devices. The minimum requirement for fwup has been updated to 1.8
to enable support for this feature.
- Bug fixes
- Pass all unspecified erlinit args to the generator instead of silently
ignoring them. - Use host CC when compiling the port.
- Pass all unspecified erlinit args to the generator instead of silently
v1.6.5
- Bug fixes
- Fix issues with executing system commands on non mac hosts.
v1.6.4
-
Experimental features
-
Added
mix firmware.patch
to locally create firmware patch files for
feature testing. This feature is under development.
See the experimental features doc for more info. -
Added
:mksquashfs_flags
to the nerves firmware config to allow passing
additional flags to themksquashfs
call that produces the final rootfs.
If you are experimenting with creating patchable firmware, you should
use this feature to disable squashfs compression.config :nerves, :firmware mksquashfs_flags: ["-noI", "-noD", "-noF", "-noX"]
-
-
Bug fixes
- Replace calls to
System.cmd
with aNerves.Port.cmd
. This code was
provided bymuontrap
and is used to clean up spawned system processes
when the vm exits.
This fixes issues with the docker build runner executing multiple times
and multiple calls tomix firmware
after breaking out of the VM before
the first call finishes. - Fix issue where SD card detection may fail while calling
mix burn
whenfwup
returns additional fields. - Clean the release directory when calling
mix firmware
. This prevents
OTP releases from accumulating unnecessary libraries and OTP applications
over time.
- Replace calls to
v1.6.3
- Bug fixes
- Fix required key validation on github_api resolver.
v1.6.2
-
Bug fixes
-
Improve error message returned when calling
mix firmware
when the local
system artifact cannot be found and possibly needs to be built. -
GitHub API artifact resolver will no longer raise if missing required opts.
The GitHub API artifact resolver is useful when you want to enable access
to artifacts added to GitHub releases in private GitHub repositories.
Fetching an artifact from a private GitHub repo requires the passing
username, token, tag
as options. If any of these options were omitted,
the resolver would raise and prevent compilation from continuing.
This is problematic when you are trying to actually compile the system
in CI. Artifact resolvers should make a best effort on downloading the
artifacts, and return{:error, reason}
if they are unsuccessful. This
will allow the system to fall back to performing a compile. -