public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Wrong expansion of ~/
@ 2020-08-24  8:05 Morten Kjærulff
  2020-08-24  9:50 ` Thomas Wolff
  0 siblings, 1 reply; 11+ messages in thread
From: Morten Kjærulff @ 2020-08-24  8:05 UTC (permalink / raw)
  To: cygwin

Hi,

I have a script that starts several tmux panes with my favorite commands.
In some (*some* and only *sometimes*) of the panes I see:

-bash: /home/xxxxxP/.git-completion.bash: No such file or directory
-bash: /home/xxxxxP/.git-prompt.sh: No such file or directory

My .bashrc has:

$ grep git .bashrc
. ~/.git-completion.bash
. ~/.git-prompt.sh

My userid is xxxxxf (and not xxxxxP).

Is this known?

/Morten

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-24  8:05 Wrong expansion of ~/ Morten Kjærulff
@ 2020-08-24  9:50 ` Thomas Wolff
  2020-08-24 12:36   ` Morten Kjærulff
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Wolff @ 2020-08-24  9:50 UTC (permalink / raw)
  To: cygwin

Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
> Hi,
>
> I have a script that starts several tmux panes with my favorite commands.
> In some (*some* and only *sometimes*) of the panes I see:
>
> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
>
> My .bashrc has:
>
> $ grep git .bashrc
> . ~/.git-completion.bash
> . ~/.git-prompt.sh
>
> My userid is xxxxxf (and not xxxxxP).
>
> Is this known?
What if you trace `echo $HOME; echo ~` after the `.`? I have occasional 
cases where $HOME and ~ start to be different in my shell, which is 
quite weird and should not happen according to bash documentation.
Thomas
>
> /Morten
> --
> Problem reports:      https://cygwin.com/problems.html
> FAQ:                  https://cygwin.com/faq/
> Documentation:        https://cygwin.com/docs.html
> Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-24  9:50 ` Thomas Wolff
@ 2020-08-24 12:36   ` Morten Kjærulff
  2020-08-24 20:39     ` Brian Inglis
  0 siblings, 1 reply; 11+ messages in thread
From: Morten Kjærulff @ 2020-08-24 12:36 UTC (permalink / raw)
  To: cygwin

On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>
> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
> > Hi,
> >
> > I have a script that starts several tmux panes with my favorite commands.
> > In some (*some* and only *sometimes*) of the panes I see:
> >
> > -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
> > -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
> >
> > My .bashrc has:
> >
> > $ grep git .bashrc
> > . ~/.git-completion.bash
> > . ~/.git-prompt.sh
> >
> > My userid is xxxxxf (and not xxxxxP).
> >
> > Is this known?
> What if you trace `echo $HOME; echo ~` after the `.`? I have occasional
> cases where $HOME and ~ start to be different in my shell, which is
> quite weird and should not happen according to bash documentation.

Ok,

My userid is xx00mkf.


If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
  echo "HOME=" $HOME
  echo "~=" ~
fi

I see:

-bash: /home/xx00m/.git-completion.bash: No such file or directory
HOME= /home/xx00mkf
~= /home/xx00m


If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
  echo "HOME=" $HOME
  echo "~=" ~
  echo "~/.git-completion.bash=" ~/.git-completion.bash
fi

-bash: /home/xx00m/.git-completion.bash: No such file or directory
HOME= /home/xx00mkf
~= /home/xx00mkf
~/.git-completion.bash= /home/xx00mkf/.git-completion.bash


If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
  echo "HOME=" $HOME
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
  echo "~=" ~
fi

I cannot reproduce the issue.

Weird.

