base-files (was: [1.7] Updated: cygwin-1.7.0-47)

John Morrison john@morrison.mine.nu
Fri May 8 09:54:00 GMT 2009


On Fri, May 8, 2009 10:32 am, Corinna Vinschen wrote:
> Hi John,
>
> On May  6 16:33, Corinna Vinschen wrote:
>> On May  6 14:54, John Morrison wrote:
>> > On Wed, May 6, 2009 2:25 pm, Corinna Vinschen wrote:
>> > > I just uploaded a new Cygwin 1.7 test release, 1.7.0-47.
>> > >
>> > > What's new in contrast to 1.7.0-46
>> > > ===================================
>> > >
>> > > - Never use HOMEDRIVE/HOMEPATH to construct a default home directory
>> for
>> > >   the current user.  The mechanism to evaluate the pathname is now:
>> > >
>> > >   - If $HOME is already set in the envirnment, use it.
>> > >   - Otherwise, if /etc/passwd contains a non-empty homedir for the
>> > >     current user, use it.
>> > >   - Otherwise, default to /home/<USERNAME>.
>> > >
>> > >   This circumvents a few installation problems and decouples the
>> Cygwin
>> > >   homedir by default from the Windows profile directory, which
>> > >   especially starting with Vista results in performance problems due
>> to
>> > >   the new Explorer behaviour concerning "shared" files.  If you want
>> to
>> > >   use the Windows profile dir as home dir, set $HOME or tweak your
>> > >   /etc/passwd entry accordingly.
>> >
>> > I'll change /etc/profile to reflect the above text.
>> >
>> > Could this result in situations where the skel files arn't copied?
>>
>> Yes, that was one of the reasons I changed it.  The old way to eval the
>> user's HOME dir could result in the skel files not being created because
>> the HOME directory already existed.  The non-existance of HOME triggers
>> writing the skel files.  Now the skel files typically are created
>> because /home/$USER doesn't exist when bash is started the first time.
>
> after a short discussion on cygwin-developers starting here
> http://cygwin.com/ml/cygwin-developers/2009-05/msg00001.html
> I'm wondering if it wouldn't be better to default directly to /
> if the user's home dir can't be created or accessed.  It would
> also just simplify /etc/profile:
>
> --- profile.ORIG        2009-05-08 11:28:55.456869200 +0200
> +++ profile     2009-05-08 11:31:41.174558600 +0200
> @@ -64,12 +64,7 @@ if [ ! -d "${HOME}" ]; then
>                 done
>         else
>                 echo "${HOME} could not be created."
> -
> -               { [ -d "${TEMP}" ] && HOME="${TEMP}"; } ||
> -                       { [ -d "${TMP}" ] && HOME="${TMP}"; } ||
> -                       { [ -d /tmp ] && HOME=/tmp; } ||
> -                       HOME=/
> -
> +               HOME=/
>                 echo "Setting HOME to ${HOME}."
>         fi
>  fi

OK, I'll also move the umask setting above the creation of home (there was
comment in the thread).  I don't follow the -developer list.  Would it be
worth me subscribing?

J.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list