nerves_livebook
nerves_livebook copied to clipboard
Support Mix.install for projects without native code
Currently Mix.install isn't supported, but it would be great to make it possible pull in some dependencies. Nerves doesn't include C compilers, headers, etc. to compile any native code, so that's not an option. However, it seems like pure Elixir and Erlang projects should build.
To try Mix.install, you'll need to add :mix and :hex to the mix.exs's :extra_applications so that they're included. You'll also need to comment out -mode embedded in the vm.args.eex file. However, there are more issues:
- Dependencies of dependencies are compiled even if they're available. For example, most Nerves libraries have a dependency on some library with native code so you can't try those. (I don't think this is a blocker since there are still many libraries left)
- It seems like you get one
Mix.installerror and then you need to reboot. I'm not sure what's going on here.
It seems like you get one Mix.install error and then you need to reboot. I'm not sure what's going on here.
FWIW, this is Mix.install default behaviour... as we currently don't do any clean up. So it seems Mix.install is currently incompatible with embedded mode.