/Morten

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-24 12:36   ` Morten Kjærulff
@ 2020-08-24 20:39     ` Brian Inglis
  2020-08-25  7:15       ` Morten Kjærulff
  0 siblings, 1 reply; 11+ messages in thread
From: Brian Inglis @ 2020-08-24 20:39 UTC (permalink / raw)
  To: cygwin

On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
>>> I have a script that starts several tmux panes with my favorite commands.
>>> In some (*some* and only *sometimes*) of the panes I see:
>>>
>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
>>>
>>> My .bashrc has:
>>>
>>> $ grep git .bashrc
>>> . ~/.git-completion.bash
>>> . ~/.git-prompt.sh
>>>
>>> My userid is xxxxxf (and not xxxxxP).
>>>
>>> Is this known?
>> What if you trace `echo $HOME; echo ~` after the `.`? I have occasional
>> cases where $HOME and ~ start to be different in my shell, which is
>> quite weird and should not happen according to bash documentation.
> 
> Ok,
> 
> My userid is xx00mkf.
> 
> 
> If I add:
> 
> . ~/.git-completion.bash
> if [ ! $? = 0 ] ; then
>   echo "HOME=" $HOME
>   echo "~=" ~
> fi
> 
> I see:
> 
> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> HOME= /home/xx00mkf
> ~= /home/xx00m
> 
> 
> If I add:
> 
> . ~/.git-completion.bash
> if [ ! $? = 0 ] ; then
>   echo "HOME=" $HOME
>   echo "~=" ~
>   echo "~/.git-completion.bash=" ~/.git-completion.bash
> fi
> 
> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> HOME= /home/xx00mkf
> ~= /home/xx00mkf
> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash

HOME dir depends on entries in:

	/etc/nsswitch.conf

whether you have /etc/passwd and/or /etc/group files and their entries;

your SAM and/or AD entry contents including e.g.

	$ net user $USER | grep '^Comment'
	Comment		<cygwin home="/home/..." group="Users"...>

You can check if any of these are in effect by running:

	$ getent passwd $USER

If you think they are relevant, you might also want to try to trace and debug
your bash-completion setup scripts:

	$ set -vx
	$ . /etc/profile.d/bash_completion.sh |& tee /tmp/completion.log | less

to see what they are doing that might affect other settings.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in IEC units and prefixes, physical quantities in SI.]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-24 20:39     ` Brian Inglis
@ 2020-08-25  7:15       ` Morten Kjærulff
  2020-08-25 12:58         ` Brian Inglis
  0 siblings, 1 reply; 11+ messages in thread
From: Morten Kjærulff @ 2020-08-25  7:15 UTC (permalink / raw)
  To: cygwin

On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
>
> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
> > On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
> >> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
> >>> I have a script that starts several tmux panes with my favorite commands.
> >>> In some (*some* and only *sometimes*) of the panes I see:
> >>>
> >>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
> >>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
> >>>
> >>> My .bashrc has:
> >>>
> >>> $ grep git .bashrc
> >>> . ~/.git-completion.bash
> >>> . ~/.git-prompt.sh
> >>>
> >>> My userid is xxxxxf (and not xxxxxP).
> >>>
> >>> Is this known?
> >> What if you trace `echo $HOME; echo ~` after the `.`? I have occasional
> >> cases where $HOME and ~ start to be different in my shell, which is
> >> quite weird and should not happen according to bash documentation.
> >
> > Ok,
> >
> > My userid is xx00mkf.
> >
> >
> > If I add:
> >
> > . ~/.git-completion.bash
> > if [ ! $? = 0 ] ; then
> >   echo "HOME=" $HOME
> >   echo "~=" ~
> > fi
> >
> > I see:
> >
> > -bash: /home/xx00m/.git-completion.bash: No such file or directory
> > HOME= /home/xx00mkf
> > ~= /home/xx00m
> >
> >
> > If I add:
> >
> > . ~/.git-completion.bash
> > if [ ! $? = 0 ] ; then
> >   echo "HOME=" $HOME
> >   echo "~=" ~
> >   echo "~/.git-completion.bash=" ~/.git-completion.bash
> > fi
> >
> > -bash: /home/xx00m/.git-completion.bash: No such file or directory
> > HOME= /home/xx00mkf
> > ~= /home/xx00mkf
> > ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
>
> HOME dir depends on entries in:
>
>         /etc/nsswitch.conf
>
> whether you have /etc/passwd and/or /etc/group files and their entries;
>
> your SAM and/or AD entry contents including e.g.
>
>         $ net user $USER | grep '^Comment'
>         Comment         <cygwin home="/home/..." group="Users"...>
>
> You can check if any of these are in effect by running:
>
>         $ getent passwd $USER
>
> If you think they are relevant, you might also want to try to trace and debug
> your bash-completion setup scripts:
>
>         $ set -vx
>         $ . /etc/profile.d/bash_completion.sh |& tee /tmp/completion.log | less
>
> to see what they are doing that might affect other settings.

Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
a few commands in .bashrc:

If I add:

. ~/.git-completion.bash
if [ ! $? = 0 ] ; then
  echo "HOME=" $HOME
  echo "~=" ~
  echo "~/.git-completion.bash=" ~/.git-completion.bash
fi

I see (*sometimes*):

-bash: /home/xx00m/.git-completion.bash: No such file or directory <<<wrong
HOME= /home/xx00mkf
~= /home/xx00mkf <<<correct
~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct

