X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/7cfa1f1a61478a99cd1c9123b830745459de652f..dfd10975ec8a6e231e1385309189b72688b25ed5:/setup diff --git a/setup b/setup index 48c3afc..79a6f34 100755 --- a/setup +++ b/setup @@ -75,47 +75,19 @@ done echo " all done." ###-------------------------------------------------------------------------- -### Install necessary things. - -echo "Installing useful scripts..." - -scripts=" - lesspipe.sh start-ssh-agent svnwrap" -for script in $scripts; do - $echon " $script:$echoc" - found= - for p in /bin /usr/bin /usr/local/bin $(echo $PATH | tr : ' '); do - if $false [ -x $p/$script ]; then - found=t - break - fi - done - if [ "$found" ]; then - echo " already installed." - else - $echon " downloading$echoc" - $GETURL $HOME$sub/bin/$script $REPO/$script - chmod +x $HOME$sub/bin/$script - echo " done." - fi -done - -echo " all done." - -###-------------------------------------------------------------------------- ### Install some more complicated programs. echo "Installing packages..." systems=" - mlib:2.0.4:crc-mktab - chkpath:1.1.0:tmpdir + mlib:crc-mktab + checkpath:tmpdir " [ "$xstuff" ] && systems="$systems - xtoys:1.4.0:xatom + xtoys:xatom " for system in $systems; do set -- $(echo $system | tr : ' ') - sys=$1 ver=$2 prog=$3 + sys=$1 prog=$2 $echon " $sys:$echoc" if $false $prog >/dev/null 2>&1 --version; then echo " already installed." @@ -123,12 +95,13 @@ for system in $systems; do ( set -e $echon " downloading$echoc" cd $HOME$sub/src - rm -rf $sys-$ver.tar.gz $sys-$ver - $GETURL $sys-$ver.tar.gz $REPO/$sys-$ver.tar.gz + rm -rf $sys.tar.gz $sys-$ver + $GETURL $sys.tar.gz $REPO/$sys.tar.gz $echon " unpacking$echoc" - gzip -cd $sys-$ver.tar.gz | tar xf - + dir=$(gzip -cd $sys.tar.gz | tar tf - | head -1) + gzip -cd $sys.tar.gz | tar xf - $echon " configuring$echoc" - cd $sys-$ver + cd $dir mkdir build cd build ../configure --prefix=$HOME$sub >>buildlog 2>&1 @@ -156,25 +129,28 @@ fi ## Symlink the various dotfiles into place dotfiles=" bash_profile bash_logout bashrc inputrc bash_completion - emacs emacs-calc vm + emacs emacs-calc vm gnus.el vimrc mg mailrc signature cgrc tigrc gdbinit guile + toprc + aspell.conf lisp-init.lisp:.cmucl-init.lisp lisp-init.lisp:.sbclrc lisp-init.lisp:.clisprc.lisp lisp-init.lisp:.eclrc + swank.lisp dircolors colordiffrc screenrc cvsrc indent.pro" [ "$xstuff" ] && dotfiles="$dotfiles xinitrc xsession Xdefaults vncrc vncsession + fonts.conf putty-defaults:.putty/sessions/Default%20Settings eterm-theme.cfg:.Eterm/themes/Eterm/theme.cfg e-keybindings.cfg:.enlightenment/keybindings.cfg evnc-keybindings.cfg:.enlightenment-vnc/keybindings.cfg e16-bindings:.e16/bindings.cfg - e16-config:.e16/e_config--1.0.cfg jue-peek.jpg:.enlightenment/backgrounds/jue-peek.jpg jue-peek.jpg:.e16/backgrounds/jue-peek.jpg" echo "Installing dotfiles..." @@ -198,10 +174,10 @@ echo " all done." echo -n "Installing Git configuration:" sed " 1i\ -### generated by $(pwd)/setup; do not edit!\ +### generated by $here/setup; do not edit!\ /@releasekey@/ s::$(./mdw-conf release-key 481334C2):g -/@gitignore@/ s::$(./mdw-conf gitignore $(pwd)/gitignore):g +/@gitignore@/ s::$(./mdw-conf gitignore $here/gitignore):g " gitconfig >$HOME/.gitconfig.new mv $HOME/.gitconfig.new $HOME/.gitconfig echo " done." @@ -212,10 +188,15 @@ echo " done." scripts=" mdw-editor mdw-conf + mdw-build movemail-hack - emerge-hack" + emerge-hack + lesspipe.sh + start-ssh-agent + svnwrap + hyperspec" [ "$xstuff" ] && scripts="$scripts - xrun + xinitcmd xshutdown" echo "Installing scripts..." mkdir -p $HOME$sub/bin @@ -248,6 +229,8 @@ fi echo "Installing Emacs packages..." emacspkg=" make-regexp + ew-hols + mdw-gnus-patch git git-blame vc-git stgit quilt" for elib in $emacspkg; do @@ -260,8 +243,12 @@ for elib in $emacspkg; do (error 1))))'; then echo " already installed." else - $echon " downloading$echoc" - $GETURL $HOME$sub/lib/emacs/$elib.el $REPO/$elib.el + if [ -f $elib.el ]; then + cp $elib.el $HOME$sub/lib/emacs/$elib.el + else + $echon " downloading$echoc" + $GETURL $HOME$sub/lib/emacs/$elib.el $REPO/$elib.el + fi $echon " compiling$echoc" (cd $HOME$sub/lib/emacs; $emacs >/dev/null 2>&1 --no-site-file --batch \