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."
( 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
## Symlink the various dotfiles into place
dotfiles="
bash_profile bash_logout bashrc inputrc bash_completion
- emacs emacs-calc vm
- vimrc mg
+ emacs emacs-calc vm gnus.el
+ vimrc mg zile
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
+ stalonetrayrc
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"
+ e16-bindings:.e16/bindings.cfg"
echo "Installing dotfiles..."
for d in $dotfiles; do
target=.$d
ft=$HOME$sub/$target
dir=${ft%/*}
mkdir -p $dir
- ln -s $here/$d $ft.new
+ ln -s $here/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"
+if [ "$xstuff" ]; then
+ echo "Installing backgrounds..."
+ for b in $backgrounds; do
+ for e in enlightenment e16; do
+ dir=$HOME$sub/.$e/backgrounds
+ t=$dir/$b
+ mkdir -p $dir
+ ln -s $here/bg/$b $t.new
+ mv $t.new $t
+ done
+ echo " $b"
+ done
+ echo " all done."
+fi
+
###--------------------------------------------------------------------------
### Process the Git configuration.
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
-" gitconfig >$HOME/.gitconfig.new
+/@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."
scripts="
mdw-editor
+ mdw-pager
mdw-conf
+ mdw-build
+ emacsclient-hack
movemail-hack
- emerge-hack"
+ emerge-hack
+ lesspipe.sh
+ start-ssh-agent
+ svnwrap
+ hyperspec"
[ "$xstuff" ] && scripts="$scripts
- xrun
+ xinitcmd
+ un-backslashify-selection
+ lock-screen
xshutdown"
echo "Installing scripts..."
mkdir -p $HOME$sub/bin
for s in $scripts; do
ft=$HOME$sub/bin/$s
- ln -s $here/$s $ft.new
+ ln -s $here/bin/$s $ft.new
mv $ft.new $ft
echo " $s"
done
echo "Installing Emacs packages..."
emacspkg="
make-regexp
+ ew-hols
+ mdw-gnus-patch
git git-blame vc-git stgit
quilt"
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 el/$elib.el ]; then
+ cp el/$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 \
$echon "Setting up Emacs configuration:$echoc"
$echon " linking$echoc"
-for link in dot-emacs.el:dot-emacs.el emacs-Makefile:Makefile; do
+for f in dot-emacs.el Makefile; do
set -- $(echo $link | tr : ' ')
- from=$1 to=$2
- ln -s $here/$from $HOME$sub/lib/emacs/$to.new
- mv $HOME$sub/lib/emacs/$to.new $HOME$sub/lib/emacs/$to
+ ln -s $here/el/$f $HOME$sub/lib/emacs/$f.new
+ 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