{ description = "Heroicons"; inputs = { nixpkgs.url = "nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; in with pkgs; { devShell = pkgs.mkShell { buildInputs = with pkgs; [ elixir erlang ]; shellHook = '' mkdir -p .nix-mix mkdir -p .nix-hex export MIX_HOME=$PWD/.nix-mix export HEX_HOME=$PWD/.nix-hex export PATH=$MIX_HOME/bin:$PATH export PATH=$HEX_HOME/bin:$PATH export PATH=$MIX_HOME/escripts:$PATH export ERL_AFLAGS="-kernel shell_history enabled" export ERL_LIBS="" # see https://elixirforum.com/t/compilation-warnings-clause-cannot-match-in-mix-and-otp-tutorial/25114/4 export PS1="\[\e[1;33m\][dev]\[\e[1;34m\] \w $ \[\e[0m\]" ''; }; }); }