Update starttde consistent with the changes made to
tdelibs/tdesu/stub.cpp
in bug report 766.
The first snippet that is deleted is redundant and conflicts with the same
$PATH test several lines later in the script.
The second change ensures $PATH is consistent with stub.cpp, which places
$PREFIX/bin in the path order just before /usr/bin and not blindly as
first in the search path. If, oddly, /usr/bin is not in the search path
then the script falls back to placing $PREFIX/bin first in the search
path.
==============================================================
diff -urN tdebase/starttde tdebase.new/starttde
--- tdebase/starttde 2012-02-15 13:26:30.000000000 -0600
+++ tdebase.new/starttde 2012-02-26 19:08:44.000000000 -0600
@@ -76,15 +76,6 @@
fi
fi
-# In case we have been started with full pathname spec without being in
PATH.
-bindir=`echo "$0" | sed -n 's,^\(/.*\)/[^/][^/]*$,\1,p'`
-if [ -n "$bindir" ]; then
- case $PATH in
- $bindir|$bindir:*|*:$bindir|*:$bindir:*) ;;
- *) PATH=$bindir:$PATH; export PATH;;
- esac
-fi
-
# Boot sequence:
#
# tdeinit is used to fork off processes which improves memory usage
@@ -165,7 +156,14 @@
fi
if [ -d $TDEDIR/bin ]; then
if [ -z "`echo $PATH | grep \"$TDEDIR/bin\"`" ]; then
- export PATH=$TDEDIR/bin:$PATH
+ # Respect the traditional path order. Don't blindly place $TDEDIR/bin
+ # first in the path. Only place $TDEDIR/bin before /usr/bin. This
order is
+ # consistent with tdelibs/tdesu/stub.cpp.
+ if [ -n "`echo $PATH | grep \"/usr/bin\"`" ]; then
+ export PATH="`echo $PATH | sed
\"s|/usr/bin|$TDEDIR/bin:/usr/bin|\"`"
+ else
+ export PATH=$TDEDIR/bin:$PATH
+ fi
fi
fi
if [ -d $TDEDIR/share ]; then
==============================================================
I have tested the change. If there are no objections then I would like to
push the patch.
Only concern I have is sed--is sed installed on all systems? Should there
be a sanity check for sed somewhere in starttde?
Tim