[arch-projects] [mkinitcpio][RFC] a better fallback image?

Dave Reisner d at falconindy.com
Wed Jul 25 17:43:08 EDT 2012

On Wed, Jul 25, 2012 at 11:21:10PM +0200, Tom Gundersen wrote:
> Dave, Tobias, Thomas,
> I just managed to hose one of my machines. It was mainly due to an
> unfortunate series of events, but I have a suggestion which would have
> avoided this situation and might beneficial in general.

Oops. ;P

What did you break?

> The way things are now, I think the fallback image mkinitcpio
> generates by default is not very useful. In my experience the fallback
> image is broken exactly when the regular image is broken. I expect the
> reason for this is that the autodetection of modules is very good
> these days, so _that_ is never the problem.
> When there is a problem, which happens every once in a while, it is
> either due to user error (i.e. configuration errors), or mkinitcpio
> not being ran at all (and hence having the modules of the previous
> kernel (which is what happened to me today).
> It seems to me that a more useful fallback image, would be one that is
> generated at compile-time, rather than at install-time, and shipped as
> a part of the kernel package. This would avoid user errors, and
> mkinitcpio run-time problems.
> This fallback image should contain the widest sets of hooks and
> modules so that it should work on any hardware and any setup (at least
> to the extent possible with our current hooks).
> Any thoughts?
> Cheers,
> Tom

You've mentioned this idea before, and more recently, so has Jan. I've
slowly and quietly been adding support to mkinitcpio to make this less
painful to do. An xz-compressed image with the usb and fw hooks still
weighs in at under 10MiB, so I have no real concerns about this being
problematic for users with separate /boot partitions.

That said, I'm wondering how it would be possible to generate this at
compile time. I'm not really sure how this would be possible. Is there
any objection to just adding another preset (maybe related to how you
fubar'd your install this time?).

As an alternative/addition, which has also been brought up before, why
don't we build in the most basic of modules? I'll bet we can cover at
least 50% of the use cases by picking some choice pata/sata modules
(e.g. ahci, ata_piix, pata_jmicron, sd_mod, ext4) and compiling them in
staticly. It, of course, doesn't cover folks with non-trivial setups,
but it provides a bulletproof bootstrap for a lot of people.


More information about the arch-projects mailing list