| 
				
			 | 
			
			
				@@ -31,12 +31,18 @@ 
			 | 
		
	
		
			
			| 
				31
			 | 
			
				31
			 | 
			
			
				 # You should have received a copy of the GNU Affero General Public License 
			 | 
		
	
		
			
			| 
				32
			 | 
			
				32
			 | 
			
			
				 # along with this program.  If not, see <http://www.gnu.org/licenses/>. 
			 | 
		
	
		
			
			| 
				33
			 | 
			
				33
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				34
			 | 
			
			
				+erlang_package='erlang-solutions_1.0_all.deb' 
			 | 
		
	
		
			
			| 
				
			 | 
			
				35
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				34
			 | 
			
				36
			 | 
			
			
				 function remove_elixir { 
			 | 
		
	
		
			
			| 
				35
			 | 
			
				37
			 | 
			
			
				     apt-get -yq remove elixir erlang-xmerl erlang-dev erlang-parsetools 
			 | 
		
	
		
			
			| 
				36
			 | 
			
				38
			 | 
			
			
				     apt-get -yq remove esl-erlang 
			 | 
		
	
		
			
			| 
				37
			 | 
			
				39
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				38
			 | 
			
				40
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				39
			 | 
			
				41
			 | 
			
			
				 function install_elixir { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				42
			 | 
			
			
				+    if [ -f /usr/local/bin/mix ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				43
			 | 
			
			
				+        return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				44
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				45
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				40
			 | 
			
				46
			 | 
			
			
				     apt-get -yq install wget build-essential 
			 | 
		
	
		
			
			| 
				41
			 | 
			
				47
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				42
			 | 
			
				48
			 | 
			
			
				     if [ ! -d "$INSTALL_DIR" ]; then 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -44,7 +50,6 @@ function install_elixir { 
			 | 
		
	
		
			
			| 
				44
			 | 
			
				50
			 | 
			
			
				     fi 
			 | 
		
	
		
			
			| 
				45
			 | 
			
				51
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				46
			 | 
			
				52
			 | 
			
			
				     cd "$INSTALL_DIR" || exit 768345274 
			 | 
		
	
		
			
			| 
				47
			 | 
			
				
			 | 
			
			
				-    erlang_package=erlang-solutions_1.0_all.deb 
			 | 
		
	
		
			
			| 
				48
			 | 
			
				53
			 | 
			
			
				     wget https://packages.erlang-solutions.com/$erlang_package 
			 | 
		
	
		
			
			| 
				49
			 | 
			
				54
			 | 
			
			
				     if [ ! -f "$INSTALL_DIR/$erlang_package" ]; then 
			 | 
		
	
		
			
			| 
				50
			 | 
			
				55
			 | 
			
			
				         exit 72853 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -60,4 +65,36 @@ function install_elixir { 
			 | 
		
	
		
			
			| 
				60
			 | 
			
				65
			 | 
			
			
				     fi 
			 | 
		
	
		
			
			| 
				61
			 | 
			
				66
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				62
			 | 
			
				67
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				68
			 | 
			
			
				+function image_install_elixir { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				69
			 | 
			
			
				+    if [[ $VARIANT == "mesh"* ]]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				70
			 | 
			
			
				+        return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				71
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				72
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				73
			 | 
			
			
				+    # shellcheck disable=SC2154 
			 | 
		
	
		
			
			| 
				
			 | 
			
				74
			 | 
			
			
				+    chroot "$rootdir" apt-get -yq install wget build-essential 
			 | 
		
	
		
			
			| 
				
			 | 
			
				75
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				76
			 | 
			
			
				+    if [ ! -d "$rootdir$INSTALL_DIR" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				77
			 | 
			
			
				+        mkdir -p "$rootdir$INSTALL_DIR" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				78
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				79
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				80
			 | 
			
			
				+    { echo '#!/bin/bash'; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				81
			 | 
			
			
				+      echo "cd $INSTALL_DIR"; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				82
			 | 
			
			
				+      echo "erlang_package=$erlang_package"; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				83
			 | 
			
			
				+      echo "wget https://packages.erlang-solutions.com/\$erlang_package"; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				84
			 | 
			
			
				+      echo "if [ ! -f \"\$INSTALL_DIR/\$erlang_package\" ]; then"; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				85
			 | 
			
			
				+      echo '    exit 1'; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				86
			 | 
			
			
				+      echo 'fi'; 
			 | 
		
	
		
			
			| 
				
			 | 
			
				87
			 | 
			
			
				+      echo "dpkg -i \$erlang_package"; } > "$rootdir/usr/bin/install_elixir" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				88
			 | 
			
			
				+    chmod +x "$rootdir/usr/bin/install_elixir" 
			 | 
		
	
		
			
			| 
				
			 | 
			
				89
			 | 
			
			
				+    chroot "$rootdir" /usr/bin/install_elixir 
			 | 
		
	
		
			
			| 
				
			 | 
			
				90
			 | 
			
			
				+    chroot "$rootdir" apt-get -yq update 
			 | 
		
	
		
			
			| 
				
			 | 
			
				91
			 | 
			
			
				+    chroot "$rootdir" apt-get -yq install esl-erlang 
			 | 
		
	
		
			
			| 
				
			 | 
			
				92
			 | 
			
			
				+    chroot "$rootdir" apt-get -yq install elixir erlang-xmerl erlang-dev erlang-parsetools 
			 | 
		
	
		
			
			| 
				
			 | 
			
				93
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				94
			 | 
			
			
				+    if [ ! -f "$rootdir/usr/local/bin/mix" ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				95
			 | 
			
			
				+        echo $'/usr/local/bin/mix not found after elixir installation' 
			 | 
		
	
		
			
			| 
				
			 | 
			
				96
			 | 
			
			
				+        exit 629352 
			 | 
		
	
		
			
			| 
				
			 | 
			
				97
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				98
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				99
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				63
			 | 
			
				100
			 | 
			
			
				 # NOTE: deliberately no exit 0 
			 |