コード例 #1
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def zsh():
    if not program_exists('zsh'):
        ensure_package('zsh')
    ensure_git_repo('~/.oh-my-zsh', 'git://github.com/yejianye/oh-my-zsh.git', pushurl='[email protected]:yejianye/oh-my-zsh.git')
    ensure_link('.zshrc_common', 'configs/.zshrc_common')
    ensure_file('.zshrc', append='source ~/.zshrc_common')
    ensure_file('.zshenv', append=['setopt ALL_EXPORT'])
    ensure_dir('~/bin')
    ensure_git_repo('~/utils', 'git://github.com/yejianye/util-scripts.git', pushurl='[email protected]:yejianye/util-scripts.git')
    ensure_bin_path(['.', '~/bin', '~/utils', '/usr/local/bin'])
コード例 #2
0
ファイル: vcs.py プロジェクト: yejianye/fabtask
def ensure_git_repo(path, url, pushurl=None, submodules=False):
	if not exists(path):
		if not program_exists('git'):
			ensure_package('git')
		run('git clone %s %s' % (url, path))
		if pushurl:
			with(cd(path)):
				run('git config remote.origin.pushurl %s' % pushurl)
		if submodules:
			with(cd(path)):
				run('git submodule init')
				run('git submodule update')
コード例 #3
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def tmux():
    ensure_package('tmux')
    ensure_link('.tmux.conf', 'configs/.tmux.conf')
    if is_macos():
        if not program_exists('reattach-to-user-namespace'):
            ensure_git_repo('/tmp/reattach-to-user-namespace', 'git://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard.git')
            with cd('/tmp/reattach-to-user-namespace'):
                run('make reattach-to-user-namespace')
                run('cp reattach-to-user-namespace ~/bin')
        ensure_link('.tmux.platform.conf', 'configs/.tmux.mac.conf')
    else:
        ensure_file('.tmux.platform.conf')
    ensure_ruby_pkg('tmuxinator')
コード例 #4
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def vim():
    # get vim version
    ensure_git_repo('.vim', 'git://github.com/yejianye/vim-setup.git', pushurl='[email protected]:yejianye/vim-setup.git', submodules=True)
    ensure_link('.vimrc_common', '~/.vim/.vimrc_common')
    ensure_file('.vimrc', append='source ~/.vimrc_common')
    # With Mac gcc and make should be installed with Xcode
    if not is_macos():
        ensure_package('gcc')
        ensure_package('make')
    with(cd('~/.vim/bundle/vimproc')):
        if is_macos():
            run('make -f make_mac.mak')
        elif is_linux():
            run('make -f make_unix.mak')
    # setup pushurl for submodules
    with(cd('~/.vim/bundle/textobj_function')):    
        run('git config remote.origin.pushurl [email protected]:yejianye/vim-textobj-function.git')
    with(cd('~/.vim/bundle/vim-ref-jquery')):
        run('git config remote.origin.pushurl [email protected]:yejianye/vim-ref-jquery.git')
    with(cd('~/.vim/bundle/syntastic')):
        run('git config remote.origin.pushurl [email protected]:yejianye/syntastic.git')
コード例 #5
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def install_vim73():
    ensure_package('gcc')
    ensure_package('libncurses5-dev')
    if not exists('/tmp/vim73'):
        ensure_package('wget')
        with(cd('/tmp')):
            run('wget -q -O - ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2 | tar jx')
    with(cd('/tmp/vim73')):
        run('./configure --enable-pythoninterp --enable-rubyinterp --enable-cscope')
        run('make')
        sudo('make install')
コード例 #6
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def ctags():
    if is_macos():
        ensure_package('ctags', '--HEAD')  # Ensure to get Ctags trunk for Objective-C support
    else:
        ensure_package('ctags')
    ensure_link('.ctags', 'configs/.ctags')
コード例 #7
0
ファイル: fabfile.py プロジェクト: yejianye/tools-config
def screen():
    ensure_package('screen')
    ensure_link('.screenrc', 'configs/.screenrc')