
Erlang Installer Beta: A Better Way To Use Erlang On OS X - _nato_
https://www.erlang-solutions.com/blog/erlang-installer-a-better-way-to-use-erlang-on-osx.html
======
matt4077
I think I'll stick with `brew upgrade` or, more accurately,

    
    
        brew update
        brew upgrade  
        npm -g upgrade
    
        for f in ~/projects/*; do
          cd $f 
          npm update --save 
          npm update --save-dev 
          mix deps.update --all 
          elm-packages update  
          bundle update 
          npm test 
          mix test 
          rake test
        done

~~~
guessmyname

        # I fixed the script for you:
        [...]
        for f in $(ls -1d ~/projects/**/); do
          cd -- "$f"
          [...]
        done

~~~
Jtsummers

      [...]
      pushd .
      for [...]
      popd
    

I'm always a fan of ending up back where I started.

~~~
thomaslee
Piling on the nitpick train :) If an error occurs along the way popd won't
run, so a subshell might be a better way to accomplish the same thing:

    
    
        (
          for ...; do
            cd ...
          done
        )
        # script exits, you're back where you started
    

If you'd prefer to see it in isolation: pwd; ( cd /tmp; pwd ); pwd

------
shadeless
A couple of months ago I stoped using rvm, kerl, exenv, nvm and started using
asdf - "Extendable version manager with support for Ruby, Node.js, Elixir,
Erlang & more".

I've been pretty satisfied with it, and haven't had a single problem with it
yet - it just works (™).

I recommend trying it out, relevant links:

[https://github.com/asdf-vm/asdf](https://github.com/asdf-vm/asdf)

[https://github.com/asdf-vm/asdf-erlang](https://github.com/asdf-vm/asdf-
erlang)

~~~
Bluestrike2
That's funny. I was just talking to somebody about all the different version
managers we wind up dealing with. I'll have to look at it more later.

------
Luc
Interesting, I'll try it out.

On Linux I used the 'kerl' script to easily switch between installations:
[https://github.com/kerl/kerl](https://github.com/kerl/kerl)

Seems like it works on OS X too:
[http://stratus3d.com/blog/2014/10/24/install-erlang-16-on-
ma...](http://stratus3d.com/blog/2014/10/24/install-erlang-16-on-mac-
osx-10-dot-9-with-kerl/)

~~~
paultannenbaum
I use Kerl on OSX and have had zero issues with it switching between different
Erlang versions. I haven't evaluated other options, but can confirm Kerl works
on a mac.

~~~
macintux
Yep, I rely heavily on kerl on macOS (will take a while to get used to that
name). Great tool.

A similar tool, written by a former co-worker of mine:
[https://github.com/metadave/erln8](https://github.com/metadave/erln8)

------
electic
I like the idea however another menu bar item seems to be the wrong way to go
about doing this. Why is brew a bad idea?

~~~
adamkittelson
Homebrew sometimes takes a while to get new erlang releases available. I seem
to recall a release about a year ago that took over a month to become
available. Something about other apps in homebrew that use erlang having to
update before the homebrew erlang could be released, or something like that, I
don't recall the details.

At any rate I've been using asdf [https://github.com/asdf-
vm/asdf](https://github.com/asdf-vm/asdf) to manage my erlang and elixir
installs on a per project basis for a while now and it has been working well
for me.

~~~
s_kilk
If I recall correctly, Erlang 19 was held up for a while in homebrww because
the couchdb formula needed to be updated also.

------
TheAceOfHearts
I'm a big fan of this. An example of a similar tool that I love is
Postgres.app [0]. Compare using Postgres.app with having to install and
configure MySQL... It makes a world of difference when you're first learning
how to use these tools.

The killer feature of these installer options is that they make the tools much
for approachable for everyone!

Configuring and setting up a bunch of tools that you don't understand makes it
very hard to get your feet wet. I think once you're familiarized with the
tools it's important to learn how things work. But if you're just getting
started, there's no reason for you to waste your time configuring anything.
The default config should be beginner friendly and provide sensible defaults.

[0] [http://postgresapp.com/](http://postgresapp.com/)

------
tomku
In order to use erl/erlc from the command line, would I have to launch an
"Erlang Terminal" from the menu bar or is there a convenient way to get the
current default Erlang's bin folder on my path?

Edit: I mostly work with Elixir and have Erlang installed via Homebrew right
now.

------
nixpulvis
I prefer something akin to the `rustup` CLI to a native app personally.

~~~
marianoguerra
check kerl: [https://github.com/kerl/kerl](https://github.com/kerl/kerl)

------
angrow
It's good to see language communities/committees taking steps to improve UX.

That said, since we're all using this to announce our idiosyncratic package
managers, I use Nix.

