Commit e18177cb30a08495f08990e0fe47ea13e443b0f5

Authored by mj
1 parent b8914f261a
Exists in master and in 2 other branches 02-merge, dev

ADD FILE: sys_base_install.sh

Showing 1 changed file with 85 additions and 0 deletions Inline Diff

tools/sys_base_install.sh
File was created 1 #!/usr/bin/env bash
2
3 # ** Helper Functions **
4 # ----------------------
5
6 GJ_DEVENV="local_aptproxy"
7 GJ_SHELL="bash"
8
9 function set_apt_proxy {
10 if [ "$GJ_DEVENV" == "local_aptproxy" ]; then
11 echo "Setting apt-proxy: srvths"
12 printf 'Acquire::http { Proxy "http://192.168.188.110:3142"; };\nAcquire::https { Proxy "https://"; };\n' > /etc/apt/apt.conf.d/02proxy
13 elif [ "$GJ_DEVENV" == "hetzner_server" ]; then
14 echo "Setting apt-mirror: hetzner mirror"
15 echo 'deb ftp://mirror.hetzner.de/debian/packages wheezy main contrib non-free' > /etc/apt/sources.list.d/hetzner.list
16 echo 'deb ftp://mirror.hetzner.de/debian/security wheezy/updates main contrib non-free' >> /etc/apt/sources.list.d/hetzner.list
17 fi
18 }
19
20 function get_shell_config {
21 apt-get -yq install curl git nano zsh
22 mkdir "~/.config"
23 echo "cloning zsh config.."
24 hash git >/dev/null 2>&1 && env git clone --depth=1 http://git.str8.biz/mj/zsh-config.git $ZCNF ||
25 }
26
27 set_apt_proxy
28
29 set -e
30
31 if [ ! -n "$ZCNF" ]; then
32 ZCNF=~/.config/zsh-config
33 fi
34
35 if [ ! -n "$ZSH" ]; then
36 ZSH=$ZCNF/tools/oh-my-zsh
37 fi
38
39 export DEBIAN_FRONTEND=noninteractive
40
41 apt-get update
42
43 if [ "$GJ_SHELL" != "zsh" ]; then
44 get_shell_config
45 src
46 fi
47
48 apt-get -yq upgrade && apt-get -yq dist-upgrade
49 apt-get -yq autoremove && apt-get -yq clean
50
51
52 echo "\033[0;34mLooking for an existing zsh config...\033[0m"
53 if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]; then
54 echo "\033[0;33mFound ~/.zshrc.\033[0m \033[0;32mBacking up to ~/.zshrc.pre-zsh-cnf\033[0m";
55 mv ~/.zshrc ~/.zshrc.pre-zsh-cnf;
56 fi
57
58 echo "\033[0;34mUsing the Zsh Config template file and adding it to ~/.zshrc\033[0m"
59 ln -s $ZCNF/templates/zshrc ~/.zshrc
60 ln -s $ZCNF/templates/bash_aliases ~/.bash_aliases
61 sed -i -e "/^export ZSH=/ c\\
62 export ZSH=$ZSH
63 " ~/.zshrc
64
65 echo "\033[0;34mCopying your current PATH and adding it to the end of ~/.zshrc for you.\033[0m"
66 sed -i -e "/export PATH=/ c\\
67 export PATH=\"$PATH\"
68 " ~/.zshrc
69
70 if [ "$SHELL" != "$(which zsh)" ]; then
71 echo "\033[0;34mTime to change your default shell to zsh!\033[0m"
72 chsh -s `which zsh`
73 fi
74
75 echo "\033[0;32m"' __ __ '"\033[0m"
76 echo "\033[0;32m"' ____ / /_ ____ ___ __ __ ____ _____/ /_ '"\033[0m"
77 echo "\033[0;32m"' / __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \ '"\033[0m"
78 echo "\033[0;32m"'/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / / '"\033[0m"
79 echo "\033[0;32m"'\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/ '"\033[0m"
80 echo "\033[0;32m"' /____/ ....is now installed!'"\033[0m"
81 echo "\n\n \033[0;32mPlease look over the ~/.zshrc file to select plugins, themes, and options.\033[0m"
82 echo "\n\n \033[0;32mp.s. Follow us at http://twitter.com/ohmyzsh.\033[0m"
83 echo "\n\n \033[0;32mp.p.s. Get stickers and t-shirts at http://shop.planetargon.com.\033[0m"
84 env zsh
85 . ~/.zshrc
86