Ben Finney <[EMAIL PROTECTED]> wrote: > On 23-Dec-2005, Frank Küster wrote: >> Ben Finney <[EMAIL PROTECTED]> wrote: >> > A shebang line is more than documentation: it is a strong >> > indication that the script will be executable from the command >> > line. To have that expectation not be matched by the file's >> > permission mode is a recipe for confusion. >> >> The fact that the script is not in the path isn't enough for you >> here? > > There are many executables, that I can invoke from the command line by > typing their explicit location, that are not in the default executable > path on a Debian system.
That's correct. >> And don't you think that anyone who knows that a shebang lines >> indicates executability from the command line would easily solve the >> problem of a "permission denied"? > > The confusion I refer to is not "how do I fix this?" but rather "why > is there a mismatch, and what is the intended behaviour?" That there > is a mismatch at all is the confusion. Okay, so the rationale for the lintian warning would be: "If a script starts with `#!/path/to/interpreter', this indicates that it is intended to be directly executed, therefore it should have have the executable bits set." However, for me, this sounds like a reason not to make the script executable in *my*case*. Most of the scripts in question in the tetex-base package are from ConTeXt, a software also distributed on its own, but for Debian integrated into teTeX by the teTeX upstream maintainer. It might well be that teTeX's upstream has deliberately decided not to make these scripts executable - for example because he wants his software to work with "./configure; make; make install", whereas calling the scripts directly would require to set some environment variables (which on teTeX are passed to the scripts by the programs that indirectly call them). An other possible rationale for upstream's decision is that the scripts are originally meant to be in the path by the ConTeXt authors, but for the integration into teTeX it was necessary to create a wrapper script (in fact such a script does exist). In this case the scripts are no longer meant to be executable in teTeX. I think Debian should stick to (teTeX's) upstream's decision, which will simply work. On the other hand, I see no reason to remove the shebang lines (of a couple of scripts). Does this sound sensible, would it warrant a lintian override? Or what do you think I should do? Regards, Frank -- Frank Küster Inst. f. Biochemie der Univ. Zürich Debian Developer