On 07/19/2012 11:40 AM, David C. Rankin wrote:
On 07/17/2012 04:45 PM, Timothy Pearson wrote:
I
can't figure out what would have caused this to change unless something
in the GIT tree changed. I have no idea what graphic to look for. Any
ideas?
-- David C. Rankin, J.D.,P.E.
You don't have the TDM themes either installed or activated. I would look in
your tdmrc file and see if you have theming turned off; if it is on, make
sure that the theme file path is correct and that the theme files exist.
Tim
Tim, (apologize if you get 2 emails)
The bottom line is the tdm theme does not display when set tdmrc
A default XDM login box is displayed for tde login instead of the nice
gradient style one that is the normal tde default. The o2_enterprise theme is
properly set in tdmrc, but still there is no display of the proper theme. I have
checked tdmrc and it is correct. The o2_enterprise theme is set:
Theme=/opt/trinity/share/apps/tdm/themes/o2_enterprise
UseBackground=true
UseSAK=true
UseTheme=true
But still all I get is:
http://www.3111skyline.com/dl/dt/trinity/ss/tdm-old.jpg
I have even tries setting other themes as well - they don't display either ??
Also, I have my running bug-list available for review from today:
http://www.3111skyline.com/dl/dt/tde/err/r14-bug-list.txt
Here is the relevant portions of the discussion Darrell and I were working on
while the list was down regarding tdm:
I'm still
trying to figure out why I can't get the normal tdm login
window to display. Like I said, I've been through the
/opt/trinity/share/config/tdm files and I can't explain it. I even tried
to change tdm themes and I still get the default XDG login box. (the
background changes, just not the middle login window with user and pass
boxes)
Start at the basics. For the moment ignore theming. Just try to get a basic
TDM login dialog. In tdmrc, use the following:
[X-*-Greeter] UseTheme=false
Check how Arch starts graphical mode. In Slackware graphical mode is
controlled by the rc.4 script. When I started using Trinity, I had to
modify that script to include tdm support, which does not exist. Make sure
tdm support exists and is checked before trying to use the last-gasp option
xdm.
I do that in tdebase with an xsession.patch
~> cat tde/pbpkg/tde-tdebase/xsession.patch
--- /mnt/archlinux/opt/trinity/share/config/kdm/Xsession 2011-12-08
13:08:43.000000000 +0100
+++ /opt/trinity/share/config/tdm/Xsession 2011-09-24 14:52:28.000000000
+0200
@@ -43,4 +43,24 @@
;;
esac
# invoke global X session script
-. /etc/X11/Xsession
+
+
+ case $session in
+ "")
+ exec xmessage -center -buttons OK:0 -default OK "Sorry,
$DESKTOP_SESSION is no valid session."
+ ;;
+ failsafe)
+ exec ck-launch-session xterm -geometry 80x24-0-0
+ ;;
+ custom)
+ exec ck-launch-session $HOME/.xsession
+ ;;
+ default)
+ exec ck-launch-session /opt/trinity/bin/starttde
+ ;;
+ *)
+ eval exec ck-launch-session "$session"
+ ;;
+ esac
+ exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute
$session. Check $DESKTOP_SESSION.desktop."
+
However, that just affects the session chooser and is what Arch uses to
launch the right desktop (twm, fluxbox, tde, etc..) and has nothing to do with
what graphics are loaded for the login.
With the transition from 3.5.12 to R14, check your
build script with
respect to the Trinity home directory. In 3.5.12 you used /opt/kde3 or
/opt/kdemod3 and with R14 you now use /opt/trinity. Similarly, with 3.5.12
you probably used /etc/kde, /etc/kde3, or /etc/kdemod3 for your sysconfig
directory and now use /etc/trinity.
Remember that 3.5.12 used kdmrc and R14 uses tdmrc.
Yep, those are all checked and i's dotted and t's crossed. All the kdm/tdm
stuff is good.
When I step back and think about when this stuff is invoked, tdm is launched
from inittab, so there is nothing in the system init that could really get in
the way. I launch tdm from inittab as follows:
x:5:respawn:/opt/trinity/bin/tdm -nodaemon
Control is then passed to tdm which then sets up the X session and is supposed
to load the graphics/theme specified in tdmrc. This is where things 1/2 work
and 1/2 don't. The correct background is loaded proving that tdmrc passed
backgroundrc to X for the background, but then none of the o2_enterprise theme
is used from that point on. You just get the XDG login dialog instead of the
o2_enterprise themed dialog.
Of further interest, upon login, control properly passes to the moodin engine
ksplash theme, and the remainder of the login works perfectly. It is just
drawing the login that is FUBAR.
However, I did find a bug in the gentdmconf
script. It should test for
the presence of the global Xsession file before sourcing it. Currently it
doesn't. Arch doesn't have one so it fails. Do this:
[[ -r /etc/X11/Xsession ]] && . /etc/X11/Xsession
instead of just:
. /etc/X11/Xsession
Doesn't solve my problem, but it is a needed clean-up.
Where is this script in the GIT sources? I find a gentdmconf.c file.
That is what must generate the gentdmconf script. Seems odd, but I bet that
file is just a bunch of fprintf statements that spit out the gentdmconf
script. Kinda wonky way to do it, but I guess it was needed to handle distro
differences :) Patch attached
--
David C. Rankin, J.D.,P.E.