def install(): """ Installs and sets zsh as default shell """ # update apt index update_index(quiet=False) # install zsh utils._deb.install('zsh') # install zsh examples utils._deb.install('zsh-lovers') # set as default shell for the user print(green('Re-enter your password to set zsh as default.')) with settings(hide('warnings'), warn_only=True): cmd = 'chsh -s /bin/zsh %s' % env.user while True: # prompt password until success if not run(cmd).failed: break else: print(red('Wrong password, try again.')) # install git if is not available git_install() # install oh-my-zsh git_clone('git://github.com/robbyrussell/oh-my-zsh.git', '~/.oh-my-zsh') # zsh configuration file: plugins plugins = [] recommended_plugins = (['git', 'github', 'git-flow', 'heroku', 'last-working-dir', 'pip', 'autojump', 'command-not-found', 'debian', 'encode64', 'vagrant', 'ruby']) recommended_plugins.sort() for plugin in recommended_plugins: if confirm('Would you like to use the %s plugin?' % plugin): plugins.append(plugin) plugins = ' '.join(plugins) # zsh configuration file: default editor editor = prompt('Please specify your default editor', default='vim') context = { 'plugins': plugins, 'default_editor': editor, 'user': env.user } upload_template('fabfile/templates/zshrc', '.zshrc', context=context) # zsh fabric autocomplete put('fabfile/templates/zsh_fab', '.zsh_fab') # upload custom themes themes() print(green('If the shell does not change, restart your session.'))
def install(): """ Installs and configures vim """ # update apt index update_index(quiet=False) # install vim utils._deb.install('vim') # backup vim configuration folder if exists('.vim'): print(green('Backing up your vim configuration folder to .vim-bkp')) cmd = 'mv .vim .vim-bkp' run(cmd) # backup vim configuration file if exists('.vimrc'): print(green('Backing up your vim configuration file to .vimrc-bkp')) cmd = 'mv .vimrc .vimrc-bkp' run(cmd) # clone vim_config repository print(green('Cloning Vim_config repository.')) # install git if is not available git_install() git_clone('git://github.com/magnet-cl/Vim_config.git', '.vim') # install required packages by plugins print(green('Installing plugins dependencies.')) # ctags, better grep, python flake, latex, C/C++ omnicompletion plugins = ['exuberant-ctags', 'ack-grep', 'pyflakes', 'lacheck', 'clang', 'rhino'] for plugin in plugins: utils._deb.install(plugin) # install pip if is not available if not is_pip_installed(): install_pip() if not py_is_installed('flake8'): py_install('flake8', use_sudo=True) # python flake+pep8 # installation script print(green('Installing Vim_config.')) cmd = 'source .vim/install.sh' run(cmd)