Hi all,
I was looking around in our deployment process and found out we deploy a file .iex.exs
. Upon inspection this file only does Application.put_env(:elixir, :ansi_enabled, true)
. So I understand that this file is what enables colour when we use the remote_console. Now I don’t really like deploying this file just for that reason, so I started digging around how this works.
I found out that when starting a release, elixir decides to pass -elixir ansi_enabled true
when stdin and stdout are both opened in a terminal. But because we start our release using systemd, the flag is not passed (at least I assume that’s the reason).
Although when running the remote_console I can see the flag is being passed to the that elixir process, but (I guess) because the release has ansi_enabled: false
configured, there’s no colour.
So my question is in two-fold:
- Can the remote_console have colour based on it’s own ansi_enabled flag?
- Is it safe to just configure
ansi_enabled: true
in the release config?