[pkg-fso-maint] Bug#525908: Missing $SHELL variable is the problem

Andrei Popescu andreimpopescu at gmail.com
Wed May 13 06:35:29 UTC 2009


On Wed,13.May.09, 00:11:28, Joachim Breitner wrote:
> Hi,
> 
> Am Mittwoch, den 13.05.2009, 00:43 +0300 schrieb Andrei Popescu:
> > > This leads to the question whether nodm should clean it’s environment,
> > > and it probably should – again, help would be appreciated in seeing what
> > > xdm or gdm do: What of their environment do they retain, what do they
> > > delete and what do they actively set.
> > 
> > I'm running gdm with autologin and the environment is setup correctly on 
> > the first start.
> 
> looking at ./daemon/slave.c in the gdm sources, I think the interesting
> function is session_child_run. Among other stuff, it contains these
> lines:
>         /* Prepare user session */
>         g_setenv ("XAUTHORITY", d->userauth, TRUE);

not set

>         g_setenv ("DISPLAY", d->name, TRUE);

ok

>         if (d->windowpath)
>                 g_setenv ("WINDOWPATH", d->windowpath, TRUE);

ok

>         g_setenv ("LOGNAME", pwent->pw_name, TRUE);

ok

>         g_setenv ("USER", pwent->pw_name, TRUE);

ok

>         g_setenv ("USERNAME", pwent->pw_name, TRUE);

not set

>         g_setenv ("HOME", home_dir, TRUE);

ok

> #ifdef WITH_CONSOLE_KIT
>         if (ck_session_cookie != NULL) {
>                 g_setenv ("XDG_SESSION_COOKIE", ck_session_cookie, TRUE);

ok

>         }
> #endif
>         g_setenv ("PWD", home_dir, TRUE);

ok

>         g_setenv ("GDMSESSION", session, TRUE);

not set (of course)

>         g_setenv ("DESKTOP_SESSION", session, TRUE);

not set

>         g_setenv ("SHELL", pwent->pw_shell, TRUE);

not set as previously reported

> [..]
>         /* Special PATH for root */
>         if (pwent->pw_uid == 0)
>                 g_setenv ("PATH", gdm_daemon_config_get_value_string (GDM_KEY_ROOT_PATH), TRUE);
>         else
>                 g_setenv ("PATH", gdm_daemon_config_get_value_string (GDM_KEY_PATH), TRUE);

set correctly for the user
 
> Andrei, could you check which of these environment variables are missing
> a sensible value in a nodm session started at system start?

Attached is also the output of 'env' in a "bad" session. Something else 
that might be related is this entry in syslog:

May 13 09:29:29 bixi console-kit-daemon[2136]: WARNING: Couldn't read /proc/2135/environ: Failed to open file '/proc/2135/environ': No such file or directory

Regards,
Andrei
-- 
If you can't explain it simply, you don't understand it well enough.
(Albert Einstein)
-------------- next part --------------
USER=amp
CONSOLE=/dev/console
SSH_AGENT_PID=2349
HOME=/home/amp
XDG_SESSION_COOKIE=265759f52e7dd88e32b435e949e9b887-1242118068.828522-568701205
runlevel=2
init=/sbin/init
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-fDpyukkNhe,guid=3e4bb3985e42118bc3ccc75b4a0937b5
COLORTERM=rxvt-xpm
INIT_VERSION=sysvinit-2.86
LOGNAME=amp
WINDOWID=12582919
COLORFGBG=default;default;0
TERM=rxvt-unicode
WINDOWPATH=7
SELINUX_INIT=YES
PATH=/home/amp/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
RUNLEVEL=2
DISPLAY=:0.0
PREVLEVEL=N
LANG=ro_RO.UTF-8
SSH_AUTH_SOCK=/tmp/ssh-vhlKZz2325/agent.2325
previous=N
PWD=/home/amp
rootmnt=/root
VERBOSE=no
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-fso-maint/attachments/20090513/58f7d42c/attachment-0001.pgp>


More information about the pkg-fso-maint mailing list