On Sat, May 25, 2013 at 11:54:48AM +0200, Luca Barbato wrote:
> I'm back to the other part of it: switching the actual init implementation.
> 
> # WHY (not just edit your bootloader)
> 
> Since efi at least some people started to put in the kernel the bootargs
> and we have at least few new options brewing for init, some are
> small impact (bootchar, bb-init-openrc and runit-openrc) some are more
> invasive (runit and systemd).
> 
> In those setup changing bootargs requires a kernel rebuild and some
> effort, while the eselect approach stays completely transparent.

That's not an argument for using a symlink switcher or the equivalent
across the board, by any means.

Firstly, we should be recommending people install Gentoo with enough
flexibility to configure and use their system how they choose. In the UEFI
arena, why not simply recommend something like rEFIt instead of making
everyone go through a load of development effort, to restrict us all to a
crippled use-case?

NOTE: If you still wish to pursue a fixed config, then it's easy enough to
build it with init=/sbin/einit since presumably you want that setup for your
users.

So even for the restricted corner-case of a Gentoo install without a
bootloader this is not needed. In fact it would be better done using the
existing mechanism.

All I'm saying is: can we please stop trying to reinvent the kernel, which 
accepts a bootloader parameter from initramfs as well, and focus instead on
the difficult part: making sure the system is in a fit state to switch in
the first place.

That's where the development effort is needed, if you are to provide a
mechanism to switch. The symlink and hooks etc is a total dead-end, imo.
It's simply reinventing the wheel using octagons instead of circles.

There's nothing to stop systemd being the default init, should you want to put
the install together like that. Because let's be honest: someone has to put this
install together, irrespective of how incapable the end-user is of editing a
file by themselves. And just because the user can do it simply, that's no reason
to make our method to do it any more complex (I've never heard such a bizarre
argument.) Just edit the file via script.

If we're on a crippled EFI setup, or the user has specified to use the boot 
wrapper,
then we're simply editing a file for the wrapper to read instead. It's trivial.

FOCUS on getting the system safe to switch. Not on reinventing init/main.c, 
badly.

-- 
#friendly-coders -- We're friendly, but we're not /that/ friendly ;-)

Reply via email to