[pkg-fso-commits] [SCM] Automatic Display Manager branch, master, updated. nodm/0.3-2-3-gaadb013

Enrico Zini enrico at enricozini.org
Thu May 14 12:19:48 UTC 2009


The following commit has been merged in the master branch:
commit a35e99712e6e8814b84672b6fef06d01b4f220ba
Author: Enrico Zini <enrico at enricozini.org>
Date:   Thu May 14 13:16:10 2009 +0100

    Set USERNAME, PWD and SHELL
    
    Also, document what we know about other variables that gdm sets but
    for which there is no apparent code in nodm to set them.

diff --git a/debian/changelog b/debian/changelog
index 9236df6..76d8f99 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,6 @@
 nodm (0.3) UNRELEASED; urgency=low
 
+  [ Christian Perrier ]
   * Debconf templates and debian/control reviewed by the debian-l10n-
     english team as part of the Smith review project. Closes: #525149
   * [Debconf translation updates]
@@ -15,7 +16,11 @@ nodm (0.3) UNRELEASED; urgency=low
     - Czech. Closes: #528209
     - Spanish. Closes: #528246
 
- -- Christian Perrier <bubulle at debian.org>  Wed, 22 Apr 2009 16:48:41 +0200
+  [ Enrico Zini ]
+  * New upstream version
+     - Set USERNAME, PWD and SHELL in the environment. Closes: #525908.
+
+ -- Enrico Zini <enrico at debian.org>  Thu, 14 May 2009 13:18:28 +0100
 
 nodm (0.3-2) unstable; urgency=low
 
diff --git a/nodm.c b/nodm.c
index 93c12a9..3101448 100644
--- a/nodm.c
+++ b/nodm.c
@@ -598,7 +598,42 @@ static int nodm_session(int argc, char **argv)
 
 	setenv ("HOME", pwent.pw_dir, 1);
 	setenv ("USER", pwent.pw_name, 1);
+	setenv ("USERNAME", pwent.pw_name, 1);
 	setenv ("LOGNAME", pwent.pw_name, 1);
+	setenv ("PWD", pwent.pw_dir, 1);
+	setenv ("SHELL", pwent.pw_shell, 1);
+
+	// Variables that gdm sets but we do not:
+	//
+	// This is something that we should see how to handle.
+	// What I know so far is:
+	//  - It should point to ~/.Xauthority, which should exist.
+	//  - 'xauth generate' should be able to create it if missing, but I
+	//    have not tested it yet.
+	// g_setenv ("XAUTHORITY", d->userauth, TRUE);
+	//
+	// This is 'gnome', 'kde' and so on, and should probably be set by the
+	// X session script:
+	// g_setenv ("DESKTOP_SESSION", session, TRUE);
+	//
+	// This looks gdm specific:
+	// g_setenv ("GDMSESSION", session, TRUE);
+
+	// Variables that gdm sets but we delegate other tools to set:
+	//
+	// These are set by xinit
+	// g_setenv ("DISPLAY", d->name, TRUE);
+	// g_setenv ("WINDOWPATH", d->windowpath, TRUE);
+	//
+	// This is set by the pam_getenvlist loop above
+	// g_setenv ("XDG_SESSION_COOKIE", ck_session_cookie, TRUE);
+	//
+	// This is set by "sh -l" from /etc/profile
+	// 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);
+	//
 
 	/* Clear the NODM_* environment variables */
 	unsetenv("NODM_USER");

-- 
Automatic Display Manager



More information about the pkg-fso-commits mailing list