| From: | "Simon 'corecode' Schubert" <corecode@xxxxxxxxxxxx> |
| Date: | Sun, 3 Jul 2005 03:38:34 +0200 |
hey, see attached files for a possible way to register installed files in installworld. try it with the ln conversion patch and make installworld INSTALL_LOG=path-to-logfile \ INSTALL=sh\ path-to-install-wrapper.sh \ LN=sh\ path-to-ln-wrapper.sh with install_wrapper.sh you can as well install as non-root: add an env var INSTALL_NO_ATTR=1. please try and comment. cheers simon -- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low $$$ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
#!/bin/sh
logfile() {
f=$1
f=${f#./}
expr "$1" : \\/ >/dev/null || f="`pwd`/$f"
echo "$f" >> $INSTALL_LOG
}
param=
isdir=
while [ $# -ne 0 ]
do
case "$1" in
-[bCcdlMpSsv]*)
expr "$1" : ".*d" >/dev/null && isdir=1
param="$param '$1'"
shift
;;
-[LBfgmo])
if [ -n "$INSTALL_NO_ATTR" ]
then
else
param="$param '$1' '$2'"
fi
shift; shift
;;
-[LBfgmo]*)
if [ -n "$INSTALL_NO_ATTR" ]
then
else
param="$param '$1'"
fi
shift
;;
*)
break
;;
esac
done
if [ -n "$INSTALL_LOG" ]
then
if [ $# -lt 2 -a -z "$isdir" ]
then
echo "install: too few arguments" >&2
exit 1
fi
if [ -n "$isdir" ]
then
while [ $# -ne 0 ]
do
logfile "$1"
param="$param '$1'"
shift
done
elif [ $# -gt 2 -o -d "$2" ]
then
files=
while [ $# -ne 1 ]
do
files="$files '$1'"
shift
done
dir=$1
if [ \! -d "$dir" ]
then
echo "install: multiple files need directory as destination" >&2
exit 1
fi
eval set -- $files
while [ $# -ne 0 ]
do
bn=`basename "$1"`
logfile "$dir/$bn"
param="$param '$1'"
shift
done
param="$param '$dir'"
else
logfile "$2"
param="$param '$1' '$2'"
fi
else
while [ $# -ne 0 ]
do
param="$param '$1'"
shift
done
fi
eval set -- $param
exec install "$@"
#!/bin/sh
logfile() {
f=$1
f=${f#./}
expr "$1" : \\/ >/dev/null || f="`pwd`/$f"
echo "$f" >> $INSTALL_LOG
}
nofollowsym=
param=
while [ $# -ne 0 ]
do
case "$1" in
-[fhinsv]*)
expr "$!" : '.*[hn]' >/dev/null && nofollowsym=1
param="$param '$1'"
shift
;;
*)
break
;;
esac
done
if [ -n "$INSTALL_LOG" ]
then
if [ $# -eq 0 ]
then
echo "install: too few arguments" >&2
exit 1
fi
if [ $# -eq 1 -o $# -gt 2 -o ( -d "$2" -a ( -z "$nofollowsym" -o \! -L "$2" ) ) ]
then
files="'$1'"
shift
while [ $# -gt 1 ]
do
files="$files '$1'"
shift
done
if [ $# -eq 1 ]
then
dir=$1
else
dir=`pwd`
fi
if [ \! -d "$dir" ]
then
echo "ln: multiple files need directory as destination" >&2
exit 1
fi
eval set -- $files
while [ $# -ne 0 ]
do
bn=`basename "$1"`
logfile "$dir/$bn"
param="$param '$1'"
shift
done
param="$param '$dir'"
else
logfile "$2"
param="$param '$1' '$2'"
fi
else
while [ $# -ne 0 ]
do
param="$param '$1'"
shift
done
fi
eval set -- $param
exec ln "$@"
Attachment:
pgp00003.pgp
Description: PGP signature