> A few notes:
> a.) On some platforms fgrep has been deprecated (in favour of `grep -F`) so
> it's not future-proof
I don’t think the aliases fgrep and egrep have ever been supposed to
be portable. POSIX has grep -F and grep -E, and that’s what we should
> b.) The caret (^) passed to `grep -F` will not be interpreted as a regex,
> since -F forces non-regexp, meaning the '^' will be interpreted literally
> (and the string "^musl" is not in the ldd output).
The caret in itself was not the problem, only that it was not escaped
for the shell. Testing a regexp, with -E of course, is just as robust,
and allows us to be more specific about what we test.
> if command -v ldd >/dev/null && ldd --version 2>&1 | grep -Fq 'musl' >
grep -E '^musl' works just as well; and as I explained, -q may return
0 even if there are errors, so should be avoided.
If your question is of interest to others as well, please add an entry to the
maillist : firstname.lastname@example.org / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net