Re: kernel-package hooks transition
On Sat, Dec 24, 2005 at 09:19:36AM -0600, Manoj Srivastava wrote:
> Hi,
>
> In the recent 10.X series, kernel package has started
> producing image packages whose maintainer scripts use debconf for
> user interaction. Unfortunately, this meant that any hook scripts
> called in the maintainer scripts for the image package (update-grub
> comes to mind), if they wrote anything at all to the STDout, would
> cause debconf to throw hissy fits, since it was expecting commands on
> STDOUT, not random chatter from the hook scripts.
>
> One solution was to call db_stop before calling the hook
> scripts, and redirecting stdout to stderr in hte invocation of the
> scripts. Unfortunately, this made any scripts that used debconf
> impossible.
Notice that the debconf helper scripts provide stdout on &3, so any scripts
writing to stdout only need to redirect their output to &3, no ?
Another idea would be to have some tag or something to declare if the script
uses debconf or not, and to do the redirection depending on that ? It could be
parsing for something like :
<comment delimiter> KPKG-TAG: debconf
(where <comment delimiter> is # for shell scripts, obviously).
This would allow for the most flexibility, and still work out fine, and
parsing would be a simple grep command, so rather cheap (if grep
KPKG-TAG.*debconf; then debconf stuff; else non-debconf stuff; fi)
Oh and BTW, 10.023 did not fix the mkvmlinuz problem, not sure if you saw me
reopening the bug reports. I will try to investigate this on tuesday, altough
i am really lost about this and help will be welcomed.
For powerpc users, a workaround is to remove the debconf stuff by hand. There
are two scripts :
/etc/kernel/postinst.d/mkvmlinuz and /etc/kernel/prerm.d/mkvmlinuz
And the best way is to replace the lines :
. /usr/share/debconf/confmodule
db_get mkvmlinuz/bootloaders
bootloader="$RET"
by :
bootloader=<your_choice>
Where <your_choice> is yaboot on pmac and rs6k, and mkvmlinuz otherwise.
Friendly,
Sven Luther
Reply to: