I do remember filing a bug or two against packages that refer to the getent () data to find the user's “home” directory instead of using the HOME environment variable.
The environment is the preferred place to check for this kind of things: it's (usually) under the full control of the user, and it's quite possible to run several instances of a single program using different environments (with different executable file search PATH's, locales, time zones, etc.), which occasionally turns to be an immense aid to debugging. (Want to use the all-defaults configuration for a program? Just start it like: $ HOME="$(mktemp -dt -- foo.XXXXXXXX)" foo) Now, Glib has g_get_home_dir (), whose description reads [1]: --cut-- Gets the current user's home directory as defined in the password database. Note that in contrast to traditional UNIX tools, this function prefers passwd entries over the HOME environment variable. --cut-- I believe that this behavior is buggy. There's even a (yet unresolved) bug report [2] against Gimp due to this behavior, and my guess is that there may be quite a few packages more affected by it. While I understand some of the concerns regarding the “Unix” behavior (also at [1]; quoted below), I'd like to note that the software which both relies on g_get_home_dir () /and/ stores its files under a subdirectory of the home directory returned (which is, arguably, a common practice), is also likely to run into issues should that /subdirectory/ be made non-writable (or non-readable), and the current g_get_home_dir () behavior is not a safeguard against it. Therefore, I'd like to propose for this behavior to be changed to match the usual Unix conventions. To address the only concern listed in [1] I deem valid, I'm also asking that the value of HOME be disregarded, unless it points to a directory, which is readable, writable, and owned, by the user. Unless there be objections (or Glib be quickly patched), I'd be filing a bug report against libglib2.0-0. TIA. --cut-- One of the reasons for this decision is that applications in many cases need special handling to deal with the case where HOME is Not owned by the user Not writeable Not even readable --cut-- [1] http://developer.gnome.org/glib/2.28/glib-Miscellaneous-Utility-Functions.html [2] http://bugs.debian.org/453711 -- FSF associate member #7257 -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/861uhowyp3....@gray.siamics.net