/Morten

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-25  7:15       ` Morten Kjærulff
@ 2020-08-25 12:58         ` Brian Inglis
  2020-08-27  7:44           ` Morten Kjærulff
  0 siblings, 1 reply; 11+ messages in thread
From: Brian Inglis @ 2020-08-25 12:58 UTC (permalink / raw)
  To: cygwin

On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
> On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
>>
>> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
>>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
>>>>> I have a script that starts several tmux panes with my favorite commands.
>>>>> In some (*some* and only *sometimes*) of the panes I see:
>>>>>
>>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
>>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
>>>>>
>>>>> My .bashrc has:
>>>>>
>>>>> $ grep git .bashrc
>>>>> . ~/.git-completion.bash
>>>>> . ~/.git-prompt.sh
>>>>>
>>>>> My userid is xxxxxf (and not xxxxxP).
>>>>>
>>>>> Is this known?
>>>> What if you trace `echo $HOME; echo ~` after the `.`? I have occasional
>>>> cases where $HOME and ~ start to be different in my shell, which is
>>>> quite weird and should not happen according to bash documentation.
>>>
>>> Ok,
>>>
>>> My userid is xx00mkf.
>>>
>>>
>>> If I add:
>>>
>>> . ~/.git-completion.bash
>>> if [ ! $? = 0 ] ; then
>>>   echo "HOME=" $HOME
>>>   echo "~=" ~
>>> fi
>>>
>>> I see:
>>>
>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>>> HOME= /home/xx00mkf
>>> ~= /home/xx00m
>>>
>>>
>>> If I add:
>>>
>>> . ~/.git-completion.bash
>>> if [ ! $? = 0 ] ; then
>>>   echo "HOME=" $HOME
>>>   echo "~=" ~
>>>   echo "~/.git-completion.bash=" ~/.git-completion.bash
>>> fi
>>>
>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>>> HOME= /home/xx00mkf
>>> ~= /home/xx00mkf
>>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
>>
>> HOME dir depends on entries in:
>>
>>         /etc/nsswitch.conf
>>
>> whether you have /etc/passwd and/or /etc/group files and their entries;
>>
>> your SAM and/or AD entry contents including e.g.
>>
>>         $ net user $USER | grep '^Comment'
>>         Comment         <cygwin home="/home/..." group="Users"...>
>>
>> You can check if any of these are in effect by running:
>>
>>         $ getent passwd $USER
>>
>> If you think they are relevant, you might also want to try to trace and debug
>> your bash-completion setup scripts:
>>
>>         $ set -vx
>>         $ . /etc/profile.d/bash_completion.sh |& tee /tmp/completion.log | less
>>
>> to see what they are doing that might affect other settings.
> 
> Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
> a few commands in .bashrc:
> 
> If I add:
> 
> . ~/.git-completion.bash
> if [ ! $? = 0 ] ; then
>   echo "HOME=" $HOME
>   echo "~=" ~
>   echo "~/.git-completion.bash=" ~/.git-completion.bash
> fi
> 
> I see (*sometimes*):
> 
> -bash: /home/xx00m/.git-completion.bash: No such file or directory <<<wrong
> HOME= /home/xx00mkf
> ~= /home/xx00mkf <<<correct
> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct

Well then you have to trace and debug those commands run from your .bashrc where
~ changes, perhaps using bashdb?

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in IEC units and prefixes, physical quantities in SI.]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-25 12:58         ` Brian Inglis
@ 2020-08-27  7:44           ` Morten Kjærulff
  2020-08-27 16:49             ` rifter
  2020-08-27 17:54             ` Jim Garrison
  0 siblings, 2 replies; 11+ messages in thread
From: Morten Kjærulff @ 2020-08-27  7:44 UTC (permalink / raw)
  To: cygwin

On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
>
> On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
> > On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
> >>
> >> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
> >>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
> >>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
> >>>>> I have a script that starts several tmux panes with my favorite commands.
> >>>>> In some (*some* and only *sometimes*) of the panes I see:
> >>>>>
> >>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
> >>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
> >>>>>
> >>>>> My .bashrc has:
> >>>>>
> >>>>> $ grep git .bashrc
> >>>>> . ~/.git-completion.bash
> >>>>> . ~/.git-prompt.sh
> >>>>>
> >>>>> My userid is xxxxxf (and not xxxxxP).
> >>>>>
> >>>>> Is this known?
> >>>> What if you trace `echo $HOME; echo ~` after the `.`? I have occasional
> >>>> cases where $HOME and ~ start to be different in my shell, which is
> >>>> quite weird and should not happen according to bash documentation.
> >>>
> >>> Ok,
> >>>
> >>> My userid is xx00mkf.
> >>>
> >>>
> >>> If I add:
> >>>
> >>> . ~/.git-completion.bash
> >>> if [ ! $? = 0 ] ; then
> >>>   echo "HOME=" $HOME
> >>>   echo "~=" ~
> >>> fi
> >>>
> >>> I see:
> >>>
> >>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> >>> HOME= /home/xx00mkf
> >>> ~= /home/xx00m
> >>>
> >>>
> >>> If I add:
> >>>
> >>> . ~/.git-completion.bash
> >>> if [ ! $? = 0 ] ; then
> >>>   echo "HOME=" $HOME
> >>>   echo "~=" ~
> >>>   echo "~/.git-completion.bash=" ~/.git-completion.bash
> >>> fi
> >>>
> >>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> >>> HOME= /home/xx00mkf
> >>> ~= /home/xx00mkf
> >>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
> >>
> >> HOME dir depends on entries in:
> >>
> >>         /etc/nsswitch.conf
> >>
> >> whether you have /etc/passwd and/or /etc/group files and their entries;
> >>
> >> your SAM and/or AD entry contents including e.g.
> >>
> >>         $ net user $USER | grep '^Comment'
> >>         Comment         <cygwin home="/home/..." group="Users"...>
> >>
> >> You can check if any of these are in effect by running:
> >>
> >>         $ getent passwd $USER
> >>
> >> If you think they are relevant, you might also want to try to trace and debug
> >> your bash-completion setup scripts:
> >>
> >>         $ set -vx
> >>         $ . /etc/profile.d/bash_completion.sh |& tee /tmp/completion.log | less
> >>
> >> to see what they are doing that might affect other settings.
> >
> > Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
> > a few commands in .bashrc:
> >
> > If I add:
> >
> > . ~/.git-completion.bash
> > if [ ! $? = 0 ] ; then
> >   echo "HOME=" $HOME
> >   echo "~=" ~
> >   echo "~/.git-completion.bash=" ~/.git-completion.bash
> > fi
> >
> > I see (*sometimes*):
> >
> > -bash: /home/xx00m/.git-completion.bash: No such file or directory <<<wrong
> > HOME= /home/xx00mkf
> > ~= /home/xx00mkf <<<correct
> > ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct
>
> Well then you have to trace and debug those commands run from your .bashrc where
> ~ changes, perhaps using bashdb?

I really don't know how I can debug this?

With this:

. ~/.git-completion.bash

~ is *sometimes* expanded wrongly:

With this:

while [ ! ~ = $HOME ] ; do
  echo "$0: !!! ~ =! \$HOME" >&2
done
. ~/.git-completion.bash

I *sometimes* see an endless loop.

With this:

while [ ! ~ = $HOME ] ; do
  echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
done
. ~/.git-completion.bash

I see no error.

I have a script that I run under mintty. The script starts tmux, with
some panes. I see the error *sometimes* in *some* panes (not the same
every time).

/Morten

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-27  7:44           ` Morten Kjærulff
@ 2020-08-27 16:49             ` rifter
  2020-08-27 17:56               ` Thomas Wolff
  2020-08-27 17:54             ` Jim Garrison
  1 sibling, 1 reply; 11+ messages in thread
From: rifter @ 2020-08-27 16:49 UTC (permalink / raw)
  To: cygwin

On 8/27/20, Morten Kjærulff via Cygwin <cygwin@cygwin.com> wrote:
> On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
>>
>> On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
>> > On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
>> >>
>> >> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
>> >>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>> >>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
>> >>>>> I have a script that starts several tmux panes with my favorite
>> >>>>> commands.
>> >>>>> In some (*some* and only *sometimes*) of the panes I see:
>> >>>>>
>> >>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
>> >>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
>> >>>>>
>> >>>>> My .bashrc has:
>> >>>>>
>> >>>>> $ grep git .bashrc
>> >>>>> . ~/.git-completion.bash
>> >>>>> . ~/.git-prompt.sh
>> >>>>>
>> >>>>> My userid is xxxxxf (and not xxxxxP).
>> >>>>>
>> >>>>> Is this known?
>> >>>> What if you trace `echo $HOME; echo ~` after the `.`? I have
>> >>>> occasional
>> >>>> cases where $HOME and ~ start to be different in my shell, which is
>> >>>> quite weird and should not happen according to bash documentation.
>> >>>
>> >>> Ok,
>> >>>
>> >>> My userid is xx00mkf.
>> >>>
>> >>>
>> >>> If I add:
>> >>>
>> >>> . ~/.git-completion.bash
>> >>> if [ ! $? = 0 ] ; then
>> >>>   echo "HOME=" $HOME
>> >>>   echo "~=" ~
>> >>> fi
>> >>>
>> >>> I see:
>> >>>
>> >>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>> >>> HOME= /home/xx00mkf
>> >>> ~= /home/xx00m
>> >>>
>> >>>
>> >>> If I add:
>> >>>
>> >>> . ~/.git-completion.bash
>> >>> if [ ! $? = 0 ] ; then
>> >>>   echo "HOME=" $HOME
>> >>>   echo "~=" ~
>> >>>   echo "~/.git-completion.bash=" ~/.git-completion.bash
>> >>> fi
>> >>>
>> >>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>> >>> HOME= /home/xx00mkf
>> >>> ~= /home/xx00mkf
>> >>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
>> >>
>> >> HOME dir depends on entries in:
>> >>
>> >>         /etc/nsswitch.conf
>> >>
>> >> whether you have /etc/passwd and/or /etc/group files and their entries;
>> >>
>> >> your SAM and/or AD entry contents including e.g.
>> >>
>> >>         $ net user $USER | grep '^Comment'
>> >>         Comment         <cygwin home="/home/..." group="Users"...>
>> >>
>> >> You can check if any of these are in effect by running:
>> >>
>> >>         $ getent passwd $USER
>> >>
>> >> If you think they are relevant, you might also want to try to trace and
>> >> debug
>> >> your bash-completion setup scripts:
>> >>
>> >>         $ set -vx
>> >>         $ . /etc/profile.d/bash_completion.sh |& tee
>> >> /tmp/completion.log | less
>> >>
>> >> to see what they are doing that might affect other settings.
>> >
>> > Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
>> > a few commands in .bashrc:
>> >
>> > If I add:
>> >
>> > . ~/.git-completion.bash
>> > if [ ! $? = 0 ] ; then
>> >   echo "HOME=" $HOME
>> >   echo "~=" ~
>> >   echo "~/.git-completion.bash=" ~/.git-completion.bash
>> > fi
>> >
>> > I see (*sometimes*):
>> >
>> > -bash: /home/xx00m/.git-completion.bash: No such file or directory
>> > <<<wrong
>> > HOME= /home/xx00mkf
>> > ~= /home/xx00mkf <<<correct
>> > ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct
>>
>> Well then you have to trace and debug those commands run from your .bashrc
>> where
>> ~ changes, perhaps using bashdb?
>
> I really don't know how I can debug this?
>
> With this:
>
> . ~/.git-completion.bash
>
> ~ is *sometimes* expanded wrongly:
>
> With this:
>
> while [ ! ~ = $HOME ] ; do
>   echo "$0: !!! ~ =! \$HOME" >&2
> done
> . ~/.git-completion.bash
>
> I *sometimes* see an endless loop.
>
> With this:
>
> while [ ! ~ = $HOME ] ; do
>   echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
> done
> . ~/.git-completion.bash
>
> I see no error.
>
> I have a script that I run under mintty. The script starts tmux, with
> some panes. I see the error *sometimes* in *some* panes (not the same
> every time).
>
> /Morten
> --
> Problem reports:      https://cygwin.com/problems.html
> FAQ:                  https://cygwin.com/faq/
> Documentation:        https://cygwin.com/docs.html
> Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
>

I've had funky results from time  to time on  ~ expansion in cygwin
bash. usually it works fine. But sometimes one of the terminal windows
gets into a state where ~ becomes something that isn't all that
intelligible and breaks scripts. I forget if starting a new terminal
fixes it - usually I just quit using ~ until I end up rebooting. Never
really tracked it down.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-27  7:44           ` Morten Kjærulff
  2020-08-27 16:49             ` rifter
@ 2020-08-27 17:54             ` Jim Garrison
  1 sibling, 0 replies; 11+ messages in thread
