[ "$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
- 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."
-###--------------------------------------------------------------------------
-### Process the Git configuration.
-
-echo -n "Installing Git configuration:"
-sed "
+## Substitute things which need substituting.
+dotfilessubst="
+ gitconfig
+ 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!\
-/@releasekey@/ s::$(./mdw-conf release-key 481334C2):g
-/@gitignore@/ s::$(./mdw-conf gitignore $here/gitignore):g
-" gitconfig >$HOME/.gitconfig.new
-mv $HOME/.gitconfig.new $HOME/.gitconfig
-echo " done."
+/@home@/ s\a\a$HOME\ag
+/@releasekey@/ s\a\a$(bin/mdw-conf release-key 481334C2)\ag
+/@gitignore@/ s\a\a$(bin/mdw-conf gitignore $here/git/gitignore)\ag
+" 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
+ lovelace.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
###--------------------------------------------------------------------------
### Install useful scripts included in this package.
mdw-pager
mdw-conf
mdw-build
+ emacsclient-hack
movemail-hack
+ aspell-hack
emerge-hack
lesspipe.sh
start-ssh-agent
[ "$xstuff" ] && scripts="$scripts
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
$echon "Finding a suitable emacs:$echoc"
emacs=no
-for i in emacs22 emacs21 emacs; do
+for i in emacs22 emacs23 emacs21 emacs; do
if type -p >/dev/null $i; then
emacs=$i
break
(error 1))))'; then
echo " already installed."
else
- if [ -f $elib.el ]; then
- cp $elib.el $HOME$sub/lib/emacs/$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
$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