# [RFC/PATCH] git-web--browse: don't add start as candidate on Ubuntu

5 messages from 2009-01-01 to 2009-01-12. Participants: Ramsay Jones, Christian Couder, Junio C Hamano, Petr Baudis.
Thread: https://gitlist.dev/t/16954

## Ramsay Jones, 2009-01-01 21:45

Subject: [RFC/PATCH] git-web--browse: don't add start as candidate on Ubuntu
Message-ID: <495D3964.6040006@ramsay1.demon.co.uk>
URL: https://gitlist.dev/e/495D3964.6040006%40ramsay1.demon.co.uk

```

Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
---

Hi *,

When upgrading to v1.6.1, I noticed that the html help had stopped
working on Linux (Ububtu), viz:

    $ git help -w tag
    start: Need to be root

So, after squinting at git-web--browse.sh, I tried a few things:

    $ ls /bin/start
    ls: /bin/start: No such file or directory
    $ test -n /bin/start; echo $?
    0
    $ which start
    /sbin/start
    $ start fred
    start: Need to be root
    $ ls -l /sbin/start
    lrwxrwxrwx 1 root root 7 2007-06-24 19:45 /sbin/start -> initctl*

So, it would seem that /sbin/start is part of upstart, which would
explain the "Need to be root" ;-)

    $ test -x /bin/start; echo $?
    1
    $ 

So, the patch below fixes the issue for me, but as I don't have MinGW
installed, I can't test this fix works there.

Does anybody else see this issue and can someone test the patch?

ATB,
Ramsay Jones

 git-web--browse.sh |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/git-web--browse.sh b/git-web--browse.sh
index 78d236b..7ed0fad 100755
--- a/git-web--browse.sh
+++ b/git-web--browse.sh
@@ -115,7 +115,7 @@ if test -z "$browser" ; then
 	browser_candidates="open $browser_candidates"
     fi
     # /bin/start indicates MinGW
-    if test -n /bin/start; then
+    if test -x /bin/start; then
 	browser_candidates="start $browser_candidates"
     fi
 
-- 
1.6.1

```

## Christian Couder, 2009-01-04 07:33

Subject: Re: [RFC/PATCH] git-web--browse: don't add start as candidate on Ubuntu
Message-ID: <200901040833.25849.chriscool@tuxfamily.org>
URL: https://gitlist.dev/e/200901040833.25849.chriscool%40tuxfamily.org
In-Reply-To: <495D3964.6040006@ramsay1.demon.co.uk>

```
Le jeudi 1 janvier 2009, Ramsay Jones a écrit :
> Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
> ---
>
> Hi *,
>
> When upgrading to v1.6.1, I noticed that the html help had stopped
> working on Linux (Ububtu), viz:
>
>     $ git help -w tag
>     start: Need to be root
>
> So, after squinting at git-web--browse.sh, I tried a few things:
>
>     $ ls /bin/start
>     ls: /bin/start: No such file or directory
>     $ test -n /bin/start; echo $?
>     0
>     $ which start
>     /sbin/start
>     $ start fred
>     start: Need to be root
>     $ ls -l /sbin/start
>     lrwxrwxrwx 1 root root 7 2007-06-24 19:45 /sbin/start -> initctl*
>
> So, it would seem that /sbin/start is part of upstart, which would
> explain the "Need to be root" ;-)
>
>     $ test -x /bin/start; echo $?
>     1
>     $
>
> So, the patch below fixes the issue for me, but as I don't have MinGW
> installed, I can't test this fix works there.
>
> Does anybody else see this issue and can someone test the patch?

Petr, as you added support for using /bin/start on MinGW, could you test?

Thanks,
Christian.

```

## Junio C Hamano, 2009-01-04 07:53

Subject: Re: [RFC/PATCH] git-web--browse: don't add start as candidate on Ubuntu
Message-ID: <7vljtr33sb.fsf@gitster.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vljtr33sb.fsf%40gitster.siamese.dyndns.org
In-Reply-To: <200901040833.25849.chriscool@tuxfamily.org>

```
Christian Couder <chriscool@tuxfamily.org> writes:

> Le jeudi 1 janvier 2009, Ramsay Jones a écrit :
> ...
>> Does anybody else see this issue and can someone test the patch?
>
> Petr, as you added support for using /bin/start on MinGW, could you test?
>
> Thanks,
> Christian.

> diff --git a/git-web--browse.sh b/git-web--browse.sh
> index 78d236b..7ed0fad 100755
> --- a/git-web--browse.sh
> +++ b/git-web--browse.sh
> @@ -115,7 +115,7 @@ if test -z "$browser" ; then
>  	browser_candidates="open $browser_candidates"
>      fi
>      # /bin/start indicates MinGW
> -    if test -n /bin/start; then
> +    if test -x /bin/start; then
>  	browser_candidates="start $browser_candidates"
>      fi

In any case, the original test is simply bogus.  'test -n "$foo"' is to
see if $foo is an empty string, and giving a constant /bin/start always
yields true.

As an old timer, I tend to prefer "test -f" in this context, as anybody
sane can expect that the directory /bin will contain executables and
nothing else.  Another reason is purely stylistic.  Historically "-f" has
been much more portable than "-x" (which came from SVID), even though it
wouldn't make much difference in practice in the real world these days.

```

