#!/bin/sh -

loclroot=/usr/local
#nfsroot=/nfs
#grpcol=5

case "$1" in
--rm)	shift; link="$1"; shift
	case "`$* ls -dlL "$link" 2> /dev/null`" in
	''|l*|---------*)	rm "$link";;
	esac; exit;;
esac

# mkl - make ~/l directory of convenience symlinks
# Steve Kinzler, steve@kinzler.com, Oct 93/Jun 08/Dec 25
# https://kinzler.com/me/home.html#homedir

cd	 || exit
rm -fr l
mkdir  l || exit
cd     l || exit

safe=
(safe -d 3 /bin/true) 2> /dev/null && safe='safe -q'

links=${HOMELS-../etc/links}
if test -f "$links"
then
	sed 's/#.*//' < "$links" | awk 'NF >= 2' |
	while read link paths
	do
		for path in $paths
		do
			case "$path" in
			*/)	path="$path$link";;
			esac
			ln -s "$path" "$link" 2> /dev/null
			"$0" --rm "$link" $safe
			test -e "$link" && break
		done
	done
fi

((ls $HOME; ls) | sort -u; ls $loclroot 2> /dev/null) |
sort | uniq -d | sed '/^\.$/d; /^\.\.$/d' |
while read file
do
	ln -s $loclroot/"$file" l"$file" 2> /dev/null
	"$0" --rm l"$file" $safe
done
