[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Proposal question.

From: Nicola Pero
Subject: Re: Proposal question.
Date: Thu, 9 May 2002 23:48:19 +0100 (BST)

> > > > The general idea is that that is done via unix-like configuration files,
> > > > basically a very simple ~/.GNUsteprc.
> > > 
> > > What's wrong with:
> > > 
> > >        . /usr/local/GNUstep/System/Makefiles/GNUstep.sh
> > >        export GNUSTEP_USER_ROOT=$HOME/GNU-I-prefer-it-named-such-STEP 
> > 
> > Good question :-) - it's technical and I suppose there must already be a
> > long thread archived about that somewhere.
> > 
> > I'm likely not good at explaining that - anyway, basically, to support
> > properly the API and programs changing user, gnustep-base needs to be able
> > to determine the gnustep user root dir of a generic user (particularly, of
> > a user which is not the user the library originally started as).
> > 
> > If the generic user customizes his own gnustep user root dir by setting a
> > shell variable in his ~/.bashrc or ~/.profile ... there is no way we can
> > get it from inside gnustep-base running originally for another user.
> > 
> > Setting it inside a ~/.GNUsteprc solves the problem.
> > 
> > It's not particularly more complicated than setting GNUSTEP_USER_ROOT ...
> > actually maybe even easier - and likely much easier to be changed/setup in
> > a reliable but automatical way by software.
> May be I should object to such programs, then.

It is a common behaviours for servers to start as root, then soon
afterwards switch to a different user (eg, apache is normally doing that).

These servers start as root, but when they switch to a different user,
they can no longer access/read/write root's gnustep user root and root's
gnustep defaults.

What gnustep user root should they be using then ?

What gnustep user defaults ?

They can't be using the old ones, since they can't even access it.  They
need ones.  They should be able to run properly as proper processes for
the new user - which includes accessing user defaults for the new user,
and includes accessing GNUSTEP_USER_ROOT of the new user, which is often
used to store any sort of user-specific data and information.

> Do you realize  that a given user may  have several GNUSTEP_USER_ROOT,
> and that his .profile may select automatically one or the other (along
> with  different GNUSTEP_SYSTEM_ROOT and  GNUSTEP_LOCAL_ROOT) depending
> on various circumstances.  The simpliest  of which may be a NFS-shared
> home   directory   mounted   on   various   systems   with   different
> architectures.

Hmmm - very interesting example - thanks ... hmmm.

Maybe we should extend .GNUsteprc to support multiple sections for
multiple machines, or perhaps have the option of having .GNUsteprc-host
files which would be used in preference to .GNUsteprc (if the hostname
matches the matchine we are running on).  That would allow the user to
decide if he wants the same gnustep user root and gnustep user defaults on
all machines or to have a different one on some special machine.

If you (/someone) have a more brilliant idea, suggestions are welcome.

> Please, tell me what can of action these programs would do?  
> Why can't they work only on GNUSTEP_SYSTEM_ROOT and GNUSTEP_LOCAL_ROOT?
> What good reason may have them to mess with one user's environment?

The same reasons any other program can have to read/write the user's
environment.  It's normal for any program to read/write the user's

reply via email to

[Prev in Thread] Current Thread [Next in Thread]