#!/bin/bash # this file refenced https://github.com/dinhnv/dev-os/blob/master/linux.sh # Needing sudo permisstion for run a some command install application set -e sudo -v # first we need update and upgrade # create a tmp folder cd ~ mkdir -p "$HOME"/.tmp mkdir -p "$HOME"/.opt export CURRENT_FOLDER CURRENT_FOLDER=$(pwd) _update_system(){ sudo apt-get -y update sudo apt-get -y upgrade } __add_ppa() { grep -h "^deb.*$1" /etc/apt/sources.list.d/* > /dev/null 2>&1 if [ $? -ne 0 ] then echo "Adding ppa:$1" sudo add-apt-repository -y ppa:$1 return 0 fi echo "ppa:$1 already exists" return 1 } install_vpn_client(){ # install ovpn # http://askubuntu.com/questions/760664/ubuntu-16-04-openvpn sudo apt-get -y install network-manager-openvpn\ network-manager-openvpn-gnome\ network-manager-pptp\ network-manager-vpnc } # Generating Your SSH Public Key gernarate_ssh_key_git(){ ssh-keygen -t rsa -C "ngohoaidiemhuong.1994@gmail.com" ssh-keygen -t rsa -C "huongnhd@evolableasia.vn" } install_util(){ # install git, curl, unikey echo "# installing git, curl, unikey ..... " sudo apt-get -y install git sudo apt-get -y install curl sudo apt-get -y install ibus-unikey ibus restart } install_theme (){ # install theme_numix # reference https://itsfoss.com/install-numix-ubuntu/ echo "installing theme numix" __add_ppa numix/ppa sudo apt-get -y update sudo apt-get -y install numix-gtk-theme numix-icon-theme-circle # sudo apt-get -y install numix-wallpaper-* -> it ever suppore in 17.04 sudo apt-get -y install unity-tweak-tool } # install_jdk_oracle _jdk8_oracle(){ #echo "install jdk oracle" #sudo apt-get -y update #sudo add-apt-repository ppa:webupd8team/java #sudo apt-get -y update #sudo apt -y update #sudo apt -y install oracle-java8-installer #sudo apt install -y oracle-java8-set-default curl -sSL https://raw.githubusercontent.com/NgoHoaiDiemHuong/os/master/install_jdk.sh|sh } _chorme(){ echo "install chorme" # install chorme,skype, pycharm, DBeaver, subl, wps office cd ~/.tmp # https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb # chorme curl -O https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo dpkg -i google-chrome-stable_current_amd64.deb } _skype(){ echo "install skype" # skype cd ~/.tmp curl -O https://repo.skype.com/latest/skypeforlinux-64.deb sudo dpkg -i skypeforlinux-64.deb } _pycharm(){ echo "install pycharm" # pycharm cd ~/.tmp curl -O https://download-cf.jetbrains.com/python/pycharm-professional-2017.1.tar.gz tar -xzvf pycharm-professional-2017.1.tar.gz cd pycharm-professional-2017.1/bin ./install } _dbeaver(){ echo "InstallDBEVER" cd ~/.tmp # http://dbeaver.jkiss.org/files/4.0.4/dbeaver-ce_4.0.4_amd64.deb curl -O http://dbeaver.jkiss.org/files/4.0.4/dbeaver-ce_4.0.4_amd64.deb sudo dpkg -i dbeaver-ce_4.0.4_amd64.deb } _subl(){ echo "install sublime text" # sublime cd ~/.tmp __add_ppa webupd8team/sublime-text-3 sudo apt-get install sublime-text-installer } _wps(){ echo "install KING office" cd ~/.tmp # wps office ## remove libre office sudo apt-get -y purge libreoffice* sudo apt-get -y autoclean sudo apt-get -y autoremove ## install wps cd ~/.tmp curl -O http://kdl.cc.ksosoft.com/wps-community/download/a21/wps-office_10.1.0.5672~a21_amd64.deb sudo dpkg -i wps-office_10.1.0.5672~a21_amd64.deb ## install wps-fonts curl -O http://kdl.cc.ksosoft.com/wps-community/download/fonts/wps-office-fonts_1.0_all.deb sudo dpkg -i wps-office-fonts_1.0_all.deb } install_app(){ _chorme || echo "_chorme fail" _skype || echo "_skype fail" _pycharm ||echo "_pycharm fail" _dbeaver || echo "_dbeaver fail" _subl || echo "_subl fail" _wps ||echo " _wps fail" } _vim(){ echo "Install vim " #nstall vim cd ~/.tmp git clone https://github.com/vim/vim.git cd vim/src ./configure --with-features=huge \ --enable-multibyte \ --enable-rubyinterp=yes \ --enable-pythoninterp=yes \ --with-python-config-dir=/usr/lib/python2.7/config \ --enable-python3interp=yes \ --with-python3-config-dir=/usr/lib/python3.5/config \ --enable-perlinterp=yes \ --enable-luainterp=yes \ --enable-gui=gtk2 --enable-cscope --prefix=/usr make sudo make install #install extention vim #========================= #reference at: https://github.com/egalpin/apt-vim #curl -sL https://raw.githubusercontent.com/egalpin/apt-vim/master/install.sh | sh #app-vim init; # create file vim rc #========================= # install awesome vim for use it git clone https://github.com/amix/vimrc.git ~/.vim_runtime sh ~/.vim_runtime/install_awesome_vimrc.sh } install_build_package(){ echo "Install build pakage" sudo apt-get -y install libevent-dev ncurses-dev \ build-essential make automake software-properties-common \ python-dev python3-dev gcc libssl-dev \ zlib1g-dev libpq-dev libtiff5-dev libjpeg8-dev libfreetype6-dev \ liblcms2-dev libwebp-dev graphviz-dev gettext libbz2-dev \ libreadline-dev libsqlite3-dev xclip } _docker() { echo "install docker" curl -sSL "https://gist.githubusercontent.com/huongnhdh/ef9a08e8e1fb82333d70cb749adbc2ee/raw/3757a90943fa83c2fbb06fda9dadc857d9189b67/install_latest_docker_compose.sh" | sh } install_env_dev(){ _docker || echo "_docker fail " _jdk8_oracle || echo "_jdk8_oracle fail" } _tmux(){ cd ~/.opt && rm -rf tmux* git clone https://github.com/tmux/tmux.git cd tmux sh autogen.sh ./configure && make sudo make install cd $HOME && curl -O https://raw.githubusercontent.com/NgoHoaiDiemHuong/os/master/.tmux.conf #tmux source-file ~/.tmux.conf; } install_term(){ _tmux || echo "_tmux fail" _vim || echo "_vim fail" } _clean() { sudo apt-get -y autoclean sudo apt-get -y clean sudo apt-get -y autoremove } __main__(){ echo "Start instaling" ; _update_system install_util || echo "install_util fail" install_build_package || echo "install_build_package fail" install_theme || echo "install_theme fail" install_vpn_client || echo "install_theme fail" install_term || echo "install_term fail" install_env_dev || echo "install_env_dev fail" install_vpn_client || echo "install_vpn_client fail" install_app gernarate_ssh_key_git echo "All app installed"; _clean } __main__