-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathelixir.bits
More file actions
52 lines (42 loc) · 1.28 KB
/
elixir.bits
File metadata and controls
52 lines (42 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/bash
#-----------
# VARIABLES
#-----------
ERLANG_VERSION=${ERLANG_VERSION-23.2-1}
ELIXIR_VERSION=${ELIXIR_VERSION-1.11.4}
LINUX_DISTRIBUTION=${LINUX_DISTRIBUTION-$(lsb_release -cs)}
#-----------
# HELPERS
#-----------
set_env()
{
KEY=$1
VAL=$2
echo "export $KEY=$VAL" >> $HOME/.bash_aliases
}
#-----------
# INSTALLER
#-----------
if [ "$(which brew)" == "" ]; then
ERLANG_VERSION=${ERLANG_VERSION} LINUX_DISTRIBUTION=${LINUX_DISTRIBUTION} bits install-if erlang
INSTALL_DIR=${INSTALL_DIR-/opt}
locale-gen en_US.UTF-8
set_env ELIXIR_VERSION $ELIXIR_VERSION
source $HOME/.bash_aliases
set_env LC_ALL en_US.UTF-8
set_env LANG en_US.UTF-8
set_env LANGUAGE en_US.UTF-8
set_env PATH "${INSTALL_DIR}/elixir/elixir-$ELIXIR_VERSION/bin:node_modules/.bin:\$PATH"
source $HOME/.bash_aliases
bits install inotify # for watching file changes
SWAP_SIZE=8G bits install swap # installs 8G of swap space
mkdir -p ${INSTALL_DIR}/elixir && cd ${INSTALL_DIR}/elixir
wget https://github.com/elixir-lang/elixir/archive/v$ELIXIR_VERSION.tar.gz
tar zxf v$ELIXIR_VERSION.tar.gz
cd ${INSTALL_DIR}/elixir/elixir-$ELIXIR_VERSION
make clean
make install
else
ERLANG_VERSION=$ERLANG_VERSION LINUX_DISTRIBUTION=${LINUX_DISTRIBUTION} bits install-if erlang
brew install elixir
fi