On May 10, 2008, at 11:44 PM, Junio C Hamano wrote:
nathan spindel <nathans@xxxxxxxxx> writes:
Signed-off-by: nathan spindel <nathans@xxxxxxxxx>
---
git-instaweb.sh | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/git-instaweb.sh b/git-instaweb.sh
index 6f91c8f..b744133 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -31,8 +31,16 @@ conf="$GIT_DIR/gitweb/httpd.conf"
# Defaults:
-# if installed, it doesn't need further configuration (module_path)
-test -z "$httpd" && httpd='lighttpd -f'
+# use lighttpd if it exists, otherwise use apache2
+if test -z "$httpd"
+then
+ if type "lighttpd" > /dev/null 2>&1;
The exit code from "type" is very loosely defined by POSIX which
just says
it exits >0 to signal that "an error occured". Presumably it means
there
is no such command that is executable on the $PATH, and it may be more
portable and reliable than using "which", but this still worries me.
Doesn't "lighttpd" have an option that reports "I am here" and exit 0,
e.g. "--version"? Then we could instead say:
if lighttpd --version >/dev/null
then
... use it ...
and that would be much nicer...
Actually, this approach has the same problem that's worked around
here: <http://repo.or.cz/w/git.git?a=blob;f=git-
instaweb.sh;hb=HEAD#l46>. (You might have lighttpd installed but not
be on your $PATH, which the script should handle for you).
It seems the best approach would be to function-ize the aforementioned
httpd-path-checking logic [that currently uses "which"] and use it for
(a) detecting if lighttpd is installed and (b) looking for apache2
binaries named httpd.
I think for now these particular patches will continue to use "type"
as you somewhat suggested earlier today. :)
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html