Looking at the timouts suggested in Comment #15, I think they may actually be realizable with modular scripts. A base rootdelay script, and separate mdadm and cryptsetup sripts (that get called by their udev rules) can halt/extend the regular rootdelay (exported variable? named pipe?), if waiting for user input or a new level of raid degrading timeout. (As pipes block, reading from pipes may do good for event based processing.)
Looking at the timouts suggested in Comment #15, I think they may actually be realizable with modular scripts. A base rootdelay script, and separate mdadm and cryptsetup sripts (that get called by their udev rules) can halt/extend the regular rootdelay (exported variable? named pipe?), if waiting for user input or a new level of raid degrading timeout. (As pipes block, reading from pipes may do good for event based processing.)
Phillip, your idea of handling udev events by modular event handlers (that may again trigger udev events, if I interpret you correctly) may also be what appears in part of the OpenRC discussion. lists.debian. org/debian- devel/2012/ 03/msg00452. html lists.debian. org/debian- devel/2012/ 04/msg00547. html
On init in Debian http://
RFC: OpenRC as Init http://