Hi,
FWIW: Appended a patch that adds 3 things to startkde aka kde3:
o Prompt just before ksplash for the passphrase of the
ssh private keys (tested with a user w/o private keys)
o Do this KDE spezific fonts handling only for local displays
and not for X-Terminals. It just makes KDE startup slower.
(simple case "DISPLAY" in .. with lots of white space changes)
Anyone care to check the cvs how often such a patch went
in and out in debians kde startup script ;)
o My way of dealing with: kde3 ignores login files.
source ~/.bash_profile if it exists ;)
Achim
--
To me vi is Zen. To use vi is to practice zen. Every command is
a koan. Profound to the user, unintelligible to the uninitiated.
You discover truth everytime you use it.
-- [EMAIL PROTECTED]
--- /etc/kde3/debian/startkde.orig Wed Jan 22 21:46:22 2003
+++ /etc/kde3/debian/startkde Wed Jan 22 21:36:03 2003
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# DEFAULT KDE STARTUP SCRIPT ( KDE-3.1 )
#
@@ -7,6 +7,8 @@
# because we still need to do some cleanup.
trap 'echo GOT SIGHUP' HUP
+test -r "$HOME"/.bash_profile && . "$HOME"/.bash_profile
+
# Boot sequence:
#
# kdeinit is used to fork off processes which improves memory usage
@@ -59,46 +61,57 @@
#
# Where X is the original font database that was set up before this script
# runs.
-
-usr_odir=$kdehome/share/fonts/override
-usr_fdir=$kdehome/share/fonts
-if test -n "$KDEDIRS"; then
- kdedirs_first=`echo "$KDEDIRS"|sed -e 's/:.*//'`
- sys_odir=$kdedirs_first/share/fonts/override
- sys_fdir=$kdedirs_first/share/fonts
-else
- sys_odir=$KDEDIR/share/fonts/override
- sys_fdir=$KDEDIR/share/fonts
-fi
-
-# We run mkfontdir on the user's font dirs (if we have permission) to pick
-# up any new fonts they may have installed. If mkfontdir fails, we still
-# add the user's dirs to the font path, as they might simply have been made
-# read-only by the administrator, for whatever reason.
-
-test -d "$usr_odir" && (mkfontdir "$usr_odir" ; xset +fp "$usr_odir")
-test -d "$sys_odir" && xset +fp "$sys_odir"
-test -d "$usr_fdir" && (mkfontdir "$usr_fdir" ; xset fp+ "$usr_fdir")
-test -d "$sys_fdir" && xset fp+ "$sys_fdir"
-
-#
-# Add any user-installed font directories to the X font path
-kde_fontsdir=$kdehome/share/fonts
-kde_fontpaths=$kde_fontsdir/fontpaths
-
-if test -r "$kde_fontpaths" ; then
- savifs=$IFS
- IFS=
- for fpath in `grep -v '^[ ]*#' < "$kde_fontpaths"` ; do
- if test -s "$fpath"/fonts.dir ; then
- xset fp+ "$fpath"
- fi
- done
- IFS=$savifs
-fi
-
-# Ask X11 to rebuild its font list.
-xset fp rehash
+#
+# Check for fonts only for local displays (XXX What about: localhost:* unix/:* ?)
+case "$DISPLAY" in
+ :[0-9]*)
+ echo "Checking for local KDE fonts dirs ..."
+
+ usr_odir=$kdehome/share/fonts/override
+ usr_fdir=$kdehome/share/fonts
+ if test -n "$KDEDIRS"; then
+ kdedirs_first=`echo "$KDEDIRS"|sed -e 's/:.*//'`
+ sys_odir=$kdedirs_first/share/fonts/override
+ sys_fdir=$kdedirs_first/share/fonts
+ else
+ sys_odir=$KDEDIR/share/fonts/override
+ sys_fdir=$KDEDIR/share/fonts
+ fi
+
+ # We run mkfontdir on the user's font dirs (if we have permission) to pick
+ # up any new fonts they may have installed. If mkfontdir fails, we still
+ # add the user's dirs to the font path, as they might simply have been made
+ # read-only by the administrator, for whatever reason.
+
+ test -d "$usr_odir" && (mkfontdir "$usr_odir" ; xset +fp "$usr_odir")
+ test -d "$sys_odir" && xset +fp "$sys_odir"
+ test -d "$usr_fdir" && (mkfontdir "$usr_fdir" ; xset fp+ "$usr_fdir")
+ test -d "$sys_fdir" && xset fp+ "$sys_fdir"
+
+ #
+ # Add any user-installed font directories to the X font path
+ kde_fontsdir=$kdehome/share/fonts
+ kde_fontpaths=$kde_fontsdir/fontpaths
+
+ if test -r "$kde_fontpaths" ; then
+ savifs=$IFS
+ IFS=
+ for fpath in `grep -v '^[ ]*#' < "$kde_fontpaths"` ; do
+ if test -s "$fpath"/fonts.dir ; then
+ xset fp+ "$fpath"
+ fi
+ done
+ IFS=$savifs
+ fi
+
+ # Ask X11 to rebuild its font list.
+ xset fp rehash
+
+ ;;
+ *)
+ echo "local KDE fonts dirs ignored for DISPLAY='$DISPLAY'"
+ ;;
+esac
#
# Get Ghostscript to look into user's KDE fonts dir for additional Fontmap
@@ -137,6 +150,14 @@
dcopserver_shutdown
# shutdown will also make kwin quit, give it time to do so
sleep 1
+fi
+
+echo "Checking for SSH private keys..."
+if test -x /usr/bin/ssh-askpass ; then
+ # argl! kdialog --password "$1" is horrible slow. Needs/starts dcop daemons and co?
+ #export SSH_ASKPASS=/home/ach/bin/kde-ssh-askpass
+ export SSH_ASKPASS=/usr/bin/ssh-askpass
+ test -x /usr/bin/ssh-add && nohup /usr/bin/ssh-add < /dev/null >/dev/null
fi
# the splashscreen and progress indicator