Skip to content

Releases: nerves-project/nerves

v1.4.1

12 Mar 15:55
Compare
Choose a tag to compare
  • Improvements
    • Improve error message when artifacts can't be found

v1.4.0

25 Jan 16:48
Compare
Choose a tag to compare

Version v1.4.0 adds support for Elixir 1.8's new built-in support for mix
targets. In Nerves, the MIX_TARGET was used to select the appropriate set of
dependencies for a device. This lets you switch between building for different
boards and your host. Elixir 1.8 pulls this support into mix and lets you
annotate dependencies for which targets they should be used.

See the project update guide to learn how to migrate your project.

v1.3.4

19 Nov 15:02
Compare
Choose a tag to compare
  • Bug fixes
    • Fixed issue where specifying build_runner_opts without build_runner
      would prevent build_runner_opts from being set.
    • Allow http_opts to be merged in from the artifact site opts. This fixes
      an issue with downloading artifacts from github enterprise by specifying
      [autoredirect: true] in the artifact site opts.

v1.3.3

05 Nov 20:22
Compare
Choose a tag to compare

v1.3.2

24 Oct 14:04
Compare
Choose a tag to compare
  • Bug fixes
    • Improved handling for burning firmware with Windows Subsystem for Linux.
    • mix nerves.deps.get will raise if a download was incomplete or corrupt
      after trying all resolvers.
    • mix firmware.burn will call mix firmware to ensure the firmware is the
      latest.
    • mix burn was added to allow for burning the latest built firmware without
      calling mix firmware.

v1.3.0

21 Aug 11:51
Compare
Choose a tag to compare

This version adds support for Elixir ~> 1.7 which requires updates to your
Mix project.

Modify the release config

It is required to modify the rel/config.exs file.

Change this:

release :my_app do
  set version: current_version(:my_app)
  plugin Shoehorn
  if System.get_env("NERVES_SYSTEM") do
    set dev_mode: false
    set include_src: false
    set include_erts: System.get_env("ERL_LIB_DIR")
    set include_system_libs: System.get_env("ERL_SYSTEM_LIB_DIR")
    set vm_args: "rel/vm.args"
  end
end

To this:

release :my_app do
  set version: current_version(:my_app)
  plugin Shoehorn
  plugin Nerves
end

Update shoehorn

You will need to update your version of shoehorn to {:shoehorn, "~> 0.4"}.

v1.2.1

21 Aug 11:51
Compare
Choose a tag to compare
  • Enhancements
    • Update minimum required version for fwup to at least 1.2.5

v1.2.0

15 Aug 16:06
Compare
Choose a tag to compare
  • Enhancements
    • Added ability to override provisioning.conf in the project mix config.
      This can be done by setting the key provisioning.

      Example:

      config :nerves, :firmware,
        provisioning: "config/provisioning.conf"
      
      # or delgate it to an app that sets nerves_provisioning: "path/to/file"
      
      config :nerves, :firmware,
        provisioning: :nerves_hub
      
    • Bug Fixes

      • Fix issue with setting provisioning environment vairables when calling
        mix firmware.burn on Linux systems. Environment variables prefixed with
        NERVES_ and the variable SERIAL_NUMBER will be copied into the environment.

v1.1.1

08 Aug 14:15
Compare
Choose a tag to compare
  • Enhancements

    • Updated docs to bump required versions of tools.
  • Bug Fixes

    • Docker build runner
      • Use the version of the nerves_system_br as the tag for the docker image
        to pull by default.
      • Create and set the user id and group id in the docker entrypoint.
        This fixes issues with building buildroot packages that require
        access to the users home folder.

v1.1.0

07 Jul 18:55
Compare
Choose a tag to compare
  • Enhancements

    • mix firmware.burn can run within Windows Subsystem for Linux
    • Added make_args to build_runner_opts

    For example:

    You can configure the number of parallel jobs that buildroot
    can use for execution. This is useful for situations where you may
    have a machine with a lot of CPUs but not enough ram.

    # mix.exs
    defp nerves_package do
      [
        # ...
        build_runner_opts: [make_args: ["PARALLEL_JOBS=8"]],
      ]
    end