svn commit: r268641 - head/usr.sbin/service

dteske at FreeBSD.org dteske at FreeBSD.org
Wed Jul 16 02:40:16 UTC 2014


 

 

From: Benjamin Kaduk [mailto:bjkfbsd at gmail.com] 
Sent: Tuesday, July 15, 2014 7:24 PM
To: dteske at freebsd.org
Cc: Bryan Drewery; svn-src-head at freebsd.org; svn-src-all at freebsd.org; src-committers at freebsd.org
Subject: Re: svn commit: r268641 - head/usr.sbin/service

 

On Tue, Jul 15, 2014 at 10:13 PM, <dteske at freebsd.org <mailto:dteske at freebsd.org> > wrote:


Blatting out the environment feels rude and non-UNIXy.

UNIX programs can, and should expect at a minimum to
be able to interrogate the environment they are running
within -- destroying all vestiges of that environment purely
for the sake of saying "it's clean" seems counter to the
UNIX pathos.

 

 

I'm not sure I can square this sense of "non-UNIXy" with the long-standing documented behavior of cron to only set SHELL, PATH, LOGNAME, and HOME.  Surely cron is Unixy...

 

[Devin Teske] 

Last time I checked, cron did not define the UNIX standard.

That is to say, that simply because cron decides to export

those exact 4 variables does not mean that all of UNIX

should never export any other variable.

 

I define non-UNIXy as chicanery that makes working in a

POSIX environment more difficult. In this particular case,

the issue is that should I want to find out what type of

terminal my *terminal* program is running on, I shouldn't

have to fight the system to determine the answer. Rather,

the system should (unless it has damn-good reason) freely

offer information that divulges what environment the

program is running in.

 

I am not making the argument that boot-scripts should

have access to every environment variable in the parent

namespace, but I am arguing that standard UNIX idioms

such as $TERM _should_ be provided (not providing them

is imho non-UNIX like).

-- 

Devin



More information about the svn-src-head mailing list