From: Jim Garrison @ 2020-08-27 17:54 UTC (permalink / raw)
  To: cygwin

On 8/27/2020 12:44 AM, Morten Kjærulff via Cygwin wrote:
> On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
>>
>> On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
>>> On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
>>>>
>>>> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
>>>>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>>>>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
>>>>>>> I have a script that starts several tmux panes with my favorite commands.
>>>>>>> In some (*some* and only *sometimes*) of the panes I see:
>>>>>>>
>>>>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
>>>>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
[snip]
> I really don't know how I can debug this?
> 
> With this:
> 
> . ~/.git-completion.bash
> 
> ~ is *sometimes* expanded wrongly:
> 
> With this:
> 
> while [ ! ~ = $HOME ] ; do
>   echo "$0: !!! ~ =! \$HOME" >&2
> done
> . ~/.git-completion.bash
> 
> I *sometimes* see an endless loop.
> 
> With this:
> 
> while [ ! ~ = $HOME ] ; do
>   echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
> done
> . ~/.git-completion.bash
> 
> I see no error.
> 
> I have a script that I run under mintty. The script starts tmux, with
> some panes. I see the error *sometimes* in *some* panes (not the same
> every time).

What happens if you use $HOME instead of ~ ?


-- 
Jim Garrison jhg@acm.org

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-27 16:49             ` rifter
@ 2020-08-27 17:56               ` Thomas Wolff
  2020-08-28  6:29                 ` Morten Kjærulff
  0 siblings, 1 reply; 11+ messages in thread
From: Thomas Wolff @ 2020-08-27 17:56 UTC (permalink / raw)
  To: cygwin

Am 27.08.2020 um 18:49 schrieb rifter via Cygwin:
> On 8/27/20, Morten Kjærulff via Cygwin <cygwin@cygwin.com> wrote:
>> On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
>>> On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
>>>> On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
>>>>> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
>>>>>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
>>>>>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
>>>>>>>> I have a script that starts several tmux panes with my favorite
>>>>>>>> commands.
>>>>>>>> In some (*some* and only *sometimes*) of the panes I see:
>>>>>>>>
>>>>>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
>>>>>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
>>>>>>>>
>>>>>>>> My .bashrc has:
>>>>>>>>
>>>>>>>> $ grep git .bashrc
>>>>>>>> . ~/.git-completion.bash
>>>>>>>> . ~/.git-prompt.sh
>>>>>>>>
>>>>>>>> My userid is xxxxxf (and not xxxxxP).
>>>>>>>>
>>>>>>>> Is this known?
>>>>>>> What if you trace `echo $HOME; echo ~` after the `.`? I have
>>>>>>> occasional
>>>>>>> cases where $HOME and ~ start to be different in my shell, which is
>>>>>>> quite weird and should not happen according to bash documentation.
>>>>>> Ok,
>>>>>>
>>>>>> My userid is xx00mkf.
>>>>>>
>>>>>>
>>>>>> If I add:
>>>>>>
>>>>>> . ~/.git-completion.bash
>>>>>> if [ ! $? = 0 ] ; then
>>>>>>    echo "HOME=" $HOME
>>>>>>    echo "~=" ~
>>>>>> fi
>>>>>>
>>>>>> I see:
>>>>>>
>>>>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>>>>>> HOME= /home/xx00mkf
>>>>>> ~= /home/xx00m
>>>>>>
>>>>>>
>>>>>> If I add:
>>>>>>
>>>>>> . ~/.git-completion.bash
>>>>>> if [ ! $? = 0 ] ; then
>>>>>>    echo "HOME=" $HOME
>>>>>>    echo "~=" ~
>>>>>>    echo "~/.git-completion.bash=" ~/.git-completion.bash
>>>>>> fi
>>>>>>
>>>>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>>>>>> HOME= /home/xx00mkf
>>>>>> ~= /home/xx00mkf
>>>>>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
>>>>> HOME dir depends on entries in:
>>>>>
>>>>>          /etc/nsswitch.conf
>>>>>
>>>>> whether you have /etc/passwd and/or /etc/group files and their entries;
>>>>>
>>>>> your SAM and/or AD entry contents including e.g.
>>>>>
>>>>>          $ net user $USER | grep '^Comment'
>>>>>          Comment         <cygwin home="/home/..." group="Users"...>
>>>>>
>>>>> You can check if any of these are in effect by running:
>>>>>
>>>>>          $ getent passwd $USER
>>>>>
>>>>> If you think they are relevant, you might also want to try to trace and
>>>>> debug
>>>>> your bash-completion setup scripts:
>>>>>
>>>>>          $ set -vx
>>>>>          $ . /etc/profile.d/bash_completion.sh |& tee
>>>>> /tmp/completion.log | less
>>>>>
>>>>> to see what they are doing that might affect other settings.
>>>> Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
>>>> a few commands in .bashrc:
>>>>
>>>> If I add:
>>>>
>>>> . ~/.git-completion.bash
>>>> if [ ! $? = 0 ] ; then
>>>>    echo "HOME=" $HOME
>>>>    echo "~=" ~
>>>>    echo "~/.git-completion.bash=" ~/.git-completion.bash
>>>> fi
>>>>
>>>> I see (*sometimes*):
>>>>
>>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
>>>> <<<wrong
>>>> HOME= /home/xx00mkf
>>>> ~= /home/xx00mkf <<<correct
>>>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct
>>> Well then you have to trace and debug those commands run from your .bashrc
>>> where
>>> ~ changes, perhaps using bashdb?
>> I really don't know how I can debug this?
>>
>> With this:
>>
>> . ~/.git-completion.bash
>>
>> ~ is *sometimes* expanded wrongly:
>>
>> With this:
>>
>> while [ ! ~ = $HOME ] ; do
>>    echo "$0: !!! ~ =! \$HOME" >&2
>> done
>> . ~/.git-completion.bash
>>
>> I *sometimes* see an endless loop.
>>
>> With this:
>>
>> while [ ! ~ = $HOME ] ; do
>>    echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
>> done
>> . ~/.git-completion.bash
>>
>> I see no error.
>>
>> I have a script that I run under mintty. The script starts tmux, with
>> some panes. I see the error *sometimes* in *some* panes (not the same
>> every time).
>>
>> /Morten
>> --
>> Problem reports:      https://cygwin.com/problems.html
>> FAQ:                  https://cygwin.com/faq/
>> Documentation:        https://cygwin.com/docs.html
>> Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
>>
> I've had funky results from time  to time on  ~ expansion in cygwin
> bash. usually it works fine. But sometimes one of the terminal windows
> gets into a state where ~ becomes something that isn't all that
> intelligible and breaks scripts. I forget if starting a new terminal
> fixes it - usually I just quit using ~ until I end up rebooting. Never
> really tracked it down.
It's sufficient to start a new bash (exec bash) to recover. I have the 
effect that sometimes (rarely) ~ flips to become /home/$USER on one 
system where $HOME is configured to be somewhere else.
I once tried to track it down in bash source, without success so far. 
Yet I suspect it's a bash bug.
Thomas

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Wrong expansion of ~/
  2020-08-27 17:56               ` Thomas Wolff
