Gentoo Archives: gentoo-dev

From: "Steven J. Long" <slong@××××××××××××××××××.uk>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: eselect init
Date: Sat, 01 Jun 2013 08:54:29
Message-Id: 20130601092355.GB25065@rathaus.eclipse.co.uk
In Reply to: [gentoo-dev] eselect init by Luca Barbato
1 On Sat, May 25, 2013 at 11:54:48AM +0200, Luca Barbato wrote:
2 > I'm back to the other part of it: switching the actual init implementation.
3 >
4 > # WHY (not just edit your bootloader)
5 >
6 > Since efi at least some people started to put in the kernel the bootargs
7 > and we have at least few new options brewing for init, some are
8 > small impact (bootchar, bb-init-openrc and runit-openrc) some are more
9 > invasive (runit and systemd).
10 >
11 > In those setup changing bootargs requires a kernel rebuild and some
12 > effort, while the eselect approach stays completely transparent.
13
14 That's not an argument for using a symlink switcher or the equivalent
15 across the board, by any means.
16
17 Firstly, we should be recommending people install Gentoo with enough
18 flexibility to configure and use their system how they choose. In the UEFI
19 arena, why not simply recommend something like rEFIt instead of making
20 everyone go through a load of development effort, to restrict us all to a
21 crippled use-case?
22
23 NOTE: If you still wish to pursue a fixed config, then it's easy enough to
24 build it with init=/sbin/einit since presumably you want that setup for your
25 users.
26
27 So even for the restricted corner-case of a Gentoo install without a
28 bootloader this is not needed. In fact it would be better done using the
29 existing mechanism.
30
31 All I'm saying is: can we please stop trying to reinvent the kernel, which
32 accepts a bootloader parameter from initramfs as well, and focus instead on
33 the difficult part: making sure the system is in a fit state to switch in
34 the first place.
35
36 That's where the development effort is needed, if you are to provide a
37 mechanism to switch. The symlink and hooks etc is a total dead-end, imo.
38 It's simply reinventing the wheel using octagons instead of circles.
39
40 There's nothing to stop systemd being the default init, should you want to put
41 the install together like that. Because let's be honest: someone has to put this
42 install together, irrespective of how incapable the end-user is of editing a
43 file by themselves. And just because the user can do it simply, that's no reason
44 to make our method to do it any more complex (I've never heard such a bizarre
45 argument.) Just edit the file via script.
46
47 If we're on a crippled EFI setup, or the user has specified to use the boot wrapper,
48 then we're simply editing a file for the wrapper to read instead. It's trivial.
49
50 FOCUS on getting the system safe to switch. Not on reinventing init/main.c, badly.
51
52 --
53 #friendly-coders -- We're friendly, but we're not /that/ friendly ;-)

Replies

Subject Author
[gentoo-dev] Re: eselect init "Steven J. Long" <slong@××××××××××××××××××.uk>
Re: [gentoo-dev] Re: eselect init Luca Barbato <lu_zero@g.o>