Bug 470341

Summary: Startup scripts pausing for input
Product: [Fedora] Fedora Reporter: G. Michael Carter <mikey>
Component: plymouthAssignee: Ray Strode [halfline] <rstrode>
Status: CLOSED CANTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: 10CC: krh, rstrode, thomasj
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-05-24 22:49:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description G. Michael Carter 2008-11-06 19:31:05 UTC
Description of problem:

I have a bunch of init-scripts which detect when key pieces of information are not entered.  ie: hostname, sendmail relay passwords, etc.  All things that I wouldn't want in a rpm but need to be done before network or other services are active.    In the old boot screens if there was a [FAILED] startup it would drop to a text screen where I have the user enter the missing information.

Apache when it has a SSL key with a password will also do the same thing.

If I just leave it the screen functions as normal the white bar goes across the screen and it just sits there.  Doing nothing.   When I high ESC nothing happens.   The only way I've been able to get around this is to hit ESC immediately when the screen comes up.  Then I go to the text startup where I can enter the info.


Version-Release number of selected component (if applicable):

Fedora 9.93
plymouth.i386 - 0.6.0-0.2008.10.30.4.fc10

How reproducible:

Steps to Reproduce:
1. Create a script in /etc/rc5.d/S05test
======================
#!/bin/bash
. /etc/rc.d/init.d/functions

echo -n "Test"
failure
echo

echo "Need some input"
read line
echo "you entered $line"
======================
2. chmod +x /etc/rc5.d/S05test
3. reboot
  
Actual results:
Sits at the plymouth screen and ESC doesn't work.

Expected results:
To drop to the text screen so the input can be entered. 

Additional info:

Normally I'd just change my scripts to work within plymouth but since I know apache could have a similar issue, I thought I'd log a bug.   Just in case there are other programs that could cause the same problem.

Comment 1 Bug Zapper 2008-11-26 04:54:15 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 2 Ray Strode [halfline] 2009-05-24 22:49:05 UTC
I'm not really sure of a way around this beside scripts either calling 

plymouth --hide-splash 

or 

plymouth ask-question --text "Prompt here: "

I don't think there's a way to detect when the console is waiting at a prompt (especially since plymouth is always listening for key events anyway).

One idea would be to switch plymouth from getting keypresses from the tty and instead getting them from /dev/input (evdev), then polling for readable on the tty.  That'd be a lot of work and I'm not event sure if it would work.

I thinkt he most straightforward move is to have the few scripts that need input to ask plymouth to give it like we do for encrypted disks.

Other ideas welcome, though.