2013/8/10 Darrell Anderson darrella@hushmail.com
Wouldn't it be better to expand the TDM search paths to include /usr/share/apps/kdm/sessions/ then?
Looks to me as though the default search paths are defined in tdebase/tdm/config.def:1931:
=================================== Key: SessionsDirs Type: list Default: "/usr/share/xsessions,/var/lib/menu-xdg/xsessions," TDMDATA "/sessions" User: core User: greeter-c Instance: */"/usr/share/xsessions,/var/lib/menu-xdg/xsessions," TDMDATA "/sessions" Comment: The directories containing session type definitions in .desktop format. Description: A list of directories containing session type definitions.
# See <xref linkend="tdmrc-sessions"> for details.
We could add /usr/share/apps/kdm/sessions/, but what happens when KDE4 is not installed to /usr? Or different distro maintainers install kdm/sessions to different locations? If we add search support for the default paths for KDM, then why not add the default locations for other login managers such as GDM and SliM? Seems this could get out of hand.
We already supply our own session files, as do other login managers. The default search paths expands the built-in TDM list and includes known default locations. Does adding those two files cause harm?
Darrell
kdm/tdm is the only display manager who provides its own session files. IMO this is a legacy of ancient times when there were no common rules there to place them. Nowadays it's not the job of the DM to provide files for all possible sessions, but the job of the distribution or vendor/packager to set default locations for them. It's ok and nice for various wm sessions, which don't provide their own *.desktop's (I can name only twm), but not for well-known environments. If it were in my will I'd removed the most of those *.desktop's.
Yes, those files cause some harm, not a lot of, but they do. Firstly, the KDE session displays twice. Because tdm doesn't eliminates doubles. Secondly, to provide the «failsave» version of KDE in tdm looks really strange. So I've got now 3 entries for KDE and only one for trinity (honestly speaking two, but thats because of specific of my installation).
My point is if yours distribution is the only which doesn't puts desktop files to places there they supposed to be, it's the problem of your distro. Moreover you even don't need to hack into the sources or rebuild something, you can just change the SessionsDirs in your tdmrc (either sed it while packaging or manually afterwards) or create a couple of symlinks.