Bug#224509: Don't require a TTY during maintainer script execution
On Thu, Jun 03, 2010 at 09:34:32AM -0700, Russ Allbery wrote:
> I'm looking for seconds or further discussion if people don't believe that
> this is the right direction to go.
> diff --git a/policy.sgml b/policy.sgml
> index af00c0e..3f6b82d 100644
> --- a/policy.sgml
> +++ b/policy.sgml
> @@ -3557,15 +3557,26 @@ Files:
> <heading>Controlling terminal for maintainer scripts</heading>
>
> <p>
> - The maintainer scripts are guaranteed to run with a
> - controlling terminal and can interact with the user.
> - Because these scripts may be executed with standard output
> - redirected into a pipe for logging purposes, Perl scripts
> - should set unbuffered output by setting <tt>$|=1</tt> so
> - that the output is printed immediately rather than being
> - buffered.
> + Maintainer scripts are not guaranteed to run with a controlling
> + terminal and may not be able to interact with the user. They
> + must be able to fall back to noninteractive behavior if no
> + controlling terminal is available. Maintainer scripts that
> + prompt via a program conforming to the Debian Configuration
> + Management Specification (see <ref id="maintscriptprompt">) may
> + assume that program will handle falling back to noninteractive
> + behavior.
> + </p>
> +
> + <p>
> + For high-priority prompts without a reasonable default answer,
> + maintainer scripts may abort if there is no controlling
> + terminal. However, this situation should be avoided if at all
> + possible, since it prevents automated or unattended installs.
> + In most cases, users will consider this to be a bug in the
> + package.
> </p>
> </sect>
> +
> <sect id="exitstatus">
> <heading>Exit status</heading>
>
> @@ -9537,9 +9548,9 @@ END-INFO-DIR-ENTRY
> </p>
>
> <p>
> - The maintainer scripts are guaranteed to run with a
> - controlling terminal and can interact with the user.
> - See <ref id="controllingterminal">.
> + The maintainer scripts are not guaranteed to run with a
> + controlling terminal and may not be able to interact with
> + the user. See <ref id="controllingterminal">.
> </p>
> </item>
Seconded.
Cheers,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek@ubuntu.com vorlon@debian.org
Reply to: