.bash_profile not run when using graphical login

Colin Watson cjwatson at canonical.com
Tue Oct 5 21:59:10 UTC 2004


On Wed, Oct 06, 2004 at 05:24:10AM +0800, John wrote:
> Ross Burton wrote:
> >Debian Policy says packages should work with no environmental variables
> >defined.  For the Java example, this is why there are /usr/bin/java
> >(etc.) alternatives which JVMs register with.
> 
> This isn't Debian. Debian won't package firmware for wireless cards either.
> 
> I don't think, haven't checked, that that _is_ what Debian policy says - 
> it's not what those who know have said.

     A program must not depend on environment variables to get reasonable
     defaults.  (That's because these environment variables would have to
     be set in a system-wide configuration file like `/etc/profile', which
     is not supported by all shells.)

> Practically nothing works that way.
> 
> PATH is an environment variable.
> BASH can be configured with environment variables.
> 
> Besides, I think putting configuration files for the user to customise 
> into /etc/profile.d is configuring with configuration files. I'm only a 
> stoopid user but, and Debian doesn't listen to stoopid users. What do 
> they know?

Debian is trying to make things *easier* for users here, by stamping out
the practice of requiring lots of obscure little environment variables
to make a program work at all. I realize that Ubuntu is not Debian, but
I think Debian is doing exactly the right thing here.

If /etc/profile.d were ever added, it should be absolutely forbidden for
packages to put anything there.

Also, Debian is trying to make things easier for users by observing that
different shells have different syntax requirements, and /etc/profile.d
cannot cover them all; this greatly reduces user confusion. Your edits
to /etc/profile.d will not have any effect on tcsh users.

Cheers,

-- 
Colin Watson                                    [cjwatson at canonical.com]




More information about the ubuntu-users mailing list