@ 2020-08-28  6:29                 ` Morten Kjærulff
  0 siblings, 0 replies; 11+ messages in thread
From: Morten Kjærulff @ 2020-08-28  6:29 UTC (permalink / raw)
  To: cygwin

On Thu, Aug 27, 2020 at 7:59 PM Thomas Wolff wrote:
>
> Am 27.08.2020 um 18:49 schrieb rifter via Cygwin:
> > On 8/27/20, Morten Kjærulff via Cygwin <cygwin@cygwin.com> wrote:
> >> On Tue, Aug 25, 2020 at 3:00 PM Brian Inglis wrote:
> >>> On 2020-08-25 01:15, Morten Kjærulff via Cygwin wrote:
> >>>> On Mon, Aug 24, 2020 at 10:41 PM Brian Inglis wrote:
> >>>>> On 2020-08-24 06:36, Morten Kjærulff via Cygwin wrote:
> >>>>>> On Mon, Aug 24, 2020 at 11:52 AM Thomas Wolff wrote:
> >>>>>>> Am 24.08.2020 um 10:05 schrieb Morten Kjærulff via Cygwin:
> >>>>>>>> I have a script that starts several tmux panes with my favorite
> >>>>>>>> commands.
> >>>>>>>> In some (*some* and only *sometimes*) of the panes I see:
> >>>>>>>>
> >>>>>>>> -bash: /home/xxxxxP/.git-completion.bash: No such file or directory
> >>>>>>>> -bash: /home/xxxxxP/.git-prompt.sh: No such file or directory
> >>>>>>>>
> >>>>>>>> My .bashrc has:
> >>>>>>>>
> >>>>>>>> $ grep git .bashrc
> >>>>>>>> . ~/.git-completion.bash
> >>>>>>>> . ~/.git-prompt.sh
> >>>>>>>>
> >>>>>>>> My userid is xxxxxf (and not xxxxxP).
> >>>>>>>>
> >>>>>>>> Is this known?
> >>>>>>> What if you trace `echo $HOME; echo ~` after the `.`? I have
> >>>>>>> occasional
> >>>>>>> cases where $HOME and ~ start to be different in my shell, which is
> >>>>>>> quite weird and should not happen according to bash documentation.
> >>>>>> Ok,
> >>>>>>
> >>>>>> My userid is xx00mkf.
> >>>>>>
> >>>>>>
> >>>>>> If I add:
> >>>>>>
> >>>>>> . ~/.git-completion.bash
> >>>>>> if [ ! $? = 0 ] ; then
> >>>>>>    echo "HOME=" $HOME
> >>>>>>    echo "~=" ~
> >>>>>> fi
> >>>>>>
> >>>>>> I see:
> >>>>>>
> >>>>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> >>>>>> HOME= /home/xx00mkf
> >>>>>> ~= /home/xx00m
> >>>>>>
> >>>>>>
> >>>>>> If I add:
> >>>>>>
> >>>>>> . ~/.git-completion.bash
> >>>>>> if [ ! $? = 0 ] ; then
> >>>>>>    echo "HOME=" $HOME
> >>>>>>    echo "~=" ~
> >>>>>>    echo "~/.git-completion.bash=" ~/.git-completion.bash
> >>>>>> fi
> >>>>>>
> >>>>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> >>>>>> HOME= /home/xx00mkf
> >>>>>> ~= /home/xx00mkf
> >>>>>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash
> >>>>> HOME dir depends on entries in:
> >>>>>
> >>>>>          /etc/nsswitch.conf
> >>>>>
> >>>>> whether you have /etc/passwd and/or /etc/group files and their entries;
> >>>>>
> >>>>> your SAM and/or AD entry contents including e.g.
> >>>>>
> >>>>>          $ net user $USER | grep '^Comment'
> >>>>>          Comment         <cygwin home="/home/..." group="Users"...>
> >>>>>
> >>>>> You can check if any of these are in effect by running:
> >>>>>
> >>>>>          $ getent passwd $USER
> >>>>>
> >>>>> If you think they are relevant, you might also want to try to trace and
> >>>>> debug
> >>>>> your bash-completion setup scripts:
> >>>>>
> >>>>>          $ set -vx
> >>>>>          $ . /etc/profile.d/bash_completion.sh |& tee
> >>>>> /tmp/completion.log | less
> >>>>>
> >>>>> to see what they are doing that might affect other settings.
> >>>> Thanks, but ~ changes from xx01m to xx01mkf (which is correct) between
> >>>> a few commands in .bashrc:
> >>>>
> >>>> If I add:
> >>>>
> >>>> . ~/.git-completion.bash
> >>>> if [ ! $? = 0 ] ; then
> >>>>    echo "HOME=" $HOME
> >>>>    echo "~=" ~
> >>>>    echo "~/.git-completion.bash=" ~/.git-completion.bash
> >>>> fi
> >>>>
> >>>> I see (*sometimes*):
> >>>>
> >>>> -bash: /home/xx00m/.git-completion.bash: No such file or directory
> >>>> <<<wrong
> >>>> HOME= /home/xx00mkf
> >>>> ~= /home/xx00mkf <<<correct
> >>>> ~/.git-completion.bash= /home/xx00mkf/.git-completion.bash <<<correct
> >>> Well then you have to trace and debug those commands run from your .bashrc
> >>> where
> >>> ~ changes, perhaps using bashdb?
> >> I really don't know how I can debug this?
> >>
> >> With this:
> >>
> >> . ~/.git-completion.bash
> >>
> >> ~ is *sometimes* expanded wrongly:
> >>
> >> With this:
> >>
> >> while [ ! ~ = $HOME ] ; do
> >>    echo "$0: !!! ~ =! \$HOME" >&2
> >> done
> >> . ~/.git-completion.bash
> >>
> >> I *sometimes* see an endless loop.
> >>
> >> With this:
> >>
> >> while [ ! ~ = $HOME ] ; do
> >>    echo "$0: !!! ~ =! \$HOME" ~ $HOME >&2
> >> done
> >> . ~/.git-completion.bash
> >>
> >> I see no error.
> >>
> >> I have a script that I run under mintty. The script starts tmux, with
> >> some panes. I see the error *sometimes* in *some* panes (not the same
> >> every time).
> >>
> >> /Morten
> >> --
> >> Problem reports:      https://cygwin.com/problems.html
> >> FAQ:                  https://cygwin.com/faq/
> >> Documentation:        https://cygwin.com/docs.html
> >> Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
> >>
> > I've had funky results from time  to time on  ~ expansion in cygwin
> > bash. usually it works fine. But sometimes one of the terminal windows
> > gets into a state where ~ becomes something that isn't all that
> > intelligible and breaks scripts. I forget if starting a new terminal
> > fixes it - usually I just quit using ~ until I end up rebooting. Never
> > really tracked it down.
> It's sufficient to start a new bash (exec bash) to recover. I have the
> effect that sometimes (rarely) ~ flips to become /home/$USER on one
> system where $HOME is configured to be somewhere else.
> I once tried to track it down in bash source, without success so far.
> Yet I suspect it's a bash bug.
> Thomas
Ok. I have not seen problems with $HOME, so I will use that from now
on, and forget ~
Thanks.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2020-08-28  6:29 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-24  8:05 Wrong expansion of ~/ Morten Kjærulff
2020-08-24  9:50 ` Thomas Wolff
2020-08-24 12:36   ` Morten Kjærulff
2020-08-24 20:39     ` Brian Inglis
2020-08-25  7:15       ` Morten Kjærulff
2020-08-25 12:58         ` Brian Inglis
2020-08-27  7:44           ` Morten Kjærulff
2020-08-27 16:49             ` rifter
2020-08-27 17:56               ` Thomas Wolff
2020-08-28  6:29                 ` Morten Kjærulff
2020-08-27 17:54             ` Jim Garrison

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).