38 lines
869 B
Nix
38 lines
869 B
Nix
{ ... }:
|
|
|
|
let
|
|
pkgs = import <nixpkgs> {};
|
|
# import <arroyo> {};
|
|
in with pkgs; mkShell {
|
|
packages = [
|
|
elixir_1_14
|
|
elixir_ls
|
|
inotify-tools
|
|
mix2nix
|
|
|
|
# probably will need this.... 🥴
|
|
nodePackages.node2nix
|
|
(writeScriptBin "setup-mix-phx" ''
|
|
${elixir}/bin/mix local.hex
|
|
${elixir}/bin/mix local.rebar
|
|
${elixir}/bin/mix archive.install hex phx_new
|
|
'')
|
|
];
|
|
|
|
shellHook = ''
|
|
export LANG="C.UTF-8";
|
|
export ERL_AFLAGS="-kernel shell_history enabled";
|
|
export NIX_SHELL_DIR="$PWD/.nix-shell";
|
|
export MIX_HOME="$NIX_SHELL_DIR/.mix";
|
|
export MIX_ARCHIVES="$MIX_HOME/archives";
|
|
export HEX_HOME="$NIX_SHELL_DIR/.hex";
|
|
export PATH="$HEX_HOME/bin:$MIX_HOME/escripts:$MIX_HOME/bin:$PATH";
|
|
export LIVEBOOK_HOME="$PWD";
|
|
|
|
|
|
|
|
${elixir}/bin/mix --version
|
|
${elixir}/bin/iex --version
|
|
'';
|
|
}
|