This will add support for nix flakes. Which really helps with my
development on nixos. This has two basic parts:
1. DEVELOPMENT
After this you can use the following commands on computer with nix and a
patched version of direnv:
direnv allow
devenv up
And it will automatically start and instance of postgresql and mosquitto
for development.
And the environment variables are already configured for teslamate.
So then can start teslamate with:
npm install --prefix ./assets && npm run deploy --prefix ./assets
iex -S mix phx.server
This part is all working as designed. And pretty simple and straight
forward.
2. NIX PACKAGE OF TESLA
This is 99% complete, but some pain points I haven't addressed yet.
Because I don't yet know of good solutions.
* There are two checksums in flake.nix that needs to be updated whenever
mix.lock or package-lock.json changes.