Bug 158283 - Gnome fails to work properly with 'tcsh' as default shell
Summary: Gnome fails to work properly with 'tcsh' as default shell
Status: RESOLVED FIXED
: 160459 (view as bug list)
Alias: None
Product: SUSE Linux 10.1
Classification: openSUSE
Component: GNOME (show other bugs)
Version: Beta 6
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Ruediger Oertel
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-15 16:12 UTC by Forgotten User n7rXO1Vrxz
Modified: 2006-04-03 12:48 UTC (History)
2 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
'.xsession-errors' file with tcsh as login shell (11.82 KB, text/plain)
2006-03-18 18:05 UTC, Forgotten User n7rXO1Vrxz
Details
Screenshot after tcsh-login (413.17 KB, image/png)
2006-03-18 18:07 UTC, Forgotten User n7rXO1Vrxz
Details
screen with bash as default shell (464.42 KB, image/png)
2006-03-18 18:09 UTC, Forgotten User n7rXO1Vrxz
Details
Environment variables with gdm + gnome-session + tcsh (3.35 KB, text/plain)
2006-04-01 12:36 UTC, Forgotten User n7rXO1Vrxz
Details
Non-environment-variables in tcsh (output of 'set') (1.02 KB, text/plain)
2006-04-01 12:38 UTC, Forgotten User n7rXO1Vrxz
Details
Environment variables in BASH (4.17 KB, text/plain)
2006-04-01 12:42 UTC, Forgotten User n7rXO1Vrxz
Details
Variables in BASH (for ease of comparison) (21.34 KB, text/plain)
2006-04-01 12:43 UTC, Forgotten User n7rXO1Vrxz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Forgotten User n7rXO1Vrxz 2006-03-15 16:12:26 UTC
I'm using 'gdm' as login manager.
After having done "chsh" to '/bin/tcsh' (and logging in again), gnome is not working properly any more.
(Already in SuSE 10.0, I noticed that - with tcsh as login shell - session couldn't be really selected: though "windowmaker","kde" or "fvwm" was chosen, always "gnome" came up. Probably wrong variable settings?)
Symptoms are at least missing menus and icons. For instance, the gnome-terminal is not accessible via menu.
Comment 1 Stanislav Brabec 2006-03-16 11:20:42 UTC
Could you attach your ~/.xsession-errors?
Comment 2 Forgotten User n7rXO1Vrxz 2006-03-18 18:05:08 UTC
Created attachment 73819 [details]
'.xsession-errors' file with tcsh as login shell

Additional info: German language setting is lost when using tcsh
Comment 3 Forgotten User n7rXO1Vrxz 2006-03-18 18:07:24 UTC
Created attachment 73820 [details]
Screenshot after tcsh-login

This is what my screen looks like after logging in with tcsh (in gdm)
Comment 4 Forgotten User n7rXO1Vrxz 2006-03-18 18:09:15 UTC
Created attachment 73821 [details]
screen with bash as default shell

This is what my screen looks alike when switching (back) to bash.
Comment 5 JP Rosevear 2006-03-24 18:07:15 UTC
*** Bug 160459 has been marked as a duplicate of this bug. ***
Comment 6 JP Rosevear 2006-03-30 05:42:03 UTC
Stanislav, I think this might because the gnome session script is exporting several things, most importantly icon themes.  Sound right?
Comment 7 Stanislav Brabec 2006-03-30 09:05:21 UTC
/usr/X11R6/bin/gnome is executed by bash in any case and these variables should be correctly imported. Also variables from /etc/profile.d should be correctly imported, if there is no mistake.

The log looks like missing XDG_DATA_DIRS. Could you verify this variable?
Comment 8 Forgotten User n7rXO1Vrxz 2006-04-01 12:36:33 UTC
Created attachment 76033 [details]
Environment variables with gdm + gnome-session + tcsh

This is the output of printenv with tcsh as default shell in gdm / gnome-session.
Comment 9 Forgotten User n7rXO1Vrxz 2006-04-01 12:38:56 UTC
Created attachment 76034 [details]
Non-environment-variables in tcsh (output of 'set')

Probably less important values of variables obtainable via command 'set' (in tcsh).
Comment 10 Forgotten User n7rXO1Vrxz 2006-04-01 12:42:11 UTC
Created attachment 76035 [details]
Environment variables in BASH

For comparison purposes of probably other important variables I add the BASH-equivalent here. (Output of 'printenv' in bash)
Comment 11 Forgotten User n7rXO1Vrxz 2006-04-01 12:43:49 UTC
Created attachment 76036 [details]
Variables in BASH (for ease of comparison)

This is the output of the 'set' command when using BASH.
Comment 12 Forgotten User n7rXO1Vrxz 2006-04-01 12:49:17 UTC
I cannot find a variable called XDG_DATA_DIRS using tcsh. I hope, the attachments I made above are helpful to you (you can view both tcsh-output and bash-output). Probably you can find other variables that aren't exported properly to tcsh (such as XDG_CONFIG_DIRS ?).
Comment 13 JP Rosevear 2006-04-03 03:31:10 UTC
Stanislav, I think there is a logic error in xdg-environment and some of the other gnome related environment scripts, we have:

if ( ${?XDG_DATA_DIRS} ) then

instead of:

if ( ! ${?XDG_DATA_DIRS} ) then

Does that look right?
Comment 14 Stanislav Brabec 2006-04-03 09:48:16 UTC
Yes for both conditions in /etc/profile.d/xdg-enviroment.csh.

Both should be "if string is empty" then define it.

To reporter: Could you confirm, that adding "!" to both conditions fixed both your problems?

Reassigning to aaa_base maintainer. Please fix both conditions in /etc/profile.d/xdg-enviroment.csh.
Comment 15 Ruediger Oertel 2006-04-03 10:07:08 UTC
ok, fixed.
Comment 16 Forgotten User n7rXO1Vrxz 2006-04-03 12:05:43 UTC
It's working. Thank you!
Comment 17 JP Rosevear 2006-04-03 12:14:37 UTC
This also needs to be fixed in glib2.csh, gnome-filesystem.csh, gtk2.csh, pkgconfig.csh
Comment 18 Stanislav Brabec 2006-04-03 12:48:23 UTC
glib2: Seems to be OK. Missing G_FILENAME_ENCODING was a problem of bad order. Now renamed to zzz-glib2.*.

gnome-filesystem: Seems to be OK. csh code has reversed if/else branches.

gtk2: Seems to be OK. csh code has reversed if/else branches.

pkgconfig: Seems to be OK. csh code has reversed if/else branches.