home · contact · privacy
Improve automatic go setup in postinstall script.
[config] / setup_go.sh
index 4d255f8f58cfef0fa5bc93b87df3cbaefdde1f19..0d27fc3ce962b145042e87c7de58031c8eb1840a 100755 (executable)
@@ -3,6 +3,10 @@
 set -e
 set -x
 
+url=$1
+user=plom
+users_home=`su $user -s /bin/sh -c 'echo ~'`
+
 ensure_line() {
     add_string="$1"
     file="$2"
@@ -14,22 +18,22 @@ ensure_line() {
 
 filename=temp_golang_binary
 
-if [ "$1" = "" ]; then
+if [ "$url" = "" ]; then
     echo 'Need URL of current go package'
     exit 1
 fi
-sudo rm -rf /usr/local/go
-sudo apt-get -y install wget
-wget -O $filename $1
-sudo tar -C /usr/local -xzf $filename
+rm -rf /usr/local/go
+apt-get -y install wget
+wget -O $filename $url
+tar -C /usr/local -xzf $filename
 rm $filename
-ensure_line 'export PATH=$PATH:/usr/local/go/bin' ~/.shinit_add
-ensure_line 'export GOPATH=~/gopath' ~/.shinit_add
-sudo apt-get -y install vim-pathogen
-rm -rf ~/.vim/bundle/vim-go
-git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
-ensure_line 'source ~/.vimrc_vimgo' ~/.vimrc_add
-cat << EOF > ~/.vimrc_vimgo
+ensure_line 'export PATH=$PATH:/usr/local/go/bin' $users_home/.shinit_add
+ensure_line 'export GOPATH=~/gopath' $users_home/.shinit_add
+apt-get -y install vim-pathogen
+rm -rf $users_home/.vim/bundle/vim-go
+su $user -s 'git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go'
+ensure_line 'source ~/.vimrc_vimgo' $users_home/.vimrc_add
+cat << EOF > $users_home/.vimrc_vimgo
 " vim-go: Make vim-go run.
 call pathogen#infect()
 let g:go_disable_autoinstall = 0
@@ -40,3 +44,5 @@ let g:go_highlight_structs = 1
 let g:go_highlight_operators = 1
 let g:go_highlight_build_constraints = 1
 EOF
+chown $user $users_home/.vimrc_vimgo
+chgrp $user $users_home/.vimrc_vimgo