X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/739bccbf5633f334556603fdd7396d6e8375fb0d..a124320a9b2d8219935096073591da8a7d225489:/setup diff --git a/setup b/setup index d7dd890..f508812 100755 --- a/setup +++ b/setup @@ -1,4 +1,4 @@ -#! /bin/sh +#! /bin/bash set -e @@ -7,7 +7,7 @@ umask 002 sub= mkdir -p $HOME$sub -: ${REPO=http://guvnor.distorted.org.uk/ftp/pub/mdw} +: ${REPO=http://guvnor.distorted.org.uk/ftp/pub/mdw/profile} export PATH=/usr/local/bin:$HOME$sub/bin:/usr/bin:/usr/ccs/bin:/bin @@ -67,7 +67,11 @@ fi ### Install necessary things echo "Installing useful scripts..." -for script in lesspipe.sh start-ssh-agent svnwrap; do +scripts=" + lesspipe.sh start-ssh-agent svnwrap" +[ "$xstuff" ] && scripts="$scripts + xrun" +for script in $scripts; do $echon " $script:$echoc" found= for p in /bin /usr/bin /usr/local/bin $(echo $PATH | tr : ' '); do @@ -127,13 +131,24 @@ for system in $systems; do done echo " all done." +### Install global configuration +echo -n "Installing dotfile configuration:" +if [ -f $HOME$sub/.mdw.conf ]; then + echo " already installed." +else + cp mdw.conf $HOME$sub/.mdw.conf + echo " done." +fi + ### Symlink the various dotfiles into place dotfiles=" - bash_profile bash_logout bashrc + bash_profile bash_logout bashrc inputrc emacs emacs-calc - vm mailrc - cmucl-init.lisp clisprc.lisp sbclrc - dircolors screenrc" + vm mailrc signature + lisp-init.lisp:.cmucl-init.lisp + lisp-init.lisp:.sbclrc + lisp-init.lisp:.clisprc.lisp + dircolors screenrc cvsrc" [ "$xstuff" ] && dotfiles="$dotfiles xinitrc xsession Xdefaults eterm-theme.cfg:.Eterm/themes/Eterm/theme.cfg @@ -156,10 +171,26 @@ done echo " all done." ### Set up the Emacs config +$echon "Finding a suitable emacs:$echoc" +emacs=no +for i in emacs21 emacs; do + if type -p >/dev/null $i; then + emacs=$i + break + fi +done +if [ $emacs = no ]; then + echo " failed." + emacs=: +else + echo " $emacs." +fi + echo "Installing Emacs packages..." for elib in make-regexp; do $echon " $elib:$echoc" - if $false emacs >/dev/null 2>&1 --batch --eval ' + if $false $emacs >/dev/null 2>&1 --no-site-file --batch --eval ' + (setq load-path (nconc load-path (list "~/lib/emacs"))) (kill-emacs (condition-case nil (progn (load-library "make-regexp") 0) (error 1)))'; then @@ -169,7 +200,7 @@ for elib in make-regexp; do $GETURL $HOME$sub/lib/emacs/make-regexp.el $REPO/make-regexp.el $echon " compiling$echoc" (cd $HOME$sub/lib/emacs; - emacs >/dev/null 2>&1 --batch \ + $emacs >/dev/null 2>&1 --no-site-file --batch \ --eval '(byte-compile-file "make-regexp.el")') echo " done." fi @@ -185,5 +216,5 @@ for link in dot-emacs.el:dot-emacs.el emacs-Makefile:Makefile; do mv $HOME$sub/lib/emacs/$to.new $HOME$sub/lib/emacs/$to done $echon " compiling$echoc" -make >/dev/null 2>&1 -C $HOME$sub/lib/emacs +make >/dev/null 2>&1 -C $HOME$sub/lib/emacs EMACS=$emacs echo " done."