## Petr Baudis, 2009-01-04 13:29

Subject: Re: [RFC/PATCH] git-web--browse: don't add start as candidate on Ubuntu
Message-ID: <20090104132947.GV12275@machine.or.cz>
URL: https://gitlist.dev/e/20090104132947.GV12275%40machine.or.cz
In-Reply-To: <7vljtr33sb.fsf@gitster.siamese.dyndns.org>

```
On Sat, Jan 03, 2009 at 11:53:56PM -0800, Junio C Hamano wrote:
> Christian Couder <chriscool@tuxfamily.org> writes:
> 
> > Le jeudi 1 janvier 2009, Ramsay Jones a écrit :
> > ...
> >> Does anybody else see this issue and can someone test the patch?
> >
> > Petr, as you added support for using /bin/start on MinGW, could you test?

Sorry, I don't have access to MinGW system anymore.

> > diff --git a/git-web--browse.sh b/git-web--browse.sh
> > index 78d236b..7ed0fad 100755
> > --- a/git-web--browse.sh
> > +++ b/git-web--browse.sh
> > @@ -115,7 +115,7 @@ if test -z "$browser" ; then
> >  	browser_candidates="open $browser_candidates"
> >      fi
> >      # /bin/start indicates MinGW
> > -    if test -n /bin/start; then
> > +    if test -x /bin/start; then
> >  	browser_candidates="start $browser_candidates"
> >      fi
> 
> In any case, the original test is simply bogus.  'test -n "$foo"' is to
> see if $foo is an empty string, and giving a constant /bin/start always
> yields true.

Oops. :-) That should've obviously been -f.

-- 
				Petr "Pasky" Baudis
The average, healthy, well-adjusted adult gets up at seven-thirty
in the morning feeling just terrible. -- Jean Kerr

```

## Ramsay Jones, 2009-01-12 21:05

Subject: [PATCH v2] git-web--browse: don't add start as candidate on Ubuntu
Message-ID: <496BB0B4.7070303@ramsay1.demon.co.uk>
URL: https://gitlist.dev/e/496BB0B4.7070303%40ramsay1.demon.co.uk
In-Reply-To: <7vljtr33sb.fsf@gitster.siamese.dyndns.org>

```
Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>
---

  Junio C Hamano wrote:
  > Christian Couder <chriscool@tuxfamily.org> writes:
  >> Le jeudi 1 janvier 2009, Ramsay Jones a écrit :
  >> ...
  >>> Does anybody else see this issue and can someone test the patch?
  >> Petr, as you added support for using /bin/start on MinGW, could you test?
  >>
  >> diff --git a/git-web--browse.sh b/git-web--browse.sh
  >> index 78d236b..7ed0fad 100755
  >> --- a/git-web--browse.sh
  >> +++ b/git-web--browse.sh
  >> @@ -115,7 +115,7 @@ if test -z "$browser" ; then
  >>  	browser_candidates="open $browser_candidates"
  >>      fi
  >>      # /bin/start indicates MinGW
  >> -    if test -n /bin/start; then
  >> +    if test -x /bin/start; then
  >>  	browser_candidates="start $browser_candidates"
  >>      fi
  > 
  > In any case, the original test is simply bogus.  'test -n "$foo"' is to
  > see if $foo is an empty string, and giving a constant /bin/start always
  > yields true.
  > 
  > As an old timer, I tend to prefer "test -f" in this context, as anybody
  > sane can expect that the directory /bin will contain executables and
  > nothing else.  Another reason is purely stylistic.  Historically "-f" has
  > been much more portable than "-x" (which came from SVID), even though it
  > wouldn't make much difference in practice in the real world these days.

Sorry for the late reply; if this has already been resolved, then sorry for
the noise.

I was expecting to be castigated for having /sbin in my $PATH. Indeed, I was
a bit surprised... So, I checked my initialization files and then the system
initialization files and could not find where it was being set...

    $ strings /bin/bash | grep sbin
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    $ strings /bin/sh | grep sbin
    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

So I don't think it's anything I'm doing...

Anyway, I've changed the patch as you suggested. It would still be good
if someone on MinGW could test it.

ATB,
Ramsay Jones

 git-web--browse.sh |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/git-web--browse.sh b/git-web--browse.sh
index 78d236b..c5e62a6 100755
--- a/git-web--browse.sh
+++ b/git-web--browse.sh
@@ -115,7 +115,7 @@ if test -z "$browser" ; then
 	browser_candidates="open $browser_candidates"
     fi
     # /bin/start indicates MinGW
-    if test -n /bin/start; then
+    if test -f /bin/start; then
 	browser_candidates="start $browser_candidates"
     fi
 
-- 
1.6.1

```
