The Script I've Never Written

Ovid on 2006-06-22T10:22:16

I am really, really tired of hopping onto a new Linux box and having to configure my .vimrc, .vim/plugin/, .bashrc, bin/, and so on. I keep meaning to sit down and write a script which will do all of that for me, but I don't for the simple reason that I really only hit this problem once every couple of years. Then when I do hit this problem, it's usually for several boxes at once. How frickin' annoying.


cream

gizmo_mathboy on 2006-06-22T13:05:45

The cream project looks interesting. Not perfect but does make it kind of easy to use vim (well, I do move it out of newbie mode into expert).

Version control!

dlc on 2006-06-22T13:12:40

I've been keeping my entire home directory under version control for a few years now, and it works great. When I connect to a new machine for the first time, I simply do:

cvs -d:blah:blah:blah co HOME

And I get my full home directory, with all of my configs and so on, right away. There's a small quirk though, in that this checks HOME out into a directory called HOME, but I follow it up with:

(cd ./HOME; tar cf - .) | tar xf - ; rm -fr ./HOME

This copies the CVS directories too, so update and commit work as expected. I've been contemplating moving to subversion (see the article below), but I really have no complaints with CVS (although Subversion would allow me to check it out into . and avoid the tar/rm dance).

ONLamp.com had an article about this a few years ago. The article and comments have tons of good advice.

Re:Version control!

petdance on 2006-06-22T16:07:32

I use Subversion. It has no problems being in the home directory.

svn co svn+ssh://andy@svn.petdance.com/svn/home .

Rsync

iburrell on 2006-06-22T17:13:22

I just rsync the important dot files and scripts from my main desktop to the others. This works the best when everything is running Linux with similar versions.

use subversion!

dagolden on 2006-06-22T18:11:44

# (grr, code HTML not formatting -- so I'll cheat)

# I'm with Andy on this.  I use subversion to sync my vimrc between machines.

# Moreover, I've customized my .vimrc for both Win32 and otherwise
# so I can even sync between my Win32 laptop and my linux boxen

# E.g.

if has("win32")
    let $VIMRC=expand("$VIM\\vimfiles\\vimrc")
    let $DESK=expand("$HOME/../Desktop")
    set backupdir=c:\\temp\\\\
    set directory=c:\\temp\\\\
    if argc() == 0
        cd $HOME
    endif
    if has("gui_running")
      set gfn=Bitstream_Vera_Sans_Mono:h11:cANSI
      set co=80
      set lines=45
    endif
else
    let $VIMRC=expand("~/.vimrc")
    set backupdir=~/.vimbackups//
    set directory=~/.vimswap//
    if has("gui_running")
      set gfn=Bitstream\ Vera\ Sans\ Mono\ 11
      set co=80
      set lines=45
    endif
endif

Yet another on saying...

Adrian on 2006-06-22T18:55:49

"but that's what source control is for" :-)

Go on. Now you've done it again go check all those files in now!