X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/profile/blobdiff_plain/5236501e894448cf5241bdb2b4b64f12c18ad622..a62d05415841b7ba66ba9a660f68b452c4f1d1b6:/setup diff --git a/setup b/setup index 1bc13f7..37dc474 100755 --- a/setup +++ b/setup @@ -10,7 +10,7 @@ umask 002 sub= mkdir -p $HOME$sub -: ${REPO=http://ftp.distorted.org.uk/ftp/pub/mdw/profile} +: ${REPO=https://ftp.distorted.org.uk/pub/mdw/profile} export PATH=/usr/local/bin:$HOME$sub/bin:/usr/bin:/usr/ccs/bin:/bin @@ -104,7 +104,10 @@ for system in $systems; do cd $dir mkdir build cd build - ../configure --prefix=$HOME$sub >>buildlog 2>&1 + ../configure \ + --prefix=$HOME$sub \ + PKG_CONFIG_PATH=$HOME$sub/lib/pkgconfig \ + >>buildlog 2>&1 $echon " building$echoc" make >>buildlog 2>&1 $echon " installing$echoc" @@ -129,25 +132,35 @@ fi ## Symlink the various dotfiles into place dotfiles=" bash_profile bash_logout bashrc inputrc bash_completion - emacs emacs-calc vm gnus.el - vimrc mg zile - mailrc signature + emacs emacs-calc vm gnus.el ercrc.el + vimrc mg zile lesskey + parallel-config:.parallel/config + ipython_config.py:.ipython/profile_default/ipython_config.py + ditz-config + mailrc signature muttrc cgrc tigrc gdbinit guile + rcrc toprc + mc-ini:.mc/ini mc-panels.ini:.mc/panels.ini + pulse-daemon.conf:.pulse/daemon.conf aspell.conf + tclshrc:.tclshrc tclshrc:.wishrc 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" + mdw-build.conf:.config/mdw-build.conf + w3m-config:.w3m/config elinks.conf:.elinks/elinks.conf + dircolors colordiffrc screenrc tmux.conf cvsrc indent.pro" [ "$xstuff" ] && dotfiles="$dotfiles - xinitrc xsession Xdefaults vncrc vncsession + xinitrc xsession xmodmap vncrc vncsession fonts.conf stalonetrayrc putty-defaults:.putty/sessions/Default%20Settings + mdw.session:.config/gnome-session/sessions/mdw.session eterm-theme.cfg:.Eterm/themes/Eterm/theme.cfg e-keybindings.cfg:.enlightenment/keybindings.cfg evnc-keybindings.cfg:.enlightenment-vnc/keybindings.cfg @@ -167,14 +180,56 @@ for d in $dotfiles; do done echo " all done." +## CPP-hack files which need it. +cppfiles="" +[ "$xstuff" ] && cppfiles="$cppfiles + Xdefaults" +echo "Hacking files with C preprocessor..." +defs="-DHOME=$HOME -DPROFILE=$here" +defs="$defs -DEMACSWD=$(mdw-conf emacs-width 77)" +for c in $cppfiles; do + target=.$c + case $c in + *:*) target=${c#*:} c=${c%%:*};; + esac + ft=$HOME$sub/$target + dir=${ft%/*} + mkdir -p $dir + cpp -P $defs dot/$c -o $ft.new + mv $ft.new $ft + echo " $target" +done +echo " all done." + +## Substitute things which need substituting. +dotfilessubst=" + gitconfig + mykermrc + pulse-default.pa.in:.pulse/default.pa" +echo "Installing dotfiles with substitutions..." +for d in $dotfilessubst; do + case $d in + *:*) target=${d#*:} d=${d%%:*};; + *) target=.$d d=$d.in;; + esac + ft=$HOME$sub/$target + dir=${ft%/*} + mkdir -p $dir + sed " +1i\\ +### generated by $here/setup; do not edit!\\ + +/@home@/ s$HOMEg +/@profile@/ s$hereg +/@releasekey@/ s$(bin/mdw-conf releasekey 481334C2)g +" dot/$d >$ft.new + mv $ft.new $ft + echo " $target" +done +echo " all done." + ## Symlink backgrounds. -backgrounds=" - jue-peek.jpg - medusa.jpg - bsg-supper.jpg - rayne.jpg - hypatia.jpg - noodly.jpg" +backgrounds=$(cd bg && echo *) if [ "$xstuff" ]; then echo "Installing backgrounds..." for b in $backgrounds; do @@ -190,20 +245,6 @@ if [ "$xstuff" ]; then echo " all done." fi -###-------------------------------------------------------------------------- -### Process the Git configuration. - -echo -n "Installing Git configuration:" -sed " -1i\ -### generated by $here/setup; do not edit!\ - -/@releasekey@/ s::$(bin/mdw-conf release-key 481334C2):g -/@gitignore@/ s::$(bin/mdw-conf gitignore $here/git/gitignore):g -" git/gitconfig >$HOME/.gitconfig.new -mv $HOME/.gitconfig.new $HOME/.gitconfig -echo " done." - ###-------------------------------------------------------------------------- ### Install useful scripts included in this package. @@ -211,17 +252,25 @@ scripts=" mdw-editor mdw-pager mdw-conf - mdw-build + mdw-build mdw-sbuild mdw-sbuild-server + update-buildable-branch + emacsclient-hack movemail-hack + sendmail-hack + aspell-hack emerge-hack lesspipe.sh + run-with-shell-env start-ssh-agent + start-ssh-pageant svnwrap + guest-console hyperspec" [ "$xstuff" ] && scripts="$scripts xinitcmd un-backslashify-selection lock-screen + xpra-start-xdummy xshutdown" echo "Installing scripts..." mkdir -p $HOME$sub/bin @@ -233,12 +282,25 @@ for s in $scripts; do done echo " all done." +hacks=" + ssh:ssh" +echo "Installing hacks..." +for h in $hacks; do + d=${h%%:*} h=${h#*:} + ft=$HOME$sub/bin/hacks/$d + mkdir -p $ft + ln -s $here/hacks/$h $ft/$h.new + mv $ft/$h.new $ft/$h + echo " $d:$h" +done +echo " all done." + ###-------------------------------------------------------------------------- ### Set up the Emacs config. $echon "Finding a suitable emacs:$echoc" emacs=no -for i in emacs22 emacs21 emacs; do +for i in emacs23 emacs24 emacs22 emacs21 emacs; do if type -p >/dev/null $i; then emacs=$i break @@ -257,6 +319,7 @@ emacspkg=" ew-hols mdw-gnus-patch git git-blame vc-git stgit + mdw-multiple-cursors quilt" for elib in $emacspkg; do $echon " $elib:$echoc" @@ -291,7 +354,7 @@ for f in dot-emacs.el Makefile; do mv $HOME$sub/lib/emacs/$f.new $HOME$sub/lib/emacs/$f done $echon " compiling$echoc" -make >/dev/null 2>&1 -C $HOME$sub/lib/emacs EMACS=$emacs +{ cd $HOME$sub/lib/emacs && make EMACS=$emacs; } >/dev/null 2>&1 echo " done." ###----- That's all, folks --------------------------------------------------